【问题标题】:Nginx 301 Redirect not working correctlyNginx 301 重定向无法正常工作
【发布时间】:2018-05-18 22:29:25
【问题描述】:

我正在尝试将所有流量从一个子文件夹重定向到另一个。例如:

www.website.com/ve/12345.html

www.website.com/es/12345.html

我的 nginx 命令:

rewrite ^/(ve)/(.*)$ /es/$1 permanent;

执行以下操作:

www.website.com/ve/12345.html

www.website.com/es/ve

如何将 ve 替换为 es 并保持 URL 的其余部分不变?

【问题讨论】:

    标签: regex redirect nginx


    【解决方案1】:

    问题是您在替换中使用了 $1,但 $1 只是字符“ve”,而不是末尾的额外内容,在您的版本中是 $2。

    最好是删除额外的捕获组,这样您就不会捕获您不使用的东西。此规则将执行重定向:

    rewrite ^/ve/(.+)$ /es/$1 permanent;
    

    【讨论】:

      猜你喜欢
      • 2015-08-09
      • 1970-01-01
      • 2016-03-15
      • 2013-11-04
      • 2023-04-02
      • 1970-01-01
      • 2018-12-12
      相关资源
      最近更新 更多