我需要保护我网站的不同标准,具体取决于我正在处理的环境.
我有三种不同的环境:
> localhost:什么都不保护
> www.test.example.com:保护整个网站(这是一个测试网站,所以我不希望它可以访问)
> www.example.com:仅保护/ admin url(实时网站,仅限/ admin受保护)
现在,我使用不同的htaccess文件.
对于test.example.com,我添加:
AuthUserFile mypasswordfile
AuthType Basic
AuthName "Enter password"
require valid-user
对于example.com,我添加:
SetEnvIf Request_URI /admin/? auth=1
AuthUserFile mypasswordfile
AuthType Basic
AuthName "Enter a password"
Order Deny,Allow
Deny from all
Allow from env=!auth
Require valid-user
Satisfy any
有没有办法只使用一个有条件的htacess有类似的东西
if(localhost) { do nothing }
if(test.example.com) { require valid user on all domain }
if(example.com) { require valid user only on /admin}
最佳答案 你可以使用这个组合.htaccess:
# require valid user only on /admin
SetEnvIf Request_URI ^/admin(/|$) auth=1
# if(test.example.com) { require valid user on all domain }
SetEnvIf Host ^test\.example\.com$auth=1
# if(localhost) { do nothing }
SetEnvIf Host ^localhost$!auth
AuthUserFile mypasswordfile
AuthType Basic
AuthName "Enter a password"
Order Deny,Allow
Deny from all
Allow from env=!auth
Require valid-user
Satisfy any