我的网站上有一个目录,用于存储用户上传的文件.我为上传的文件类型使用白名单,并使用散列名称保存文件,但从我读过的另一个好的安全预防措施是停止在目录中执行脚本.我还想防止直接访问目录中的文件,因为我不希望用户能够下载不属于他们的文件.
我的服务器用Apache运行Linux.以下.htaccess文件是否正确我想要实现的目标?
order deny,allow
deny from all
<FilesMatch .PHP>
SetHandler None
</FilesMatch>
解决方法:
你正在寻找这样的东西:
<Directory /path/to/dir>
Order allow, deny
Deny from all
PHP_admin_flag engine off
</Directory>
前两个指令(Order
and Deny
)(或2.2或2.4)应禁止任何人通过Apache访问目录(他们将收到403错误). PHP_admin_flag会关闭mod_PHP,鉴于所有人都拒绝,这实际上应该是多余的.
另一种方法可能更好,就是根本不要在您的Web根目录下拥有该目录.