Web服务器安全性的目录结构

我有像应用程序中的许多目录

root index.php modules/ includes/ data/ themes/ and etc. 

我已经在每个文件夹中放置索引html文件,以使其简单安全。 但是我认为必须有一些更好更安全的安全技术。

我的问题是我们如何通过htacess和PHP来做到这一点。

将所有不需要在文档根目录下的东西移出。

请记住,您不需要将所有文件都放在服务器目录结构的公共可访问部分。 假设你有你的文档根目录:
/的applicationName /networking/

你可以把公众不需要看到的东西移动到:

/的applicationName /包括/
/的applicationName /数据/
…等等。

您仍然可以在您的代码中引用这些位置(因为它使用服务器的目录结构),但是其他人将无法将其作为文档根外部的访问权限。

我想作为安德鲁,将它们列为/ includes /或/ data /,但是放置index.html仍然是个好主意。 根据您使用的文件,您可以使用IP安全性。 $ _SERVER ['REMOTE_ADDR'] ==“你的ip”在一个简单的if,当然如果这个在某种意义上应该是公开的,这不会是一个安全。

 Options -indexes 

这将会和将index.html文件放在每个文件夹中的效果相同,所以人们不得不猜测url,而不是获得一个好的文件名列表。

为了保护includes文件夹(也可能是数据),你可以在里面放一个.htaccess文件,里面包含:

 Order allow,deny Deny from all Satisfy All 

这样,没有人可以从互联网上访问这些文件,只有PHP可以包含/读取它们。