如果URL的最后一个有“/”符号,则NGINX显示404

时间:2018-03-21 09:08:42

标签: nginx url-rewriting

抱歉!我试图在Google和Stackoverflow上搜索答案。但找不到它。

我正在使用NGINX,我尝试访问的网址是https://www.mywebsite.com/newsfeed.rss/

上面的网址显示了404,但如果我在最后一个网址中没有/访问相同的网址,那么它可以运行。 https://www.mywebsite.com/newsfeed.rss

那么我如何才能在两个URL上显示内容?

2 个答案:

答案 0 :(得分:0)

在你的nginx配置中,你可以通过添加或删除尾随空格将url重写为标准格式。最好添加斜杠,因为删除斜杠会导致添加斜杠的浏览器出现重定向循环。

添加

server {
    listen 80;
    server_name www.mysite.com;
    rewrite ^/(.*[^/])$ $1/ permanent;
}

答案 1 :(得分:0)

rewrite ^/(.*)/$ /$1 permanent;返回301代码的永久重定向。

我更喜欢以下配置

location /newsfeed.rss/ {
    rewrite ^/(.*)/$ /$1 last;
}

location /newsfeed.rss {
    ....
}