我正在使用Nginx作为Web服务器和Firefox来查看响应标头。为了测试,我在服务器上有两个文件具有相同的内容:test.html和test.php。在Nginx配置文件中,expires指令在服务器上下文中设置为30d。
在Web浏览器中多次访问test.html时,浏览器首先获取304 Not Modified响应并提供在浏览器中缓存的副本。但是,访问test.php时,浏览器总是向服务器发出完整请求(200 OK)而不使用浏览器缓存。
问题是:
答案 0 :(得分:1)
nginx设置静态文件的响应头,包含在头文件中:
Cache-Control
Expires
Last-Modified
Cache-Control
告诉客户(至少) 如何缓存内容。
Expires
和Last-Modified
允许客户端何时来获取新内容。
您必须做的是确保PHP发送相同的标头,或者如果不完全相同则发送合理的标头;既然您知道哪些标头很重要,那么在浏览器中检查请求将告诉您如何实现此目标。