如何在Vista IIS 7 中用 vs2005 调试 Web 项目?

如何在Vista IIS 7 中用 vs2005 调试 Web 项目? 


Author:ghj1976  From : http://blog.joycode.com/ghj


在vista IIS 7 中用 vs2005 调试 Web 项目核心是要解决以下几个问题: 
1、vista 自身在安全性方面的User Account Control (UAC) 
2、安装必须的iis7 组件。 
3、vista 自带的IIS7 跟 IIS 6 在底层都发生了变化,我们如何让IIS7以兼容IIS6 的方式运行。因为VS2005并不支持IIS7。 
下面通过截图方式来说明如何配置上述几点,以保证vs2005可以调试 Vista 操作系统中基于IIS的Web 项目。 
一、安装必须的iis7 组件 
iis7 被分成了很多个组件,默认是不安装的,你需要安装这些组件。 
下图对应的功能,可以通过以下步骤打开:
开始 --> 控制面板 --> 程序 --> 打开或关闭 Windows 功能
 


 附件: 您所在的用户组无法下载或查看附件
 
1、vs2005 并不能识别 IIS7 ,要让它识别IIS7, 就需要安装IIS7 的一个插件:IIS6 管理兼容性; 
2、iis 默认安全性:VS2005 中,如果要调试站点的话,必须有“集成 Windows 身份验证” 
其他两个,在一些情况下也能会用到: 
摘要式身份验证 是使用 Windows 域控制器对请求访问 Web 服务器上内容的用户进行身份验证。 
基本身份验证 是要求用户提供有效的用户名和密码才能访问内容。 
3、要调试 ASP.net 当然要安装IIS支持 ASP.net 的组件了。 
二、配置iis7 
1、iis7 在安装了上述组件后,一些功能并没有启用,你需要把它启用起来: 
下述配置功能你可以在 
控制面板 --> 管理工具 -->Internet 信息服务(IIS)管理器 程序中找到 
打开 Internet 信息服务(IIS)管理器 后,在中间部分的下部,可以看到 身份验证 配置项,双击就是如下界面: 


 附件: 您所在的用户组无法下载或查看附件
 
刚才我们增加的几个身份验证,需要在你要调试的站点上启用。 
注意:是你要调试的站点,而不是你要调试的应用程序目录! 
2、iis7 应用程序池的设置 
iis 的应用程序池根据托管管道模式分了两种类型:集成和经典 
集成 .NET 模式下,应用程序不应在 <system.web>/<httpModules> 配置节中指定 ASP.NET 模块组件,而应使用 <system.webServer>/<modules> 配置节来加载 ASP.NET 模块组件。 
经典 .NET 模式 则是我们以前习惯的IIS 6 的方式,没有上述限制。 
毕竟现在 longhorn Server 离我们还远,我们当然要兼容Window 2003 的IIS6 的模式,所以我们需要修改站点的应用程序池设置,如下图: 


 附件: 您所在的用户组无法下载或查看附件
 
我上面的截图是使用了现有的经典模式的应用程序池,你也可以自己先建立一个经典模式的应用程序池,然后再用上图方式配置对应站点使用的这个经典模式的应用程序池。 
三、 VS2005 的启动。 
由于 Vista 的 User Account Control (UAC)  ,要避免调试中出现没有权限问题,我们应该以管理员身份来运行 Vista.如下图: 


 附件: 您所在的用户组无法下载或查看附件
 
 

参考资料: 
enabling ASP.NET 2.0 Debugging on Visual Studio 2005, IIS 7.0 and Vista

http://www.thousandtyone.com/blog/EnablingASPNET20DebuggingOnVisualStudio2005IIS70AndVista.aspx
 
技巧和诀窍:在vs 2005里使用Vista的IIS7

http://weblogs.asp.net/scottgu/archive/2006/09/19/Tip_2F00_Trick_3A00_-Using-IIS7-on-Vista-with-VS-2005.aspx


http://blog.joycode.com/scottgu/archive/2006/09/20/83906.aspx
 
running Web Applications on Windows Vista with Visual Studio 2005 

http://msdn2.microsoft.com/en-US/library/aa964620(vs.80).aspx

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [Asp.Net] 的这些文章也感兴趣:

ASP.NET里的支架:Dynamic Data Support
名称地址(Namespace)
Step1帐户登录系统(1.程序结构)
利用C#制作简单的留言板
构造.NET环境下的网页下载器 (2)
VS.NET下web项目源代码管理
为什么会出现ASP.NET平台下的MVC框架?
前几天写了一个记事控件
session和viewstate的比较
精通ASP.NET中弹出窗口技术