调试 .Net 网站 api

Debugging .Net web api

我使用 visual studio 构建了一个 .net 网络应用程序。我在 visual studio 中对其进行了测试,它似乎工作正常。在本地发布并复制到我的远程 Web 服务器后,应用程序池似乎一直在崩溃,我不确定如何调试它。

我是如何发布它的:我在本地发布它并将所有文件复制到:wwwroot/ss/ 在远程服务器上。之后,我将该文件夹作为应用程序安装在 IIS 中。因为它是使用 .net 4.5 框架构建的,但我只有 .net 4.0 应用程序池:

appcmd set apppool /apppool.name: api /managedRuntimeVersion:4.5

现在,每当我使用 url: mywebsite.com/ss/api/controller/param 访问应用程序时,我都会收到 503 服务不可用。

当我进入那个URL后查看应用程序池时,应用程序池已经关闭。我尝试使用 try/catches,但它似乎没有帮助。我在日志文件中看到的是:

2015-03-09 01:01:39 remoteIP 14132 siteIP 80 HTTP/1.1 GET /ss/api/controller/param 503 4 AppOffline api

最好的调试方法是什么?我可以使用远程调试器吗?除了 C:\Windows\System32\LogFiles\HTTPERR 或 logs/LogFiles 文件夹之外,站点根目录中是否有任何文件夹可以找到有关崩溃原因的更多信息?

编辑: 如果它有用,我会在事件日志中看到:

我看到了几个警告: 为应用程序池 'api' 提供服务的进程意外终止。进程 ID 为“2724”。进程退出代码为“0xfffffffe”。

其次是: 应用程序池 'api' 由于服务该应用程序池的进程中的一系列故障而被自动禁用。

没有 .net 4.5 运行 时间这样的东西。将其设置回 .net 4.0

appcmd set apppool /apppool.name: api /managedRuntimeVersion:4.0

有趣的事实。

截至 2015 年 3 月 9 日,只有 3 次 .net 运行次

  • .net 运行时间 1.0
  • .net 运行时间 2.0
  • .net 运行时间 4.0

这些 运行 时间允许您 运行 以下内容(忽略各种 SP)

  • .net 运行时间 1.0
    • .net 框架 1.0
  • .net 运行时间2.0
    • .net 框架 2.0
    • .net 框架 3.0
    • .net 框架 3.5
  • .net 运行时间 4.0
    • .net 框架 4.0
    • .net 框架 4.5
    • .net 框架 4.5.1
    • .net 框架 4.5.2