.htaccess 特定子域上的.htpasswd
我有一个特定于语言的子域,它指向与我的站点根目录相同的目录。我使用PHP来检测它并显示语言 我只希望在此子域上设置htpasswd。请记住,没有特定于此子域的物理目录。因此,该语句将与我的站点根目录位于同一htaccess中 我需要htaccess来执行此操作:.htaccess 特定子域上的.htpasswd,.htaccess,subdomain,.htpasswd,.htaccess,Subdomain,.htpasswd,我有一个特定于语言的子域,它指向与我的站点根目录相同的目录。我使用PHP来检测它并显示语言 我只希望在此子域上设置htpasswd。请记住,没有特定于此子域的物理目录。因此,该语句将与我的站点根目录位于同一htaccess中 我需要htaccess来执行此操作: if request is mysubdomain.domain.com AuthUserFile /www/.htpasswd AuthName "Locked" AuthType Basic 谢谢这是未经测试的,但可能会起作用,或
if request is mysubdomain.domain.com
AuthUserFile /www/.htpasswd
AuthName "Locked"
AuthType Basic
谢谢这是未经测试的,但可能会起作用,或者提示您在Apache文档中查找什么:
SetEnvIf Host ^mysubdomain.domain.com !no-auth-required
AuthUserFile /www/.htpasswd
AuthName "Locked"
AuthType Basic
Require valid-user
Allow env no-auth-required
Satisfy Any
这应该起作用:
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集的人
他的解决方案同样有效,但您必须先
设置env no auth required 1
,然后让!无需授权即可取消设置它(这就是!
所做的)就像一个符咒!非常感谢你!应得到作者的确认:)