0
我的客戶的現有站點使用的URL,可能是在這些組合中的任何一個:任何URL可能(也可能不會)有一個尾隨斜線301重定向:忽略尾隨斜線和index.html
site.com/canada/mountain_rail
site.com/canada/mountain_rail/
site.com/canada/mountain_rail/index.html
site.com/canada/mountain_rail/index.html/
,並可能(或可能不)以index.html結束。這有點噩夢。
我想寫一個301重定向,可以採取任何一個字符串,並重定向到他們的新網站上的不同頁面。我到目前爲止是這樣的:
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^canada/mountain_rail$ /canada/mountain-rail-vacations? [R=301,NE,NC,L]
這正常工作與像site.com/canada/mountain_rail
網址,但site.com/canada/mountain_rail/
或site.com/canada/mountain_rail/index.html
不工作,只返回一個404
任何人都可以幫助嗎?我在重寫規則上是一個初學者。
謝謝!
感謝@anubhava。如果有人想要訪問'canada/mountain_rail',會發生什麼情況,但是.htaccess中的'canada /'的重寫規則在它之上呢?它是否會重定向到第一條規則,因爲這是首先被「滿足」?希望這是有道理的...... – Jack
重寫規則應匹配'^加拿大/?$'模式,然後順序無關緊要。 – anubhava
謝謝。您的回答對於我的問題中的前3個網址是完美的,但第四個網址('site.com/canada/mountain_rail/index.html /' - index.html和尾部的斜線)無法正常工作。有沒有解決方法? – Jack