【问题标题】:The HTTP verb POST used to access path '/test.html' is not allowed不允许使用 HTTP 动词 POST 访问路径“/test.html”
【发布时间】:2011-04-27 23:49:30
【问题描述】:

下面是我的代码:

<form id="productForm" method="post" action="test.html">

</form>

【问题讨论】:

  • 使用什么服务器端脚本语言?
  • 我的意思是,是 PHP 还是 ASP.NET 还是 Ruby?

标签: asp.net html


【解决方案1】:

您是否使用任何 URL 重写? (http://forums.asp.net/t/953470.aspx)

在网络服务器中,HTML 文件是否允许 POST?尝试将扩展名更改为 .ASPX 或 .PHP

【讨论】:

    【解决方案2】:

    我在使用我的第一个 Facebook 应用程序时发现了这篇文章,所以这可能与您的潜在问题有关,也可能无关......但我遇到了同样的错误。

    虽然 Canvas URL 值必须以“/”结尾,但 Tabl URL 可以是完全限定页面(例如 http://[DOMAIN/DIRECTORY-PATH]/Default.aspx)。

    我在本地工作,所以 http://localhost:4604/Main/Default.aspx 为我工作。

    在 web.config 中似乎不需要 HttpGet、HttpPost 协议(尽管此修复仍然适用于那里)。

    【讨论】:

    • 这正是发生在我身上的事情,这解决了问题。
    【解决方案3】:

    首先想到的是权限。

    什么版本的 IIS ?默认情况下 IIS6 prevents 发布到 HTML 文件。

    【讨论】:

      【解决方案4】:

      这听起来像是在您的(假定的)Apache Web 服务器中使用了该指令? 您需要检查 httpd.conf 中的该指令并确保允许在您的文件上调用 POST。

      尽管如此,在静态 html 文件上 POST 似乎有点奇怪,还是 mod_rewrite 被用来迷惑人们?

      【讨论】:

        【解决方案5】:

        此错误的默认设置是在服务器配置中关闭 POST 动词。这发生在 Cassini 还是 IIS 中?在 IIS 中,可以控制此行为。此外,如果您在查看 IIS 配置后仍然遇到问题(如果这最终与 Web 服务相关),您可能需要确保正确的处理程序在您的 web.config 中:

        <system.web>  
            <webServices>    
                <protocols>    
                    <add name="HttpGet"/>
                    <add name="HttpPost"/>
        

        【讨论】:

          猜你喜欢
          • 2011-07-11
          • 1970-01-01
          • 1970-01-01
          • 2011-12-21
          • 2011-06-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多