如果htaccess HTTP Auth失败,如何停止处理

时间:2015-04-23 01:14:33

标签: .htaccess http-authentication

我正在尝试在具有public_htmlRewriteCond的网站根目录RewriteRule)中使用HTTP身份验证。当我访问网站时,它会给我提示,但是当我取消时,它会再次提示我几次。最后,它停止提示并给我带有链接资源的主页HTML,即图像,JS,CSS等不可用。

我感觉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]

1 个答案:

答案 0 :(得分:0)

我认为您的重写需要额外RewriteCond,只有拥有有效用户才能继续。例如:

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