0

我的 Asp.net 应用程序托管在 Azure 云上,

在那个应用程序中,我确实有一个 Java Chat 控件,它的服务器在 Linux 上,

现在我创建了一个 HTTPHandler 来将该聊天请求重定向到 Linux 服务器,但是它在云环境中无法正常工作(尽管它在 Web 环境中运行良好)

它显示以下错误


微软视觉工作室

适用于 Microsoft Visual Studio 的 Windows Azure 工具

将调试器附加到角色实例“deployment16(315).Cloud.AnotherHttpHandler_IN_0”的 URL“http://127.255.0.0:82/”的 IIS 工作进程时出错。无法在 Web 服务器上开始调试。有关常见配置错误,请参阅帮助。在调试器之外运行网页可能会提供更多信息。

确保服务器正常运行。通过执行 Debug.Start without Debugging 验证 web.config 中没有语法错误。您可能还想参考在线文档中的 ASP.NET 和 ATL Server 调试主题。



我什至将处理程序放在 System.webServer 下以及 web.config 文件中,请参见下面的代码

<system.web>
<httpHandlers>
  <add verb="*" path="http-bind/*"
    type="HelloWorldHandler"/>
</httpHandlers>
</system.web>

<system.webServer>
<handlers>
  <add verb="*" path="http-bind/*" name="HelloWorldHandler" type="HelloWorldHandler"/>
</handlers>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>

我不知道是什么限制了它在云环境中。

4

2 回答 2

2

请查看此问题以了解如何配置 httpHandlers 以在 Azure 中运行。

最重要的是 - 删除system.web下的httpHandlers部分,只保留system.webServer下的处理程序。然后将resourceType="Unspecified"属性也添加到处理程序声明中。这应该可以解决您的问题。

于 2011-12-22T12:35:21.617 回答
1

我也有同样的问题。我用以下方式修复了它。

问题是我的机器是 32 位的,而 azure 服务器是 64 位的。为了解决这个问题,我只在应用程序池的高级设置中更改了启用 32 位选项。原始代码运行良好。

我从这个链接得到了帮助

于 2012-05-28T06:46:03.137 回答