2012-02-15 92 views
1

我想用的.htaccess重定向我的域名到另一個之一:的.htaccess:身份驗證和重定向

RewriteEngine on 
RewriteRule !^admin($|/) http://mydomain.com%{REQUEST_URI} [L,R=301] 

正如你所看到的,我不想重定向指定文件夾(」管理員「),因爲該目錄實際上有內容。

的問題是,我有這個代碼,另一個目錄的.htaccess:

AuthName "You must login" 
AuthUserFile /path/to/.htpasswd 
AuthType Basic 
require valid-user 

當我訪問非重定向文件夾在我的瀏覽器,它重定向到一個MYDOMAIN頁面401.html。 COM。

我該如何解決這個問題?我想將所有內容重定向到mydomain.com,除了需要授權的目錄「admin」。

回答

0

在第一個域的配置文件中查找R=401ErrorDocument 401。有些東西正在設置自定義401頁面,然後與您的重寫規則相匹配,並將瀏覽器重定向到mydomain.com

0

不小心的陷阱是您的瀏覽器可能在測試期間緩存重定向。因此,當測試從R = 301中刪除301以自行離開R標誌時。

這樣:

RewriteRule !^admin($|/) http://example.com%{REQUEST_URI} [L,R] 

一旦你滿意你的htaccess重定向那麼R標誌更改爲R = 301(作爲一個永久性重定向)的運作。

如果您一直在使用R = 301,請清除瀏覽器的緩存。