2013-08-22 53 views
1

我希望寫的Apache重寫規則,使如http://www.domain.com/subfolder1的請求將重定向到http://www.domain.com/subfolder2。 這應該透明地發生(即:無網址在瀏覽器中改變)以及所有後續URL請求或鏈接應該被重定向到新的子文件夾(subfolder2)。 這是可能的和如何?重寫規則重定向透明地子

目前我有這個重寫規則,並重定向到subfolder2但通過點擊所有請求都被轉發到根路徑的任何鏈接。即www.domain.com。 e.g指向link.php當我有這個URL(www.domain.com/subfolder1)開放重定向到www.domain.com/link.php而應該去www.domain.com/subfolder2/link.php的任何鏈接。

BrowserMatch ^Mozilla/4 gzip-only-text/html 
BrowserMatch ^Mozilla/4\.0[678] no-gzip 
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
Header append Vary User-Agent 


Options -Indexes 
RewriteEngine On 
Options +FollowSymLinks 
RewriteBase/
RewriteRule ^subfolder1?$ /subfolder2/ [P,L] 

回答

1

這種替換代碼:

Options +FollowSymLinks -MultiViews -Indexes 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^subfolder1(/.*|)$ /subfolder2$1 [NC,L] 
+1

透明是當你不想做外部重定向和更改URL在瀏覽器中。但是如果你想完全重定向,那麼加上'R'標誌。 (編輯我的答案) – anubhava

+0

我還沒有添加R標誌,但它仍然改變URL在瀏覽器中subfolder2 –

+0

你剛纔說:'目前,它顯示www.domain.com/subfolder1/link.php在browser'我現在困惑了。它在瀏覽器中更改URL嗎? – anubhava