Pull to refresh

Секреты оптимизатора

Reading time2 min
Views7.9K
Поскольку я этим не занимаюсь, а лишь готовлю почву для их работы, пишу то, что некоторым известно, а многим интересно.

1) Заголовки Last-Modified и If-Modified-Since

Для правильного индексирования поисковиками вашего сайта каждая страница должна выдавать заголовок Last-Modified и корректно обрабатывать запросы с условием If-Modified-Since. Если страница не менялась с указанного в запросе времени, сервер должен выдавать «HTTP/1.1 304 Not Modified.»

Пример php-кода для самого просто случая, когда скрипт содержит все данные:

header(«Last-Modified: ». gmdate(«D, d M Y H:i:s»,filemtime($_SERVER['SCRIPT_FILENAME']))." GMT");

Вставить в начало каждой страницы.

Добавлено: В других случаях, вместо «filemtime($_SERVER['SCRIPT_FILENAME'])» нужно подставить последнюю дату изменения данных, выводимых на этой странице.

2) Gzip-сжатие

Существенно сокращает время загрузки странички.

Php-код, вставить первой строкой:

ob_start('ob_gzhandler');

3) Правильное кеширование картинок браузером

Картинки должны кешироваться минимум на месяц. Для HTTP-запроса картинки должен выдаваться заголовок вида «Cache-Control: max-age=999999»
Для этого нужно вставить

ExpiresActive On
ExpiresByType image/gif «access plus 3 month»
ExpiresByType image/jpeg «access plus 3 month»

в .htaccess в корне сайта.

Для тех, у кого не загружен модуль, добавить

LoadModule expires_module libexec/mod_expires.so
AddModule mod_expires.c

в начало.

4) Исправление проблемы с «Options +MultiViews»

Для тех, кто использует «Options +MultiViews» — возможны проблемы с поисковиками. С настройками «по умолчанию» в Apache у него возникают проблемы с выбором файла (php-скрипты не имеют mime-type). Для лечения этой проблемы вставьте

AddType text/html php

в .htaccess в корне сайта.

5) Зеркала

Если у вашего сайта есть зеркало, для избежания возможного бана в поисковиках вставьте

User-Agent: *
Host: www.сайт.ru

в robots.txt в корне сайта.

6) Хосты www.сайт.ru и сайт.ru

По адресу сайт.ru должен выдаваться заголовок «HTTP/1.1 301 Moved Permanently». Будет, например, правильный подсчёт ТИЦ.

7) Добавьте своё :-)
Tags:
Hubs:
+2
Comments28

Articles