0

我的客户的现有网站使用的 URL 可以是以下任何一种组合:

site.com/canada/mountain_rail
site.com/canada/mountain_rail/
site.com/canada/mountain_rail/index.html
site.com/canada/mountain_rail/index.html/

任何 URL 可能(或可能不)有斜杠,并且可能(或可能不)以 index.html 结尾。这有点像噩梦。

我正在尝试编写一个 301 重定向,它可以采用这些字符串中的任何一个并重定向到他们新网站上的不同页面。我到目前为止是这样的:

RewriteCond %{QUERY_STRING}  ^$
RewriteRule ^canada/mountain_rail$ /canada/mountain-rail-vacations? [R=301,NE,NC,L]

这适用于类似的 URL site.com/canada/mountain_rail,但site.com/canada/mountain_rail/site.com/canada/mountain_rail/index.html不起作用,只返回 404。

有人可以帮忙吗?我是重写规则的初学者。

谢谢!

4

1 回答 1

1

使尾部斜杠可选:

RewriteCond %{QUERY_STRING}  ^$
RewriteRule ^canada/mountain_rail(?:/index\.html)?/?$ /canada/mountain-rail-vacations? [R=301,NE,NC,L]
于 2013-10-24T08:21:07.037 回答