我有一个特定于语言的子域,它指向与我的网站的根相同的目录。我使用PHP进行检测并显示语言。
我只想在此子域上设置htpasswd。请记住,没有特定于该子域的物理目录。因此,该语句将与我的网站的根目录位于相同的htaccess中。
我需要htaccess来做到这一点:
if request is mysubdomain.domain.com
AuthUserFile /www/.htpasswd
AuthName "Locked"
AuthType Basic
谢谢
最佳答案
这应该工作:
AuthUserFile /www/.htpasswd
AuthName "Locked"
AuthType Basic
Require valid-user
SetEnvIf Host yourdomain.com secure_content
Order Allow,Deny
Allow from all
Deny from env=secure_content
Satisfy Any
我和@Anders Lindahl在同一条路线上,但显然SetEnvIf中没有“not”,因此我已经进行了更改以允许所有人允许并拒绝使用env-var设置的人。
他的解决方案也有效,但是您必须先
SetEnv no-auth-required 1
,然后让!no-auth-required取消设置(这就是!
的作用)关于.htaccess - .htpasswd在特定子域上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6953425/