.htaccess 301 当 %20 位于旧网址时重定向

问题描述 投票:0回答:3

我想将旧网址重定向到新网址,但我的网址在字符之间有“%20”,如下所示

http://www.mydomainname.com/davey%20pumps.htm

这是旧网址,我希望将此网址 301 重定向到其他内容,例如

http://www.mydomainname.com/contactus

apache .htaccess http-redirect mod-rewrite
3个回答
0
投票

使用双引号 uri 模式,您可以将带有 %20 的旧 uri 重定向到新位置。将以下行添加到您的 .htaccess :

Redirect 301 "/foo%20bar" http://example.com/new

这会将 /foo%20bar 重定向到 http://example.com/new .


0
投票

在重定向 301 中,第一个 slug 应该更改两件事:

  1. 在 URL slug 中,将 %20 转换为空格(实际上是用空格键键入空格)
  2. 然后,将包含空格的 URL slug 用引号引起来

这会导致单个 301 重定向的语法如下,其中 URL slug 包含 %20 空格。

Redirect 301 "/foo bar" http://example.com/new

在此场景中,旧页面 HTTP://example.com/foo%20bar 重定向到新页面 HTTP://example.com/new


0
投票
RewriteCond %{REQUEST_URI} ^ /commercial\ work.html
RewriteRule ^/(.*) http://nataliearriolaphotography.com/fine-art-photography-prints.html [R=301,L]

尝试使用转义字符来表示空格,这对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.