2011-10-09 58 views
0

我使用的是Apache服務器。 有沒有辦法阻止用戶直接訪問我的包含文件? 但只允許服務器訪問這些?如何防止用戶訪問包含文件?

+0

[secure include files]的可能重複(http://stackoverflow.com/questions/3472956/secure-include-files) –

回答

2

另一種方法是讓包含在網站所在目錄之外的包含文件。例如:

/ 
    includes/somefile.php 
    http/index.php 

所以網站從HTTP /服務,但包括是目錄之外,這意味着沒有人可以直接從Web瀏覽器訪問他們,但你的腳本可以包括他們是這樣的:

<?php 
require_once '../includes/somefile.php'; 
[...] 
2

將它們放在Web根目錄之外的目錄中。

即,如果index.php/var/www/domain.com/www中,則將包含在/var/www/domain.com/includes之內。

2

不要將包含文件放在文檔根目錄下(即在apache傳遞給用戶的文件樹之外)。