我正在嘗試將所有請求從一個域 (domain.co.in) 重定向到另一個域 (domain.info.in)。我在 htaccess 中嘗試過 Rewrite 指令和 Redirect 指令,但在瀏覽器中出現太多重定向錯誤。下面是我正在嘗試實作的配置。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.co\.in [NC]
RewriteRule ^(.*)$ index.php/$1
RewriteRule ^(.*)$ http://domain.info.in/$1 [R,L]
我實際作業的 htaccess 配置是
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(. )$ index.php/$1
使用它,我可以將所有請求重定向到 index.php 并且作業正常。但是當我添加域重寫規則時,我收到了重定向錯誤。我也嘗試過 Redirect 指令
Redirect 302 / http://domain.info.in/index.php/$1,但同樣的錯誤。
我嘗試了這篇文章中提到的Fiddler工具, Tips for debugging .htaccess rewrite rules。那里運行良好。
實際上,我想將所有請求(www.domain.co.in, domain.co.in ,www.domain.info.in)重定向到 domain.info.in
對此有何建議?
uj5u.com熱心網友回復:
根據@CBroe 的建議,我已經更新了配置并且可以正常作業。正如他所說,
RewriteConds 總是影響直接跟隨的規則。
而且我還在檢查中添加了否定以重定向所有其他請求。
RewriteEngine On
RewriteCond %{HTTP_HOST} !^domain.co.in$ [NC]
RewriteRule ^(.*)$ http://domain.info.in/$1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(. )$ index.php/$1 [L]
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/449239.html
上一篇:301重定向結構的重寫規則
