301重定向没有重定向到没有尾部斜杠的正确URL

Ani*_*udh 3 .htaccess redirect http-status-code-301

我必须手动将我的website1中的几个URL重定向到website2.

下面是我在.htaccesswebsite1文件中的代码

Redirect 301 /post1/ https://www.website2.com/post1
Run Code Online (Sandbox Code Playgroud)

当我进入https://www.website1.com/post1/浏览器时https://www.website2.com/post1,正如预期的那样,它被重定向到成功.

但是,当我进入https://www.website1.com/post1浏览器时,它被重定向到https://www.website2.compost1,之后丢失了斜杠https://www.website2.com

有什么办法可以解决这个问题?

anu*_*ava 5

您可以在单个规则中使用RedirectMatch,使用正则表达式使尾随斜杠可选,如下所示:

RedirectMatch 301 ^/(post1)/?$ https://www.website2.com/$1
Run Code Online (Sandbox Code Playgroud)

增加的好处是通过post1在源中使用捕获组并$1在目标中使用反向引用来避免在源和目标中重复.