0

我有2個域,例如foo.com和bar.com共享相同的文檔根目錄。 該網站是由.htaccess文件每個域的不同htpasswd文件

AuthUserFile ../.htpasswd 
AuthName "No Access" 
AuthType Basic 
<Limit GET POST PUT> 
    require valid-user 
</Limit> 

我怎麼能根據設置在主機上的AuthUserFile保護?

僞代碼:

if (host == foo.com) { 
    AuthUserFile ../.htpasswd_foo 
} else { 
    AuthUserFile ../.htpasswd_bar 
} 
AuthName "No Access" 
AuthType Basic 
<Limit GET POST PUT> 
    require valid-user 
</Limit> 

如果這是不可能的,還有沒有其他的方法來獲得2個域不同的登錄信息?

回答

-1

嘗試將其設置是這樣的:

#site1.com 
setenvIfNoCase Host site1\.com pass_1 
AuthType Basic 
AuthName "Site1.com Login Required" 
AuthUserFile "/home/userdir/.htpasswds/site1.pwd" 
Require valid-user 
Order allow,deny 
Allow from all 
Deny from env=pass_1 
Satisfy any 

#site2.com 
setenvIfNoCase Host site2\.com pass_2 
AuthType Basic 
AuthName "Site2.com Login Required" 
AuthUserFile "/home/user_dir/.htpasswds/site2.pwd" 
Require valid-user 
Order allow,deny 
Allow from all 
Deny from env=pass_2 
Satisfy any 
+0

這不起作用。它總是使用第二部分。我認爲它完全覆蓋了第一個。 – mirsch