【问题标题】:a second ASP.NET web app hangs after deployed as IIS 'nested' Application onto primary web site第二个 ASP.NET Web 应用程序在作为 IIS“嵌套”应用程序部署到主网站后挂起
【发布时间】:2019-07-18 02:25:07
【问题描述】:

当我从 IIS 浏览时,我的 IIS 嵌套应用程序挂起 - 浏览器繁忙的微调器永远旋转。

我将第二个 VS ASP.NET Web 应用项目添加到我的主网站,作为 IIS“嵌套”应用程序。

第二个 Web 应用程序项目从 VS OK 调试并打开浏览器。

是否可以用调试器打断代码来查看代码是否处于循环中?

背景:
我的 Windows Server 2012 R2 Azure VM 上的 IIS 6.5
VS 是 15.3.4

IIS > 站点 > 我的主要网站 > 测试(此应用程序已添加到主要网站)> 高级设置:

应用程序池 = DefaultAppPool
物理路径 = TEST 的 VS 项目的路径
虚拟路径 = /TEST

IIS 6.5...

测试设置...

【问题讨论】:

    标签: asp.net windows visual-studio azure iis


    【解决方案1】:

    如果您不确定是什么问题导致您的网站永远旋转,请查看 IIS 中的实时请求。从 IIS 管理控制台中选择工作进程。

    右键单击正在运行的应用程序池并选择“查看当前请求”。

    这将显示当前正在运行的 ASP.NET Web 请求的列表,如下所示。

    我建议查看“已用时间”,看看您是否有很多需要很长时间的请求。您还应该查看它们是否都卡在同一个模块中。这可能表明问题都与 ASP.NET 会话或 ASP.NET 请求生命周期中的某个其他步骤有关。您还可以识别导致问题的特定 URL。

    除此之外,我强烈建议使用 NLog、log4net 或 Serilog 等日志框架。然后,您可以将它们发送到日志管理服务,以便更轻松地跨多个服务器搜索它们。应用程序日志是跨服务器跟踪应用程序跟踪的好方法。

    如果您的 Web 请求返回 500 内部服务器错误,您需要检查服务器端日志是否有异常。正如上面提到的一般应用程序日志,拥有良好的异常处理并正确记录所有错误非常重要。

    您还可以使用一些开源诊断工具(如 Glimpse)进行跟踪。 Glimpse 是一个蓬勃发展且不断发展的开源 NuGet 包系列,可为 ASP.NET 应用程序提供详细的性能、调试和诊断信息。它易于安装、轻量级、超快,并在每页底部显示关键性能指标。当您需要了解服务器上发生的情况时,它允许您深入了解您的应用程序。 Glimpse 提供了很多有价值的信息,我们建议您在整个开发周期(包括您的 Azure 测试环境)中使用它。 Fiddler 和 F-12 开发工具提供客户端视图,而 Glimpse 提供服务器的详细视图。您也可以尝试使用它。

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-23
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-05
      相关资源
      最近更新 更多