我将nginx配置为缓存所有文件3分钟。这仅适用于我手动上传到Web服务器的文件。 CMS生成的所有文件都会被永久缓存(或者很长一段时间我没有等待)......
CMS将所有页面作为“index.html”提供自己的文件夹结构(www.x.de/category1/category2/articlename/index.html)。
我该如何调试?有没有办法检查特定文件的生命周期? .html文件中的某些内容是否会覆盖proxy_cache_valid值?
非常感谢!
配置:
server {
listen 1.2.3.4:80 default_server;
server_name x.de;
server_name www.x.de;
server_name ipv4.x.de;
client_max_body_size 128m;
location / { # IPv6 isn't supported in proxy_pass yet.
proxy_pass http://apache.ip:7080;
proxy_cache my-cache;
proxy_cache_valid 200 3m;
proxy_cache_valid 404 1m;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Accel-Internal /internal-nginx-static-location;
access_log off;
}
location /internal-nginx-static-location/ {
alias /var/www/vhosts/x.de/httpdocs/cms/;
access_log /var/www/vhosts/x.de/statistics/logs/proxy_access_log;
add_header X-Powered-By PleskLin;
internal;
}}
答案 0 :(得分:0)
使用curl -I
,您可以检索标题,告诉您缓存设置是什么。
E.g。
>>> curl -I http://www.google.com
HTTP/1.1 200 OK
Date: Sun, 09 Feb 2014 06:28:36 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Server: gws
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked
缓存设置在响应标头中完成,因此html无法修改这些设置。