Назад | Перейти на главную страницу

Как кэшировать все запросы на данном поддомене (Apache)

У меня есть домен вроде images.example.com обслуживается с сервера Apache. Запросы, которые поступают туда в настоящее время, представляют собой изображения, которые нарисованы с использованием серверного языка (PHP) и кэшируются на стороне приложения, но мне это кажется огромными накладными расходами.

Есть ли простой способ (модуль Apache) кэшировать каждый запрос, поступающий в images поддомен, чтобы он вообще не доходил до PHP, если он все еще находится в кеше?

Apache включает mod_cache модуль, который реализует кэширование в соответствии с RFC2616. Вам необходимо убедиться, что ваш PHP-скрипт устанавливает соответствующие Expires заголовки в его ответах. Ваша конфигурация должна выглядеть примерно так:

LoadModule cache_module modules/mod_cache.so
LoadModule cache_disk_module modules/mod_cache_disk.so

<Location /images>
    CacheRoot /var/cache/apache/sitename/images
    CacheEnable disk    
</Location>