我们最近将我们的应用程序(IIS 服务器 + 数据库服务器)迁移到 AWS,并稍微修改了网络架构。系统的入口点是 Astaro 防火墙(我们使用 AWS AMI),它还托管 Web 服务器的 SSL 证书。与防火墙相关的一切都由供应商完成,我们只有一些只读权限。
我们在某些情况下会遇到 403 错误,但我会解释其中一种,因为它们都可能相关。
我们得到了一个查询数据库并以 HTML 格式返回报告的表单(该报告也有一些复选框来进行更新)。第一次提交表单时,我们总是会返回报告。如果我们想再次发布表单,用新数据更新,它会崩溃,返回错误 403。我们注意到,当第一个结果返回的行数非常少(或没有)时,它不会崩溃。
查看开发人员工具中 POST 的详细信息,工作和 403 错误回复之间的唯一区别似乎是发布的数据的大小。第二个帖子总是更大,因为它包含第一个报告的数据(因为页面还有其他选项可以选中行)。
此外,查看 IIS 日志,我们看不到任何 POST 崩溃的痕迹。 什么都没有。
这个问题只发生在生产中。在开发环境中,一切都完美无缺。唯一的区别是生产有防火墙/ssl,而开发是完全开放的。这就是为什么我们认为它可能与 SSL 有关。
供应商不是最有帮助的,我们正在寻求帮助以查明问题并试图将情况掌握在我们手中。
任何输入表示赞赏。