我想重定向根目錄下的所有.htm檔案(即www.example.com/page.htm)以洗掉擴展名(即www.example.com/page/),但不重定向子目錄下的.htm檔案(即www.example.com/subdir/page.htm)。
如何在.htaccess中做到這一點?
uj5u.com熱心網友回復:
在根.htaccess檔案的頂部,在現有的WordPress指令之前(即在# BEGIN WordPress之前),嘗試類似下面的做法。
# Redirect "/<page> .htm" to "/<page>/"
RewriteRule ^([^./] ).htm$/$1/ [R=302, L]
你不需要重復RewriteEngine指令,因為這已經在WordPress指令的后面出現。(RewriteEngine指令的順序并不重要--最后一個實體 "勝出"。)
這樣就可以洗掉RewriteEngine指令。
這將從任何請求的URL中洗掉.htm擴展名,只在根目錄中添加一個尾部斜線(如你的例子)。這也假定<page>本身不包含一個點。
注意,這是一個302(臨時)重定向。如果這打算是永久性的,那么就把它改成301,但只有在你確認了它的作用之后(以避免潛在的快取問題)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/309776.html
標籤:
