2013-03-25 143 views
0

我有一個服務器內的PHP系統尚未上傳到互聯網,只能使用網絡訪問。 (例如192.168.1.190/php_system/index.php)如何修復此URL以避免其他計算機訪問php_system文件夾中的文件?如何避免他們使用CTRL + Left Click訪問文件或使用其他窗口在iframe內打開文件?如何保護PHP網站(尚未上傳到互聯網)

+3

1)在您的Web服務器上配置權限。 2)這不是一個安全問題,無論如何你都無法阻止它。 – SLaks 2013-03-25 02:30:47

+0

你使用的是Apache嗎? – eliot 2013-03-25 02:31:01

+1

只是不分享你的文件?在大多數系統上,文件共享可以關閉。只要做到這一點。如果您需要運行Apache,請告訴它只接受來自127.0.0.1的連接。這可以讓你進行調試,但沒有其他人可以看到你有什麼...這可以設置每個文件夾,如果需要,使用.htaccess文件 – Floris 2013-03-25 02:31:06

回答

0

在要保護,添加文件的目錄名爲.htaccess(週期事項)

在這個文件中,把下面三行(編輯整理基礎上斯文的輸入)

order deny,allow 
allow from 127.0.0.1 
deny from all 

現在對於除了你之外的任何人(在運行Apache的機器上登錄)看不到內容應該是不可能的。任何活動的文件共享都必須單獨關閉。或者,您添加一行包含要從中訪問服務器的計算機的IP地址而不是127.0.0.1 - 您甚至可以有多行允許的地址,包括範圍,...

您會發現ton更多信息http://httpd.apache.org/docs/2.4/mod/mod_access_compat.html#order

+0

這是錯誤的。 'Order Allow,Deny'默認被拒絕,除非有一個允許異常,另外可以再次拒絕。正確的是'Order Deny,Allow'。 – Sven 2013-03-25 12:53:05

+0

@sven - 你對另一個答案的評論與你在這裏所說的相矛盾。在一種情況下,你說「允許,否認」是錯誤的;在另一個你說「拒絕,允許」是錯誤的...你能否詳細說明一下?我直接從文檔中獲取了這個示例。很確定它的工作原理。 – Floris 2013-03-25 22:19:48

+0

沒有矛盾。你的例子有Allow和Deny指令,而另一個答案則沒有。這種差異很重要。而你的「文檔」有錯誤。只需查看http://www.htaccess-guide.com/deny-visitors-by-ip-address/上的第一個用戶評論,然後在文檔的主要來源可以輕鬆獲取時,請停止使用輔助來源:http ://httpd.apache.org/docs/2.4/mod/mod_access_compat.html#order它正確地解釋了那裏... – Sven 2013-03-25 23:50:28

2

編輯您的Apache虛擬主機以僅允許從某些IP訪問。事情是這樣的:

<VirtualHost *:80> 
    ServerName EDIT.THIS.com 
    ServerAlias EDIT.THIS.IF.YOU.HAVE.ONE.com 
    DocumentRoot "/full/path/to/root" 
    <Directory /full/path/to/root> 
      Options FollowSymLinks 
      Order Allow,Deny 
      Allow from 192.168.0.1 EDIT.TO.ANOTHER.IP AND.ANOTHER 
    </Directory> 
</VirtualHost> 

另外,添加一個 「權威性」 的價值(這將需要一個登錄名和密碼)是這樣的:

<Directory /full/path/to/root> 
     AuthType Basic 
     AuthName "Admin" 
     // NOTE: do not include this in your website folder 
     AuthUserFile /path/to/.passwd_file 
     Require user user1 user2 
</Directory> 

編輯:修正了Order值。

+0

這種配置是錯誤的! 'Order'指令中的最後一個關鍵字也是未提及的缺省值。因此'拒絕順序,允許'允許默認訪問,除非它被拒絕。沒有否認,這個配置是無用的。正確的用法是'Order Allow,Deny'。 – Sven 2013-03-25 12:50:06

+0

謝謝Sven - 你是對的,答案已經更新。 – Tigger 2013-03-25 22:46:26