Как уменьшить нагрузку на сервер | оптимизация .htaccess

👍 Научим бесплатно правильно создавать сайты на WordPress. Подробнее →

В посте Как уменьшить нагрузку на сервер, создаваемую поисковыми ботами, я описал несколько директив, которые нужно добавить в файл robots.txt — файл, указывающий поисковым роботам, куда можно ходить на сайте, а куда нельзя. Эти правила позволяют существенно снизить чрезмерную нагрузку на сервер, создаваемую активным посещением поисковых роботов, отсекая совершенно ненужные для индексации содержимого посещения. Однако можно усилить этот эффект, отредактировав глобальные установки для сайта, которые прописаны в файле .htaccess.

Одним из способов уменьшения нагрузки на сервер является автоматическое сжатие передаваемых данных на стороне сервера с последующей распаковкой их на стороне браузера. Для того, чтобы это работало, нужно чтобы хостинг поддерживал mod_deflate или mod_gzip. Узнайте у своего хостера, есть ли поддержка этих режимов, и если есть, то смело добавляйте в файл .htaccess следующие строчки:

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html

mod_gzip_on Yes
mod_gzip_item_include file .js$
mod_gzip_item_include file .css$ 

Эти директивы дают команду на сжатие текстовой информации и скриптов. В таком виде текстовые файлы занимают намного меньше места, а значит и сокращается трафик, что приводит к уменьшению нагрузки на сервер.

Еще одним способом является сокращение трафика за счет кэширования изображений браузером. Каждый браузер имеет встроенный кэш, который в течении определенного срока хранит статические данные, скачанные с сайтов. Можно его использовать для отображения больших файлов. Самыми большими файлами являются картинки и скрипты, поэтому, вставив специальный код в файл .htaccess, мы будем требовать загрузки этих файлов прежде всего из локального кеша браузера. Если они там есть и не изменялись за последний год, то их загрузка будет осуществляться не с сайта, а из кэша браузера. И только в случае, если их там нет, браузер скачает их с сайта.


  ExpiresActive On
  ExpiresDefault "acodeess plus 3600 seconds"
  ExpiresByType image/x-icon "acodeess plus 2592000 seconds"
  ExpiresByType image/jpeg "acodeess plus 2592000 seconds"
  ExpiresByType image/png "acodeess plus 2592000 seconds"
  ExpiresByType image/gif "acodeess plus 2592000 seconds"
  ExpiresByType application/x-shockwave-flash "acodeess plus 2592000 seconds"
  ExpiresByType text/css "acodeess plus 604800 seconds"
  ExpiresByType text/javascript "acodeess plus 216000 seconds"
  ExpiresByType application/x-javascript "acodeess plus 604800 seconds"
  ExpiresByType text/html "acodeess plus 3600 seconds"
  ExpiresByType application/xhtml+xml "acodeess plus 3600 seconds"
 

Это позволяет не только снизить нагрузку с сервера, но и увеличить скорость загрузки сайта в браузере.

Создай свой первый сайт на WordPress

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

Оцените автора
Добавить комментарий

  1. Терентий Шахов

    Подскажите, пожалуйста, что я мог сделать не так. В свой файл .htaccess прописал указанные вами коды (о поддержке mod_gzip предварительно узнал) Но в результате блог выдал 500 ошибку. Кроме этого в файле были следующие строки :

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    код вставлял как перед # END WordPress так и после – результат одинаковый.
    Буду рад получить ответ.

    Ответить
    1. rasse1

      Может вопрос дурацкий конечно , но подскажите в чем разница между gzip и zliи, и можно использовать и то и другое вместе?

      Ответить
  2. tiaurus

    У меня такое было, когда я пытался подключить блог, расположенный на домене, который подключен алиасом к основному хостингу (то есть когда два домена и один хостинг). Думаю, что нужно за подсказкой обратиться в службу техподдержки вашего хостинга.

    Ответить
  3. NomadUA

    вставил только второй блок и получил тоже 500 ошибку. У меня 1 домен и 1 хостинг. :(

    Ответить
  4. SwaEgo

    Вот что мне написал хостер:Нет, мы не используем сжатие передаваемых данных т.к. на текущий момент еще очень много посетителей используют устаревшие броузеры которые не принимают сжатые данные (IE6, к примеру), так же это касается некоторых видов мобильных платформ.
    Это получается из-за каких-то тормозов не сделать полезную вещь?

    Ответить
    1. Ну рано или поздно все перейдут на более новые версии браузеров. Так что считаю, что использовать сжатие данных перед отправкой в браузер нужно.

      Ответить
      1. SwaEgo

        Хостер мне сказал,что мой показатель потребления памяти в 33 Мб,это очень хороший показатель,говорит вот когда 64 будет,мы тебе скажем.
        Так что пока и не буду заморачиваться.

        Ответить
  5. smedvedev

    Хмм страно у меня выходит ошибка 500, хотя я попросил Хостинг включить эти функции, но все ранво выходит ошибочка.

    Ответить
×
Прокачай свой сайт WordPress!

-20% на премиум темы и плагины

Создай сайт своей мечты ⋙