You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NGINX如何将带尾部斜杠的URL重定向到非斜杠版本(排除/backend路径)

Nginx尾部斜杠重定向异常修复方案

问题原因

现有配置的异常跳转是因为return指令返回的$1为不带根前缀的相对路径,浏览器处理301跳转时会将相对路径拼接在当前请求路径末尾,因此访问/service/时会错误跳转到/service/service。

修复方案

仅需在返回的路径前补充根斜杠/,将跳转目标指定为绝对路径即可,修改后的配置如下:

server {
    listen 80;
    listen 443 ssl http2;

    [...]

    location ~ ^/(?!backend)(.+)/$ {
        return 301 /$1$is_args$args;
    }

    [...]
}

效果验证

修改后可以完全匹配需求:

  • https://example.com/service/ 跳转至 https://example.com/service
  • https://example.com/service/one/ 跳转至 https://example.com/service/one
  • 所有以/backend开头的URL不会进入该规则,保持原有访问路径不变

内容的提问来源于stack exchange,提问作者Foddy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 00:45:10