Apache Mod 过期,如何调试?
Apache Mod Expires, how to Debug?
我的 objective:让我的服务器上的 javascript 总是从我的服务器中提取,并且不允许缓存。
我的OS:Ubuntu
- sudo a2enmod 过期
- sudo a2enmod headers
将以下内容添加到我的(已证明有效).htaccess 文件中:
ExpiresActive On
ExpiresByType text/javascript "access plus 1 seconds"
我的结果:HTTP headers 完全没有变化。用户仍然抱怨他们的缓存文件已过时。
我的 .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 语法正确。
我该如何开始调试这个问题?
问题中未显示 HTTP 响应 headers,但 Apache 的默认 mime.types 将 *.js 映射到 application/javascript 而不是text/javascript 你匹配。
application/javascript js
至少,复制 application/javascript 的配置!
我的 objective:让我的服务器上的 javascript 总是从我的服务器中提取,并且不允许缓存。
我的OS:Ubuntu
- sudo a2enmod 过期
- sudo a2enmod headers
将以下内容添加到我的(已证明有效).htaccess 文件中:
ExpiresActive On ExpiresByType text/javascript "access plus 1 seconds"
我的结果:HTTP headers 完全没有变化。用户仍然抱怨他们的缓存文件已过时。
我的 .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 语法正确。
我该如何开始调试这个问题?
问题中未显示 HTTP 响应 headers,但 Apache 的默认 mime.types 将 *.js 映射到 application/javascript 而不是text/javascript 你匹配。
application/javascript js
至少,复制 application/javascript 的配置!