我需要通过我的应用程序服务器提供我的应用程序8080
,并从一个目录提供我的静态文件,而无需接触应用程序服务器。我拥有的 nginx 配置是这样的......
# app server on port 8080
# nginx listens on port 8123
server {
listen 8123;
access_log off;
location /static/ {
# root /var/www/app/static/;
alias /var/www/app/static/;
autoindex off;
}
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
现在,有了这个配置,一切正常。请注意,该root
指令已被注释掉。
如果我激活root
和停用alias
-- 它会停止工作。但是,当我/static/
从它中删除尾随时,root
它又开始工作了。
有人可以解释发生了什么。还请清楚详细地解释 和 之间的区别root
及其alias
用途。