服务状态为';时站点不可用;正在运行';

本文关键字:运行 状态 服务 站点 | 更新日期: 2023-09-27 18:26:34

我最近更新了我的项目以使用SDK 2.0,并尝试将其发布到暂存环境中。Visual studio报告成功,但网站上没有生成任何URL,只有一个"网页不可用"或任何不存在URL的默认浏览器消息。然而,在Azure管理门户中,状态是RUNNING,CPU百分比图中甚至有一些曲线。我更新了我的角色项目中的所有引用,使其与2.0 sdk版本的空白新azure项目中的引用相同,唯一的新引用是由"身份和访问工具"添加的,用于OAuth目的。有人能告诉我可能出了什么问题吗?或者我如何自己解决这个问题?我启用了诊断,但它在每个选项卡中显示0个错误。当然,在我的本地环境中一切都很好

upd:我的问题其实很简单:端口转发出了问题,我不得不显式地向url添加:8080,所以我删除了所有端点,只添加了一个简单的端口80,没有内部端口集。接受的答案为我指出了发现这个问题的方法

服务状态为';时站点不可用;正在运行';

Visual Studio和Azure管理门户仅报告服务器已启动并正在运行。他们无法知道代码或部署是否存在实际问题。

网页不可用与404不同,也与找不到dns不同。网页不可用通常意味着某种服务器错误。部署中很可能缺少一些.DLL

如果你在WebRoles上运行,你可以RDP到服务器,并查看Windows事件查看器,看看是否出现任何错误

或者,您可以通过web.config关闭自定义错误(请查看此链接以获取示例说明:http://www.serverintellect.com/support/programming/custom-errors.aspx)

最后,您需要找出问题的真正原因

确保您的web.config中有以下内容。我的是在行之前添加的

<customErrors defaultRedirect="GenericError.htm" mode="Off">
      <error statusCode="500" redirect="InternalError.htm" />
</customErrors>

如果您使用的是web.config转换,并且有一个web.debug.config,您可以向其中添加以下代码:

<customErrors mode="Off" defaultRedirect="GenericError.html" xdt:Transform="Replace">
      <error statusCode="500" redirect="InternalError.htm"/>
</customErrors>

您仍然需要确保在web.config中有一个自定义错误部分才能进行替换。