我正在尋找將所有頁面的擴展名從HTML更改爲PHP,因爲我重做公司的網站。所以我將這些行添加到.htaccess文件中。301重定向優先順序
RewriteEngine On
RewriteRule ^/?(.*)\.html$ /$1.php [R=301,L]
但是,聯繫人和關於頁面位於舊網站的文件夾中,我不想將它們放到新網站上。所以,如果我把上面的通用的「HTML到PHP」的具體重定向重定向,像這樣:
redirect 301 /company-information/contact.html http://www.example.com/contact.php
RewriteEngine On
RewriteRule ^/?(.*)\.html$ /$1.php [R=301,L]
威爾重定向的聯繫頁面甚至着眼於通用重定向或它一路前通過.htaccess文件並覆蓋文件中之前的任何內容。
或者我完全在我的頭上,還有另一種更好的方法呢?
作爲一個首選項,我更喜歡將文件擴展名看作是用戶,以便在我查看URL時知道我在頁面上而不是目錄中。其次,我需要使用301s來保持我們的優秀搜索引擎優化,所以如果我使用了你在那裏提出的重寫規則,但後綴爲[[R = 301,L]',那麼我需要將該行與通用重寫規則的其他網頁,以便它不會使用通用規則將用戶重定向到/company-information/contact.php? – RichieAHB
@Dor爲什麼你需要2行(RewriteRule&RewriteCond),當你可以用一個RewriteRule行來做同樣的事情? – LazyOne
@richieahb這樣的具體規則應該放在**通用規則之前**。 – LazyOne