使用远程 IIS 调试 ASP.NET 应用程序
Posted
技术标签:
【中文标题】使用远程 IIS 调试 ASP.NET 应用程序【英文标题】:Debug ASP.NET application using remote IIS 【发布时间】:2013-11-17 18:21:48 【问题描述】:我正在使用 Visual Studio 2012 开发 ASP.NET 应用程序。我在开发时一直使用 IIS express 来测试应用程序,但现在我需要在生产环境中对其进行测试。
IIS 在远程服务器上运行,我在那里安装了远程调试器工作室,在默认站点 (\test\baseTest) 下创建了一个应用程序,在 Visual Studio 2012 中创建了一个测试项目并设置为“使用自定义 Web 服务器”路径http://myServerName/test/baseTest/
。
好的,我们到了,我按 F5 开始调试,通过调试器的连接工作正常(我可以看到一个新行显示“myDomain\myuserName connected”但是...应用程序无效,我错过了所有 .aspx文件。
我错过了什么吗?调试到远程站点时,我应该在 Visual Studio 中设置一些参数来部署所有文件吗?
【问题讨论】:
【参考方案1】:这是远程调试而不是自动部署。
您应该将所有网站文件复制到远程 iis。 请记住构建调试并部署所有 .pdb 文件。 还要检查 web.config。
<system.web>
<compilation debug="true" />
</system.web>
开始调试时启动远程调试监视器 (msvsmon.exe)
在那里你可以找到远程调试的综合指南:
http://www.codeproject.com/Articles/38132/Remote-IIS-Debugging-Debug-your-ASP-NET-Applicatio
【讨论】:
<compilation debug="true" />
已在配置文件中设置。我真的应该每次都手动复制这些文件吗?不是很方便...不是有办法在调试开始时自动复制文件吗?
@LorenzoC 远程调试旨在分析生产服务器的奇怪行为。它不是使用远程服务器作为开发环境。也许您可以在 postbuildevents 中创建一个批处理脚本来复制文件...
假设我没有本地 IIS 并且 IIS 表示它不行,因为我需要与 AD 交互(它可以只能从特定服务器完成)?我是否需要每次都将应用程序发布到远程服务器上的测试站点?
@LorenzoC 对不起,但我认为你别无选择......无论如何,安装 IIS 很容易。您使用 ftp 还是在远程服务器上有共享文件夹?
是的。你认为使用那个远程文件夹来放置我的项目是一个好的解决方案吗?建立一个测试站点很容易。【参考方案2】:
要从 IIS 调试 asp.net 应用程序,您需要通过转到“工具”->“附加到进程”选项来附加 w3wp.exe 进程。使用IIS调试的详细步骤可以看这个链接:Debug asp.net application using IIS
【讨论】:
以上是关于使用远程 IIS 调试 ASP.NET 应用程序的主要内容,如果未能解决你的问题,请参考以下文章