我正在尝试利用浏览器缓存来实现 nginx。但是当我将代码插入 conf 文件中时,nginx 不提供静态文件,并显示 403 权限被拒绝错误。
这是我的配置文件
server {
listen 80;
server_name site.in;
root /root/site-demo/;
access_log /var/log/site/access_log;
error_log /var/log/site/error_log;
location static/ {
alias /root/site-demo/static/;
}
location / {
proxy_pass http://127.0.0.1:4000/;
proxy_redirect http://127.0.0.1:4000 http://site.in;
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-Forwarded-Proto $scheme;
}
location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
expires 30d;
add_header Pragma public;
add_header Cache-Control "public";
}
}
当我删除缓存过期部分时,一切都正常。如何使用 if 条件将过期部分放入 location static 中?