【发布时间】:2017-08-16 13:30:49
【问题描述】:
我有一个 web2py 配置,在 nginx 之上运行,当为某些静态文件实现浏览器缓存时,它会产生 404 错误。问题描述为here,我现在在 web2py 上下文中提出这个问题,因为这可能与问题有关,或者因为可能有一些特定于 web2py 的解决方法或解决方案。
nginx.conf 看起来像这样:
worker_processes 3;
events {
worker_connections 1024;
}
http {
access_log [/...];
error_log [/...] crit;
include mime.types;
sendfile on;
server {
server_name [...] [...];
return 301 [...] $request_uri;
}
server {
listen 127.0.0.1:[...];
root [/...];
location / {
include uwsgi_params;
uwsgi_pass [.../uwsgi.sock];
}
}
}
在上述“位置”子句之前或之后添加以下行会导致服务器停止提供与相关模式匹配的静态文件:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 1d;
}
在上一个帖子中提示这可能是一个 uwsgi 问题,尽管问题可能是由其他问题引起的。如何实现浏览器缓存,而不会导致“404”问题?
【问题讨论】:
-
尝试将行
include uwsgi_params; uwsgi_pass [.../uwsgi.sock];添加到新的位置块。 -
@RichardSmith - 谢谢。在仔细检查之后,我有理由确定它可以正常工作(尽管在过去几个小时处理了这个问题之后,我有一半希望会再次搞砸)。如果你想把它记下来作为答案,我会把它标记为正确的。
标签: caching nginx web2py uwsgi