[英]Trailing slash causes 404, can I fix using htaccess?
違規網址是:
我對這些類型的URL的.htaccess規則如下:
RewriteRule ^face/(.*)$ face.php?term=$1
如何使這兩個網址轉到同一頁面,我該怎么辦?
你可以用這個:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [L,R=301]
第一行說:“如果它不是一個目錄”(因為那時尾隨斜杠會有意義)。 第二行說:重定向從開始到跟蹤的所有內容,並結束到那里的所有內容,沒有尾隨斜杠。
把你自己的RewriteRule
放在那里(低於那個,而不是上面),這樣你的正常重定向仍然可以在刪除尾部斜杠后繼續工作。
(這個顯然適用於/body/
,而不僅僅是/face/
。
我使用這個稍微修改的規則來維護任何子文件夾結構
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.