如果相应的静态文件不存在,nginx 设置是否隐藏后端?

如果相应的静态文件不存在,nginx 设置是否隐藏后端?

我的问题类似于当文件不存在时,代理到“后端”服务,除了它也应该适用于根路径,我希望返回 index.html。

以下是我的当前配置:

location / {
    root /home/appserver/tmp/;
    try_files $uri.html @django;
}

location @django {
    include            uwsgi_params;
    uwsgi_pass         127.0.0.1:8090;
}

这适用于所有情况,但我想返回 index.html 的根 (/) 路径。我已经

index index.html;

在我的服务器块的顶部。

我试过了

location = / {
    alias /home/appserver/tmp/index.html;
}

但这个问题从未被捕获,而是联系了@django。

答案1

尝试这个:

location = / {
    alias /home/appserver/tmp; # Alias is only for directories
    try_files index.html; # Always try to load index.html
}

相关内容