PHP脚本保护

时间:2010-12-02 10:07:52

标签: php security apache

几天前我遇到了一个可怕的问题。我正在我的ubuntu服务器上安装更新,这是一个大约10个网站的主机。在更新期间,出现了问题,并且apache mod_php被禁用。结果,PHP支持消失了,几分钟(直到我发现什么是错的)用户得到了下载PHP脚本的邀请,而不是看到一个网站。毋庸置疑,除了将脚本资源暴露给整个世界之外,没有什么比这更糟的了,尤其是当数据库凭据保存在内部时。

问题:如何配置apache,以后将无法实现这种情况?我应该在apache2.conf中添加哪些行,以便在禁用mod_php的情况下无法下载PHP文件?

2 个答案:

答案 0 :(得分:9)

只需将以下内容添加到根目录中的.htaccess

即可
php_admin_flag engine on

在这种情况下,用户将尝试从此dir及以下版本读取任何文件时出现HTTP 500错误,因为如果mod_php关闭,则没有模块定义php_admin_flag指令。

答案 1 :(得分:5)

更安全的方法就是不首先将您不希望访问的内容放在文档根目录中。请参阅我的回答here,其中提供了更多详细信息;基本的想法是,如果您不想通过URL访问文件,请不要将该死的文件放在URL可访问的位置。 99%的应用代码不应位于文档根目录下;

你的apache / php设置无关紧要,你还是安全的。