2010-04-07 76 views
1

假設我有一個由「dev.server」和「server.site.com」共享的htaccess文件。htaccess:只爲一個域做[一些代碼行],沒有其他

第一個域應該允許所有用戶不受挑戰地訪問它(它只存在於我的本地開發服務器上)。

第二個域我想用Apache驗證用戶(不是通過數據庫)。

的代碼來驗證用戶身份是:

AuthType Basic 
AuthName "Server Admin" 
AuthUserFile "/path/to/passwd" 
require valid-user 

我不能做是讓這4條線只有問題,如果域名是「server.site.com」。 我該怎麼做?

我搜索了一些像<IfEnv HTTP_HOST "site.server.com">但沒有運氣。

+0

選民關閉:注:http://meta.stackexchange.com/questions/39063/mod-rewrite-questions-getting-migrated-to-sf – 2010-04-07 22:35:08

回答

2

這似乎工作,但仍需要做一些測試。

Order Deny,Allow 
Deny from all 

SetEnvIf Host domain.for.no.auth dev 
Allow from env=dev 

AuthUserFile .pwd 
AuthType Basic 
AuthName MySite 
Require valid-user 
Satisfy Any 
+0

不錯!明天會得到讚揚(出票) – 2010-04-07 22:57:29

+0

這個效果很好。謝謝! – 2010-04-07 23:01:06

0

據我所知,這不能在.htaccess文件中完成。您必須將其放入DirectoryVirtualHost部分,兩者均不能用於.htaccess文件。

您必須在兩個單獨的文件中定義它,或直接在VirtualHost部分的服務器配置中定義它。

相關問題