禁止运行php文件

时间:2014-02-04 22:01:50

标签: php apache

我有这个目录树:

dir/
    file.php
   .htaccess

.htaccess我有php_flag engine off,所以如果直接调用文件dir/file.php,它就不会运行。

但如果我将file.php包含在此目录之外的其他php文件中,file.php仍会运行。

是否可以阻止所有php文件在目录中运行,即使它们包含在此目录之外的其他文件中?

3 个答案:

答案 0 :(得分:0)

您无法在.htaccess中关闭PHP处理。这必须在Apache配置级别上完成

<Directory /your/path/here>
    php_admin_flag engine off
</Directory>

答案 1 :(得分:0)

您可以在该目录中的php文件中添加一些额外的逻辑:

 if($the-Criteria-Which-Keeps-You-From-Deleting-The-Files-Is-Met){ 

    // Your otherwise not-allowed code runs here

     } 
//Thus, the contents of this script do not execute unless you want them to. 

现在,我自己也有一些,我在上面的if()语句中使用的逻辑是这样的:

if ($_SERVER['REMOTE_ADDR'] == $my-Development-IP) { [...]

答案 2 :(得分:0)

我假设您要这样做以防止任何上传php文件,
这是我用于我的网站的内容:

 AddType text/plain .php .php3 .php4 .php .phtml .pl .py .jsp .asp .htm .shtml .sh .cgi 
php_flag engine off

在您的文件夹中创建一个htaccess并添加它。
php不会被解释,但会以纯文本显示