Apache没有将POST参数发送到索引URL

时间:2010-09-06 19:32:39

标签: apache post

我在使用相对较新的Apache安装发送POST参数时遇到问题。

在我的文档根目录中,我有一个文件test.html,其中包含以下内容:

<form action="/test" method="POST">
  <input type="text" name="param" value="test" />
  <input type="submit" />
</form>

我的.htaccess文件将索引文件设置为serve.php,如下所示:

DirectoryIndex serve.php

在serve.php中,我只需打印POST参数,如下所示:

<?= $_POST['param'] ?>

如上所述,这不起作用。如果我将方法更改为GET(并且还将serve.php文件更改为访问GET),则可以正常工作。如果我明确地将操作指定为“/test/serve.php”,它就可以工作。

不知何故,在转换为索引文件时,POST参数似乎丢失了。想为什么?

3 个答案:

答案 0 :(得分:3)

/test重定向到/test/时,您的POST数据看起来会丢失。

尝试<form action="/test/" method="POST">

答案 1 :(得分:1)

只是想知道GET是否正在工作,因为URL中包含参数,而在POST中它们没有?

发表 将要处理的数据(例如,从HTML表单)提交到所标识的资源。数据包含在请求正文中。这可能会导致创建新资源或更新现有资源或两者。

只是想知道请求正文中包含的变量是否没有被Apache指令传递,也许是Apache认为不需要的东西?

答案 2 :(得分:-2)

只需将'/'添加到ACTION url dummy!