Apache Mod Expires, как отлаживать?

Моя цель: иметь JavaScript на моем сервере ВСЕГДА извлекать из моего сервера и не разрешать кэширование.

Моя ОС: Ubuntu

Мои методы: (следующие https://www.digitalocean.com/community/tutorials/how-to-configure-apache-content-caching-on-ubuntu-14-04)

  • срок действия sudo a2enmod истекает
  • Заголовки sudo a2enmod
  • добавьте следующее в мой (уже доказавший работоспособность) файл.htaccess:

    • ExpiresActive On ExpiresByType text/javascript "access plus 1 seconds"

Мои результаты: никаких изменений в заголовках HTTP. Пользователи по-прежнему жалуются, что их файлы кэша устарели.

Мой файл.htaccess в целом:

    RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{DOCUMENT_ROOT}/maintenance.html -f
RewriteCond %{DOCUMENT_ROOT}/maintenance.enable -f
RewriteCond %{SCRIPT_FILENAME} !maintenance.html
RewriteRule ^.*$ /maintenance.html [R=503,L]
ErrorDocument 503 /maintenance.html
ExpiresActive On
ExpiresByType text/javascript "access plus 1 seconds"
#ExpiresByType  text/js “access plus 1 seconds”

Я знаю, что он читает код.htaccess, потому что мой код режима обслуживания все еще работает. Я также знаю, что он читает, потому что я боролся с 500 внутренними ошибками сервера, пока не получил правильный синтаксис ExpiresByTypes.

Как мне даже начать отлаживать эту проблему?

1 ответ

Решение

В вопросе не показаны заголовки HTTP-ответа, но Apache по умолчанию mime.types отображает *.js в application/javascript, а не в текст /javascript, который вам подходит.

application/javascript              js

Как минимум, продублируйте ваш конфиг для приложения /javascript!

Другие вопросы по тегам