当我尝试从部署 Azure Web 角色的计算机打开站点时出现 404

发布于 2024-12-18 04:19:02 字数 467 浏览 0 评论 0 原文

RoleEntryPoint.OnStart() 结束时,我想打开 Web 角色站点以确保它不会因某些愚蠢的错误而中断。所以我执行以下操作:

WebRequest request = WebRequest.Create( "http://127.0.0.1" );
using( WebResponse response = request.GetResponse() ) {
}

失败并显示 WebException(404) Not Found 文本。该角色在端口 80 上有一个开放的 HTTP 端点,因此这应该不是问题。但是,如果我省略该代码并且角色启动,我可以毫无问题地打开 http://mysubdomain.cloudpapp.net

这是怎么回事?如何从 Web 角色中打开 Web 角色站点的网页?

At the end of RoleEntryPoint.OnStart() I want to open the web role site to ensure that it doesn't break with some stupid error. So I do the following:

WebRequest request = WebRequest.Create( "http://127.0.0.1" );
using( WebResponse response = request.GetResponse() ) {
}

and this fails with WebException with (404) Not Found text. The role has an open HTTP endpoint on port 80, so this should not be a problem. However if I omit that code and the role starts I can open http://mysubdomain.cloudpapp.net no problem.

What's the deal here? How do I open the web page of the web role site from within the web role?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

且行且努力 2024-12-25 04:19:03

您不应使用 127.0.0.1,而应使用为 WebRole 指定的 InputEndpoint。

您可以使用如下方式从中获取 IPEndpoint 实例:

RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["YourInputEndpointForWebRole"].IPEndpoint

然后获取 IPEndpoint 的 ">IP 地址实例。

编辑

只需仔细检查以确认原因:

其原因是 IIS 中网站的站点绑定不是 *:80 (就像本地 IIS 中的某些通常所做的那样),而是仅针对特定的 DIP实例的(直接(内部)IP 地址)。

You shall not use 127.0.0.1, but instead the InputEndpoint specified for the WebRole.

You can get the IPEndpoint instance from it with sode like:

RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["YourInputEndpointForWebRole"].IPEndpoint

Then get the IP Address from the IPEndpoint instace.

EDIT

Just double checked to confirm the reason:

The reason for that is that the Site Bindings for the WebSite in IIS are not *:80 (like some nomrally do in local IIS) but just to the specific DIP (Direct (internal) IP Address) of the Instance.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文