我知道这听起来有点愚蠢。但我从github下载了一个脚本,并意识到它的一个表单提交实际上是将表单输入引用到一个文件夹/ dir而不是一个单独的php文件。表单提交到一个目录?可能?
我现在的问题是如果是这样的话,是否意味着文件夹内的所有脚本本身都能够获得我的$ _POST表单输入结果?
我知道这听起来有点愚蠢。但我从github下载了一个脚本,并意识到它的一个表单提交实际上是将表单输入引用到一个文件夹/ dir而不是一个单独的php文件。表单提交到一个目录?可能?
我现在的问题是如果是这样的话,是否意味着文件夹内的所有脚本本身都能够获得我的$ _POST表单输入结果?
假设你是在谈论类似:
<form method='post' action='some/directory'>
,希望其(例如index.php
)由Web服务器的目录索引服务的文件接收表单提交和处理输入。因此,您不会将表单发布到目录,而是发布到Web服务器在访问目录时执行的默认文件。
<form>
标记的action=
属性只需要一些相对或绝对的URI--它不必指向实际存在的文件。这将是到Web服务器,以确定执行基于目录索引规则,脚本,重写规则等
其表单提交实际引用的形式输入到一个文件夹/目录
在HTTP URI中不存在这样的事情。所有的URI都会指向一个资源。由服务器决定如何响应该资源。
看起来像URI中的目录的东西可能会映射到文件系统上的实际目录。 Web服务器通常会使用类似DirectoryIndex
指令的内容来使用默认文件。
它可能会映射到上面几个级别的文件,然后通过以下方式处理:http://example.com/foo.php/bar/baz/
与foo.php
从URI读取/bar/baz/
并对其执行某些操作。
它可能有一个明确的映射(例如ScriptAlias
指令),该映射将其内部映射到另一个脚本。
它可能有一个使用正则表达式将其映射到别的东西上的编程映射(例如使用mod_rewrite)(可能会将'目录'分解为不同的查询字符串参数)。
还有很多其他的可能性。
我现在的问题是如果是这样,是否意味着文件夹内的所有脚本本身都能够获得我的$ _POST表单输入结果?
理论上,可以通过POST请求传递到文件系统目录中的每个脚本,然后返回复合响应的方式来配置服务器。我从来没有见过任何人尝试过(或想尝试)。上述解释之一更有可能。