1
我已遷移到新的域名,現在使用.PHP而不是經典的.ASP。 我成功地設置了一個.htaccess來將所有舊的.ASP請求重定向到.PHP請求。但只是無法獲取根默認文檔重定向。。即使重定向匹配適用,htaccess也會重寫
這是我的.htaccess文件的一個例子。
RewriteEngine on
RedirectMatch ^(.*).asp http://newdomain.com$1.php
# RewriteRule ^(.*)$ http://newdomain.com/$1
隨着htaccess的看起來像上述(註釋第二行),以
http://olddomain.com
請求簡單地示出了舊域。但深層文件按我的意願工作。例如。到
http://olddomain.com/somefile.asp
的請求會去
http://newdomain/somefile.php
如果我取消第二行,根現在重定向正常,但其他一切都搞砸了。例如。的請求
http://olddomain.com/somefile.asp
會簡單地改寫爲:
http://newdomain/somefile.asp
(而不是.PHP)
所以我想1號線採取優先和2號線僅應適用,如果他們正好請求
http://olddomain.com
我調查發現,也許我在第1行末尾加[L]就是我的答案。但是,當我這樣做時,我得到500 - 內部服務器錯誤。
任何想法?
anubhava,這很好。非常感謝!我還有一個奇怪的問題。我有一個頁面不會重定向到.php。它仍然嘗試重定向到.asp頁面。例如。 http://olddomain.com/pages/events/events.asp仍然去http://newdomain.com/pages/events/events.asp與此同時,我嘗試的每一個其他頁面都很好。例如。 http://olddomain.com/pages/products/products.asp正確地去http://newdomain.com/pages/products/products.php ---也許「事件」是某種保留字?我的.htaccess文件在根目錄中,並且在/ pages或/ pages/events目錄中沒有。 – Thread7
我收回了最後一條語句,events.asp現在正在重定向。也許我的舊正則表達式被搞亂了。再次感謝! – Thread7