2013-10-07 61 views
1

我有一個PHP文件從前端需要從管理後端觸發一個PHP文件,但它不能這樣做,因爲我加入了。 htaccess的:允許從特定的URL訪問和阻止訪問通過IP管理文件夾

ErrorDocument 403 "Forbidden 
order allow,deny 
allow from 182.112.0.1/13 
allow from 76.112.0.1/13 .... 

,並將它顯示在php文件被禁止的錯誤的內部。 有沒有辦法用htaccess文件來解決這個問題?

ErrorDocument 403 "Forbidden 
order allow,deny 
allow from 182.112.0.1/13 
allow from 76.112.0.1/13 .... 
allow from file.php // this doesn't work 
+0

這是管理後端文件感** **掛從前端的內容,或者是被** **包括直接在PHP ? –

+0

在前端的php文件中包含了($ GLOBALS ['admin_folder']。「/ config.inc.php」);並在tpl文件(模板我有href =「{admin} /file.php」所以我相信這兩個。 – Adrian

回答

2

您可以使用mod_setenvif

所以這樣的事情應該工作:

SetEnvIfNoCase Request_URI "file\.php" ALLOWED_PHP 

ErrorDocument 403 "Forbidden 
order allow,deny 
allow from 182.112.0.1/13 
allow from 76.112.0.1/13 
allow from env=ALLOWED_PHP 
+0

這樣做的工作,現在如果我有多個文件,我只是像這樣添加它們:SetEnvIfNoCase Request_URI「文件\ .php「ALLOWED_PHP SetEnvIfNoCase Request_URI」file \ .php「ALLOWED_PHP SetEnvIfNoCase Request_URI」file \ .php「ALLOWED_PHP – Adrian

+1

yes或者您可以與'OR'使用同一行,例如**'SetEnvIfNoCase Request_URI」(file | foo | bar) .php「ALLOWED_PHP」** – anubhava

+1

你可以做類似'「^ admin_folder /(.*)」' – cmorrissey

相關問題