2011-01-31 54 views
1

我有我的開發服務器上的下列虛擬主機:只有192.168.0.3可以申請,但任何人都可以要求/public/file.html

<VirtualHost *:80> 
    ServerName example.com 
    DocumentRoot /srv/web/example.com/pub 
    <Directory /srv/web/example.com/pub> 
     Order Deny,Allow 
     Deny from all 
     Allow from 192.168.0.3 
    </Directory> 
</VirtualHost> 

Allow from 192.168.0.3部分是隻允許從我的工作站計算機的請求。

我想調整這個允許任何人要求一定網址:

http://example.com/public/file.html 

如何改變這種允許/public/file.html請求得到任何人通過?

注意:/public/file.html實際上不存在作爲服務器上的文件。我使用mod_rewrite通過單個索引文件重定向所有傳入請求。

+0

屬於http://webmasters.stackexchange.com/ – 2011-01-31 06:26:51

回答

0

這是唯一的辦法,我發現解決它:

<VirtualHost *:80> 
    ServerName example.com 
    DocumentRoot /srv/web/example.com/pub 
    SetEnvIf Request_URI "/public/file.html" public 
    <Directory /srv/web/example.com/pub> 
     Order Deny,Allow 
     Deny from all 
     Allow from 192.168.0.3 
     Allow from env=public 
    </Directory> 
</VirtualHost> 
0

申請配置指令到不映射到文件系統路徑,則必須使用Location封閉指令:

<Location /public/file.html> 
    Order Deny,Allow 
    Allow From All 
</Location> 
相關問題