防止直接执行php文件

防止直接执行php文件,php,Php,我有一个前端的php文件。在这个文件中有几个表格 <form name="add3" method="post" id="add3" name="add3" action="add_exec.php" role="form"> </form> 现在您可以在action中看到add_exec.php。我不希望直接执行此文件 我不想使用.htaccess来实现这一点 我们还可以做些什么来阻止直接执行add_exec.php文件 谢谢 编辑: 我不是在寻找答案。如果我的文

我有一个前端的php文件。在这个文件中有几个表格

<form name="add3" method="post" id="add3" name="add3" action="add_exec.php" role="form">
</form>

现在您可以在action中看到add_exec.php。我不希望直接执行此文件

我不想使用.htaccess来实现这一点

我们还可以做些什么来阻止直接执行
add_exec.php
文件

谢谢

编辑:


我不是在寻找答案。如果我的文件是表单动作属性,那么它会被考虑为包含还是不包含?如果否,则如何阻止执行。

这都与请求类型有关:

在add_exec.php顶部检查请求方法:

if ($_SERVER['REQUEST_METHOD'] != 'POST')
    exit('No access!');
或:


通过修改web服务器配置文件,可以防止访问web服务器中托管的资源(文件、图像、js等)。在ApacheWeb服务器中,可以使用apache2.conf或.htaccess文件来完成

<Files add_exec.php>
    Order allow, deny
    Deny from all
</ Files>

谢谢你的评论。我的问题是,如果我们在动作部分使用文件名,那么它会被考虑为包含吗?因为我确实检查了这些问题。@dagon我已经更新了问题。请注意,在提交表单时,advice.add_exec.php已“执行”。如果你不想有人在浏览器中键入其url,请检查它是否已以inputsPerhaps的形式发送如果你解释了该场景,那么你的问题可能会非常迟钝。简单回答删除add_exec.php。它不会执行,谢谢你的回答。当然可以,我会检查它,然后将它标记为答案。现在我得了-2分。哈哈,谢谢你的回答。我会检查一下,让你知道。投票通过。
<Files add_exec.php>
    Order allow, deny
    Deny from all
</ Files>
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
    exit();
}

// process your form