我有一个.htaccess文件,主要做两件事。在域上强制使用www并要求登录凭据(使用.htpasswd)。
如果我现在访问domain.com,它会要求输入用户名和密码。当我填写它时,我被重定向到www.domain.com,然后它要求我再次登录。
有没有办法在登录前完成www重定向?我已经尝试将强制www代码放在.htaccess文件的顶部。
答案 0 :(得分:0)
这是我现在的代码...... .htaccess文件中有更多内容,但这些是重要的部分
# Enable redirecting
RewriteEngine on
RewriteBase /
# Force www
RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,NC,L]
# Require login
AuthUserFile /home/xxx/domains/xxx/public_html/.htpasswd
AuthGroupFile /dev/null
AuthName "xxx"
AuthType Basic
require valid-user
答案 1 :(得分:0)
如果您将auth-settings限制为实际文件,则重定向应该有效,然后任何请求的文件都需要授权
# Require login
<Files "*.*">
AuthUserFile /home/some/dir/to/.htpasswd
AuthGroupFile /dev/null
AuthName "xxx"
AuthType Basic
require valid-user
</Files>