Оптимизированные настройки mod_expires для Apache.

1 feb 2024 2 min di lettura
Оптимизированные настройки mod_expires для Apache.
Indice dei contenuti

Введение

Модуль mod_expires в Apache используется для управления настройкой HTTP-заголовка Expires и директивы max-age HTTP-заголовка Cache-Control в ответах сервера. Эти заголовки определяют, как долго клиент (браузер или прокси-сервер) будет кэшировать ресурсы. Оптимизация этих параметров может значительно снизить нагрузку на сервер и улучшить работу клиента за счет сокращения времени загрузки.

Оптимизированы настройки mod_expires.

Вот раздел mod_expires, оптимизированный для рабочего сервера и охватывающий различные типы файлов:

## EXPIRES CACHING ##
 <IfModule mod_expires.c>
 ExpiresActive On

 # Default expiration: 1 hour after request
 ExpiresDefault "now plus 1 hour"

 # HTML components
 ExpiresByType text/html "access plus 0 seconds"

 # Data interchange
 ExpiresByType application/json "access plus 0 seconds"
 ExpiresByType application/xml "access plus 0 seconds"
 ExpiresByType application/rss+xml "access plus 1 hour"
 ExpiresByType application/atom+xml "access plus 1 hour"

 # Favicon (can be cached for a long time)
 ExpiresByType image/x-icon "access plus 1 year"

 # Media: images, video, audio
 ExpiresByType image/gif "access plus 1 month"
 ExpiresByType image/png "access plus 1 month"
 ExpiresByType image/jpeg "access plus 1 month"
 ExpiresByType image/webp "access plus 1 month"
 ExpiresByType video/ogg "access plus 1 month"
 ExpiresByType audio/ogg "access plus 1 month"
 ExpiresByType video/mp4 "access plus 1 month"
 ExpiresByType video/webm "access plus 1 month"

 # CSS and JavaScript
 ExpiresByType text/css "access plus 1 year"
 ExpiresByType application/javascript "access plus 1 year"
 ExpiresByType application/x-javascript "access plus 1 year"
 ExpiresByType text/javascript "access plus 1 year"

 # Webfonts
 ExpiresByType font/otf "access plus 1 month"
 ExpiresByType font/ttf "access plus 1 month"
 ExpiresByType font/woff "access plus 1 month"
 ExpiresByType font/woff2 "access plus 1 month"
 ExpiresByType application/font-woff "access plus 1 month"
 ExpiresByType application/font-woff2 "access plus 1 month"
 ExpiresByType image/svg+xml "access plus 1 month"

 # Other
 ExpiresByType application/pdf "access plus 1 month"
 ExpiresByType image/vnd.microsoft.icon "access plus 1 year"
 </IfModule>

Пояснение настроек

  • ExpiresDefault — это время кэширования по умолчанию для ресурсов, которые не соответствуют другим правилам. Установлено значение 1 час, но вы можете изменить его в зависимости от того, как часто меняется контент.
  • HTML и обмен данными. Эти типы контента обычно часто меняются, и их срок действия истекает немедленно (0 секунд) или через короткий период (1 час для каналов).
  • Фавикон: они редко меняются и могут храниться в кэше на более длительный период (1 год).
  • Медиа-файлы. Изображения, видео и аудио обычно обновляются нечасто. Срок действия ожидается через 1 месяц, но возможно его увеличение, если эти ресурсы меняются редко.
  • CSS и JavaScript. Поскольку эти файлы могут меняться при обновлениях веб-сайта, но не так часто, как содержимое HTML, для них установлен более длительный период кэширования (1 год). Обеспечьте контроль версий этих файлов, чтобы избежать проблем с кэшированием при их обновлении.
  • Веб-шрифты: шрифты обычно не изменяются после установки, поэтому подходит более длительный период кэширования (1 месяц).
  • Другие типы. Для таких ресурсов, как PDF-файлы и определенные типы изображений, настройте время кэширования в зависимости от того, как часто эти ресурсы обновляются.

Дополнительные замечания

  • Измените эти настройки в зависимости от частоты обновления вашего контента.
  • Убедитесь, что у вас есть стратегия контроля версий для таких ресурсов, как CSS и JavaScript, чтобы избежать проблем с кэшированием при обновлении этих файлов.
  • Обратите внимание, что агрессивное кэширование может вызвать проблемы, когда контент обновляется на сервере, но все еще кэшируется в клиентском браузере.
  • Регулярно отслеживайте и адаптируйте эти параметры с учетом конкретных потребностей и отзывов вашей производственной среды.
Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.