我有一个特定的服务器设置,blog.html
位于目录旁边blog/
。
问题是,当 URL 指向 blog.html 时,例如https://website.com/blog
,会自动附加一个反斜杠(可能是因为它看到存在目录),然后导致禁止错误。
blog.html
作为索引,blog/
包含子页面:
https://website.com/blog
应该有效并且显示所有文章
https://website.com/blog/
应该导致重定向到https://website.com/blog
https://website.com/blog/article-1
应该解析到相应的子页面。
我尝试过在尾随反斜杠的情况下进行重定向,例如:rewrite ^/(.+)/$ $1 permanent;
但我尝试过的所有变体都无济于事。
我尝试过但无果的帖子:
当尾部斜杠不在 URI 中时,如何停止 nginx 301 自动重定向? https://stackoverflow.com/questions/35973947/how-to-redirect-no-www-to-www-under-jwilder-nginx-proxy https://stackoverflow.com/questions/55129752/rewrite-url-in-jwilder-nginx-proxy-docker-container
我如何配置 nginx 以不自动解析目录并接受非反斜杠 URL 而不会出现问题?