0
這段代碼在我的.htaccess中301-重定向:index.html和index.php到根(/):.htaccess - 簡單重定向:索引(沒有擴展名!)/ index.html/index.php到root
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index\.(html?|php)\ HTTP/
RewriteRule ^(([^/]+/)*)index\.(html?|php)$ /$1 [R=301,L]
的問題是,許多web服務器治療 '索引'(沒有的.html或.PHP),其爲有效的請求;結果是:example.com/index提供了200個狀態(這可能會產生重複的內容)。
所以我的目標是使用我的當前代碼(上面)並添加到它以便'索引'是301-重定向到根。換句話說,代碼應該重定向:(即example.com)
example.com/index
example.com/index.html
example.com/index.php
根
我想這以下,但它太複雜,我正確地讓它(我不喜歡加入當前的代碼,這樣,只有一個重定向代碼,而不是多重的RewriteCond /重寫規則:
(!這一個不工作)
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(index$|([^/]+*index)\.(html?|php))\ HTTP/
RewriteRule ^(index$|(([^/]+/)*)index\.(html?|php))$ /$1 [R=301,L]
'index'給予200的反應可能通過['選項MultiViews'(引起https://httpd.apache.org/docs/2.4/mod/ core.html#options),另請參閱[內容協商](https://httpd.apache.org/docs/2.4/content-negotiation.html#multiviews) –