Как установить заголовки истечения для CSS, JS и изображений?
Недавно я проанализировал свой сайт с приложением pagespeed на firebug. Он предложил мне установить срок действия на CSS, JS и файлы изображений.
Мне интересно, как это сделать?
4 ответа
Обновите конфигурацию Apache, чтобы включить директивы ниже как часть конфигурации ядра :
#
# ассоциировать .js с типом text /javascript (если не присутствует в mime.conf)
#
Текст AddType /javascript .js
#
# configure mod_expires
#
# URL: http://httpd.apache.org/docs/2.2/mod/mod_expires.html
#
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "доступ плюс 1 секунда"
ExpiresByType image /x-icon "доступ плюс 2692000 секунд"
ExpiresByType image /jpeg "доступ плюс 2692000 секунд"
ExpiresByType image /png "доступ плюс 2692000 секунд"
ExpiresByType image /gif "доступ плюс 2692000 секунд"
ExpiresByType application /x-shockwave-flash "доступ плюс 2692000 секунд"
ExpiresByType text /css "доступ плюс 2692000 секунд"
ExpiresByType text /javascript "доступ плюс 2692000 секунд"
ExpiresByType application /x-javascript "доступ плюс 2692000 секунд"
ExpiresByType text /html «доступ плюс 600 секунд»
ExpiresByType application /xhtml + xml "доступ плюс 600 секунд"
& Lt; /IfModule >
#
# настроить mod_headers
#
# URL: http://httpd.apache.org/docs/2.2/mod/mod_headers.html
#
<IfModule mod_headers.c>
<FilesMatch "\\. (ico | jpe? g | png | gif | swf | css | js) $">
Набор заголовков Cache-Control "max-age = 2692000, public"
& Lt; /FilesMatch >
<FilesMatch "\\. (x? html? | php) $">
Header set Cache-Control "max-age = 600, private, must-revalidate"
& Lt; /FilesMatch >
Заголовок отключен ETag
Заголовок отключен Последнее изменение
& Lt; /IfModule >
Вы можете поместить это в свой htaccess:
<FilesMatch "(? i) ^. * \. (ico | flv | jpg | jpeg | png | gif | js | css) $">
ExpiresActive On
ExpiresDefault A2592000
& Lt; /FilesMatch >
Он будет нацеливать файлы с этими расширениями (ico, flv, jpg и т. д.) и установить заголовок Expires для доступа (A) плюс 30 дней (2592000 секунд). Вы также можете добавить это на уровне сервера, если у вас есть доступ к этому.
Это зависит от хоста и того, как вы это делаете. Вариант 1), если вы управляете сервером, сделайте apache для добавления заголовков истечения в ответ Вариант 2), если вы не управляете веб-сервером или сервером images /js /css /etc, вы можете установить эти заголовки из сценария, который их обслуживает.
Имейте в виду, что эти рекомендации рекомендуются, но не абсолютная истина. Это больше, чтобы сэкономить вам пропускную способность, чем ускорить работу вашего сайта. Поэтому, если у вас низкий трафик на ваш сайт, не слишком беспокоитесь об этом.
Настройка истекает через веб-сервер Lightspeed
Войдите в консоль администратора, затем> Server-> General> Истекает Настройки-> Истекает по типу
Добавьте следующее:
text /css = A604800, text /javascript = A604800, application /javascript = A604800, application /x-javascript = A604800, application /x-shockwave-flash = A604800, image /gif = A604800, image /jpg = A604800, изображение /jpeg = A604800, изображение /png = A604800, изображение /ico = A604800, изображение /значок = A604800
604800 - это секунды истечения срока действия, который должен соответствовать вашим потребностям с момента его 168 часов, который составляет 7 дней. Кроме того, Light Speed Server использует htaccess, который необходимо добавить в следующую строку:
ExpiresActive On
Альтернативно, если у вас нет доступа к консоли администратора, попробуйте выполнить следующий файл .htaccess:
ExpiresByType image /png A604800
ExpiresByType image /gif A604800
ExpiresByType image /jpg A604800
ExpiresByType image /jpeg A604800
ExpiresByType text /javascript A604800
Приложение ExpiresByType /x-javascript A604800
ExpiresByType text /css A604800