根据 nginx 中的目录名查找索引页名称

根据 nginx 中的目录名查找索引页名称

我有一个静态站点,其设置如下:

location / { index index.html; }
location /about/ { index about.html; }
location /app/ { index app.html; }
location /app/support/ { index support.html; }

这种方法不可扩展,但我想继续对索引文件采用这种命名做法。

如何编写一个常见案例来解决将目录名称包装到具有相同名称的索引文件中的问题?谢谢!

答案1

你可以使用try_files而不是index指令。请参阅这个文件更多信息。例如:

location ~ ^(.*)/([^/]+)/$ {
    try_files $1/$2/$2.html =404;
}

正则表达式块的放置location至关重要,因为它们是按顺序评估的。请参阅这个文件了解详情。

相关内容