【问题标题】:Server does allow GET method but doesn't allow POST服务器确实允许 GET 方法但不允许 POST
【发布时间】:2012-11-02 10:45:11
【问题描述】:

我有一个简单的静态 html 网站,它使用 jquery 的 POST 方法和一些也使用 form method="post" 的表单...

我现在收到以下错误:NetworkError: 405 Method Not Allowed

当我使用 firebug 查看响应标头时,我看到服务器(IIS 顺便说一句。)确实允许以下操作: GET、HEAD、OPTIONS、TRACE

我的房东说,出于安全原因,他不能在静态 html 文件上使用 POST 方法...

谁能告诉我 POST 和 GET 之间的安全差异?我不明白为什么允许 GET 而不允许 POST。任何帮助证明他可以允许的任何帮助将不胜感激:-)

提前致谢 托马斯

【问题讨论】:

    标签: html security iis post get


    【解决方案1】:

    我唯一想到的是垃圾邮件机器人会自动发布到网页上的每个表单。也许提供者假设如果它是一个静态页面,它肯定没有验证码,并且很容易发送垃圾邮件。这只是一个猜测,我从未见过如此奇怪的政策。也许给他指出一些大型托管公司,并说这对他们来说肯定不是安全问题。

    【讨论】:

    • 谢谢!我仍然对允许 GET 而不允许 POST 的事实感到困惑。阅读本文后更甚:stackoverflow.com/questions/46585/…“POST 也比 GET 更安全,因为您不会将信息粘贴到 URL 中。因此,使用 GET 作为 HTML 表单收集密码或其他敏感信息的方法不是最好的主意。”
    • @ThomasVeit - 你为什么要发布到静态 HTML 文件?您通常会发布到由服务器端脚本处理的内容,以便您可以处理发布的内容。我认为这样做没有任何意义,也没有托管人启用它。
    • @MartinSmith - 我也看不出原因;)我的公司将这项工作交给了一家代理商,以重建我们的软件,以作为演示版展示给我们的访问者。似乎他们只是从源代码中复制了所有内容,包括发布方法等......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-12
    • 2013-11-10
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 2018-06-15
    相关资源
    最近更新 更多