![当斜线位于末尾时,nginx 路由失败](https://linux22.com/image/627093/%E5%BD%93%E6%96%9C%E7%BA%BF%E4%BD%8D%E4%BA%8E%E6%9C%AB%E5%B0%BE%E6%97%B6%EF%BC%8Cnginx%20%E8%B7%AF%E7%94%B1%E5%A4%B1%E8%B4%A5.png)
以下 nginx 配置运行http://alpha.mydomain/mypath/test
良好,但出现http://alpha.mydomain/mypath/test/
500 内部服务器错误。请注意第二个 URL 末尾的斜线。
该应用程序是 HTML5 应用程序,因此其目的是为所有 /mypath/ 路径提供 index.html 并让客户端处理逻辑。
server {
listen *:80;
server_name alpha.mydomain.com beta.mydomain.com;
location ~ ^/mypath/.*$ {
default_type text/html; # fix for octet stream coming back sometimes
alias /home/ubuntu/myproject-web/index.html;
add_header Content-Type text/html;
}
location / {
alias /home/ubuntu/myproject-web/;
}
}
答案1
这可能本身不是一个修复,但您可以通过在配置中添加以下行来解决此问题:
rewrite (.*)/$ $1;