asp.net - Windows Azure - 内容长度不匹配的频繁协议(protocol)违规

标签 asp.net azure

我正在努力更改现有的自托管 ASP.NET Web 应用程序以在 Windows Azure 中运行。我已成功将应用程序部署到 Web 角色,乍一看一切似乎都工作正常。

但是,我很快开始注意到 Javascript 并没有像我预期的那样在许多页面上执行。进一步调查显示,许多页面未完全加载。我一直使用 Firefox(显然它更宽容)并且它呈现部分内容,而 IE 只是显示“页面无法显示”。

运行 fiddler 或 charles,我可以看到由于内容长度不匹配而发生协议(protocol)违规(服务器将内容长度响应 header 设置为一个值,但随后不返回完整内容。

实际返回的内容长度似乎有所不同,因此我无法找到响应长度上限或类似内容的链接。以下是来自 fiddler 的一些示例错误消息:

Fiddler has detected a protocol violation in session #27. Content-Length mismatch: Response Header indicated 26,716 bytes, but server sent 23,138 bytes.

Fiddler has detected a protocol violation in session #47. Content-Length mismatch: Response Header indicated 54,444 bytes, but server sent 32,546 bytes.

Fiddler has detected a protocol violation in session #80. Content-Length mismatch: Response Header indicated 27,152 bytes, but server sent 18,726 bytes.

当使用 Azure 计算模拟器本地运行或在原始本地应用程序中运行时,此行为不会发生在应用程序中 - 仅当部署到 Azure 本身时才会发生。

如果有帮助的话,该 Web 应用程序是在 .NET 3.5 SP1 下运行的 ASP.NET 2.0 应用程序。

关于可能导致此问题的原因有什么想法吗?

最佳答案

我应该早点尝试这个,但在发布这个问题后,我想到了从公司网络外部访问 Azure 中的应用程序,并惊讶地发现我没有遇到上述任何问题。

因此,这将问题范围缩小为我们公司网络的问题,由于某种原因导致该域出现问题。我们的 IT 团队仍在调查根本原因,但我已确认这似乎不是与 Azure 本身相关的问题。

感谢您的回复。

关于asp.net - Windows Azure - 内容长度不匹配的频繁协议(protocol)违规,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8326476/

相关文章:

c# - Telerik 组合框 检查所有项目

c# - 获取两个日期之间的文件

azure - 使用 COPY 通过 Azure ARM 模板创建多个 ACI 时出错

azure - Get-AzADServicePrincipal ApplicationId 在 powershell-pipeline 中为空,但可以在 shell 上使用

c# - 在运行时配置 ASP.NET session 状态

c# - Session.Add ("key",value) 和 Session ["key"] = value 之间有什么区别?

.net - 如何获取 Azure 通知中心注册设备列表

azure - Web 角色经常崩溃

Azure 资源组组织

c# - 检查上传文件的类型