在阅读有关允许用户将文件上传到您的服务器时维护安全性的问题和答案时,一些答案表示将文件存储在浏览器无法访问的位置,并且位于“文档根目录之上”.
如果我有一个以“ var / www /”运行的网站,例如:
var / www / MySite / Index.html
“文档根目录上方”是指MySite文件夹上方,但仍位于var / www文件夹中,还是意味着它与var / www完全不在同一位置,而是完全位于服务器主机文件系统上的其他位置?
解决方法:
我通常不必担心将某些文件移到www文件夹之外,因为如果www文件夹易受攻击(无论是通过apache还是其他方式),您就会遇到许多其他问题,并且这些文件仍然可以访问.将其移动到www文件夹之外还会影响应用程序的可移植性,因为大多数托管公司始终不允许访问超出您的用户www文件夹的内容.
建议在apache中启用Override并将包含以下内容的.htaccess文件放置在要限制的任何文件夹中:
Order deny,allow
Deny from all
这样,您的应用程序便是独立且可移植的.
Apache2.4和PHP5.5在涉及操作系统级别上不需要的代码的访问和执行的问题上进一步得到了加强,因此我还建议尽可能使用这些软件包的最新版本.