我有一个单页 Web 应用程序。我想设置 nginx 以直接为文件夹下的文件提供服务,对于所有其他请求,我希望它为单个 html 文件提供服务。我想要实现的设置如下:
.
.
.
location /static/ {
# Serve directly here
}
location / {
# Serve single file here (index.html), without changing the path
}
.
.
.
我发现类似问题的答案建议使用 URL 重写,但据我所知,这会将用户重定向到新的 URL,从而改变路径。
我想要的是,无论用户输入什么(除了以静态开头的内容),nginx 都会提供 index.html 文件而不改变路径,因为我将使用路径变量将动态内容加载到网页。
答案1
最简单的方法是
location / {
try_files /index.html /index.html;
}