我有一个 nginx Web 服务器设置,我需要在其中为我的索引页面指定单独的浏览器级缓存到期 ( expires )。
我试过的
location =/{
expires 1m;
root /data/site;
index index.htm;
}
location /{
expires 5d;
root /data/site;
}
index.htm 页面应该有 1m 的到期时间,但我在响应标头中得到 5d。
我有一个 nginx Web 服务器设置,我需要在其中为我的索引页面指定单独的浏览器级缓存到期 ( expires )。
我试过的
location =/{
expires 1m;
root /data/site;
index index.htm;
}
location /{
expires 5d;
root /data/site;
}
index.htm 页面应该有 1m 的到期时间,但我在响应标头中得到 5d。
终于得到了答案。必须手动完成 nginx 工作。
处理请求“/”更复杂。它仅与前缀位置“/”匹配,因此由该位置处理。然后 index 指令根据其参数和“root /data/site”指令测试索引文件的存在。如果文件 /data/site/index.htm 存在,则指令执行内部重定向到“/index.htm”,并且 nginx 再次搜索位置,就好像请求已由客户端发送一样。
所以我不得不再添加一个位置来搜索我的 index.htm 文件
location ~* \index.(htm?l)$ {
expires 1d;
root /data/site;
index index.html index.htm;
}