Кэширование на стороне клиента с использованием Apache 2 - PullRequest
1 голос
/ 14 сентября 2011

У меня есть скрипт, который потребляет слишком много ресурсов для предоставления данных, которые могут быть получены только каждую минуту. Есть ли способ настроить Apache 2 через файл .htaccess, чтобы указать заголовки, указывающие клиенту сохранить результат сценария в кеше в течение одной минуты?

Я знаю, что это можно сделать с помощью самого скрипта, но я бы хотел сделать это с помощью конфигурации веб-сервера.

Ответы [ 3 ]

1 голос
/ 09 октября 2011

mod_expires - хорошее решение.

Если вы работаете в Unix-подобной системе:

a2enmod expires
apache2ctl restart

Тогда вы сможете определить условия истечения срока действия для данного файла или определить политику кэширования в соответствии с mimetype через ваш файл .htaccess.

<IfModule mod_expires.c>
    ExpiresActive On

    ExpiresByType image/gif A3600

    <Files scriptToCache.php>
        ExpiresDefault A60
    </Files>
</IfModule>

Здесь «A3600» означает, что срок действия файла истекает через 3600 секунд после обращения.

Больше информации здесь: http://httpd.apache.org/docs/2.0/mod/mod_expires.html

0 голосов
/ 30 октября 2015
<IfModule mod_expires.c>
          <FilesMatch "\.(jpe?g|png|gif|js|css)$">
                      ExpiresActive On
                      ExpiresDefault "access plus 1 year"
          </FilesMatch>
</IfModule>
0 голосов
/ 16 сентября 2011

Короткий ответ - нет - вам нужно вернуть заголовки кэширования из скрипта.

...