我怎样才能防止用户看到我的PHP源代码?

我最近尝试访问我的网站,我看到一些令人不安的东西 – 用户可以下载index.php文件,看看它的内容,PHP代码!

Apache可以如何提供PHP源代码而不是运行PHP源代码呢? 是否因为我们正在更新我们的网站进行维护?

我用这个代码:

 ErrorDocument 503 "Our website is temporarily closed for maintenance. It should reopen by..." RewriteEngine On # TO ALLOW YOURSELF TO ACCESS THE SITE NORMALLY, SET THE NEXT LINE TO YOUR IP ADDRESS. RewriteCond %{REMOTE_ADDR} !^111\.222\.333\.444$ RewriteRule .* - [R=503,L] 

现在显示此消息。

但是,如果我再次发生这种情况,我怎么能自动出现?

Apache没有被“删除”或“closures”,否则你将无法看到PHP源代码。 你可以添加下面的代码块来closures服务.php文件,当php没有加载:

 <IfModule !mod_php4.c> <FilesMatch "\.php$"> Order allow,deny Deny from all Allow from none </FilesMatch> </IfModule> 

要回答张贴的评论作为答案,下列之一应该为PHP5模块,取决于它的安装方式(Sander Rijken的修改):

 <IfModule !mod_php.c> <FilesMatch "\.php$"> Order allow,deny Deny from all Allow from none </FilesMatch> </IfModule> 

要么,

 <IfModule !mod_php5.c> <FilesMatch "\.php$"> Order allow,deny Deny from all Allow from none </FilesMatch> </IfModule> 

仅包括这两个片段中的一个,具体取决于哪个适用于您的configuration。