【问题标题】:PHP, "The requested URL was rejected. Please consult with your administrator." error when submittingPHP, "请求的 URL 被拒绝。请咨询您的管理员。"提交时出错
【发布时间】:2022-01-26 15:17:10
【问题描述】:

我制作了一个 HTML 表单,它通过单独文件中的 php 代码从 mysql 数据库中检索数据。到目前为止,上帝,一切正常。然后,在用户编辑该表单中的数据后,它通过另一个 php 页面提交数据,并将数据写回数据库。 这在去年春天之前一直运行良好,许多用户抱怨“请求的 URL 被拒绝。请咨询您的管理员。”错误。这可能是什么原因造成的?是我的代码吗?它似乎只发生在那些使用 chrome 的人身上。在控制台中,我没有收到任何错误。你能帮帮我吗?

【问题讨论】:

  • 网址是https还是http?
  • 除了 Chrome 之外,它还能在其他网络浏览器上运行吗?
  • 1.确保它不是浏览器问题,如果它适用于其他浏览器,则可能是 chrome 问题。尝试不同的浏览器,也许来自不同的网络(工作/公共(来自你自己的家))。这也可能是缓存问题,请尝试清除 cookie 和/或重新安装 chrome。 2. What have you researched so far? 请务必提及您已经尝试过的内容。 3. 检查您的日志。为此,您需要知道发生的时间。
  • 4.确保可以随时产生问题。如果它只发生在您的客户身上,那么您很难调试它。一旦你(完成)所有这些,确保你用你认为可能相关的所有内容更新你的问题。
  • 这是一个 HTTPS URL。我可以用 Chrome 重现它。 Firefox 没有问题。我已经从 Chrome 中清除了 cookie,它仍然做同样的事情。我注意到的是: 1. 清除所有 cookie 后,我加载通过读取数据创建 cookie 的页面。 2. 如果我在页面加载后手动删除该 cookie,则数据按预期提交,我没有收到该错误。这很奇怪。 Apache 的日志没有说明任何问题。我还应该寻找什么?我的设置是在 Windows Server 上使用 Apache 和 PHP。

标签: php


【解决方案1】:

我的 IT 解决了这个问题。以下是他们对历史的回应: 请求代码中的某些内容违反了 HTTP 协议,并显示消息“标头数 21 超出了最大限制:20”,这导致 Web 应用程序防火墙阻止了请求。我们现在已将允许的最大标头数量增加到 25 个,但您还应该检查您的代码是否符合 HTTP 协议标准和安全最佳实践。

非常感谢大家帮助我。 最好的,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 2012-06-16
    • 1970-01-01
    • 2017-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多