2015-04-23 23 views
1

我試圖在網站根目錄(public_html)中使用HTTP身份驗證,它具有RewriteCondRewriteRule。當我訪問網站時,它給了我提示,但是當我取消時,它幾次再次提示我。最後,它停止提示,併爲我提供鏈接資源的主頁HTML,即圖像,JS,CSS等不可用。如何在htaccess HTTP Auth失敗時停止處理

我有一種感覺,HTTP身份驗證失敗並未導致htaccess腳本停止進一步處理,因此RewriteRule仍然生成內容。我如何告訴htaccess「在auth失敗時停止進一步處理」?

# manually added 
Options +FollowSymLinks 
RewriteEngine on 

# Added by cpanel password protect directory 
AuthUserFile "/home/username/.htpasswds/public_html/passwd" 
AuthType Basic 
AuthName "Stage" 
require valid-user 

# Manually added 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . index.php [L] 

回答

0

我認爲你需要在你重寫一個額外RewriteCond,如果你有一個有效的用戶只能繼續進行。例如:

RewriteCond %{LA-U:REMOTE_USER} !^$ 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . index.php [L]