前言
在实际开发中,相信很多开发人员都是通过编译运行Visual Studio工具直接调试ASP.NET网站的。
一般情况下,这种调试方式不会有很多问题,但有时候我们会发现这样一种情况,就是当一个明确调试好并在本地运行的网站部署到服务器IIS时,会出现无法描述的在线问题。此时需要排除服务器环境是否与本地环境相同,其中一个涉及到IIS配置的排除。
这就是问题所在。开发的时候能不能把它部署在IIS上进行调试,而不是直接用Visual Studio进行调试,这样可以尽早暴露出与IIS配置相关的问题,比如IIS用户的权限调用。比如我们调用微软的Office Excel组件导出Excel时,需要将IIS用户组的调用权限设置为Com组件。
在开发阶段通过IIS调试网站,可以避免很多因为IIS设置问题导致的问题。
我们来谈谈配置IIS调试的步骤。
第一步是打开您的IIS管理器。如果您没有安装IIS服务器,请联机。这里不解释如何在百度安装。在IIS中创建新网站,给定一个主机域名test.com,并将网站目录指向web项目的根目录,如下所示。
第二步是配置网站的应用池。上图中应用程序池的名称是testWeb,因此。这个应用程序池的NetFrameWork应该与项目中使用的版本一致。我们点击上图左侧的菜单【应用池】,打开应用池列表,选择testWeb名称的应用池,确认编辑这个应用池的版本号。下图
第三步:确保您的IIS正在运行,而不是停止,并确认您的网站的状态和与该网站对应的应用程序池正在运行。
第四步是设置本地计算机的Host文件,并配置本地域名test.com。让浏览器识别test.com域名指向本地计算机。(这一步非常关键,否则你会被告知无法通过在浏览器中键入test.com来解析。)
我们在计算机的c盘中寻找系统的主机文件。主机文件一般位于以下路径:c : Windows System32 Drivers 等。
找到宿主文件后,用文本编辑器打开宿主文件。建议使用记事本文本编辑器。打开后,我们可以在最后一行添加127 . 0 . 0 . 1 test.com,配置完成后保存(Win10系统可能无法编辑保存,所以我们通常会复制文件,编辑后覆盖原文件)。在浏览器中输入test.com指向本地IIS中的网站,也就是你刚刚配置的网站。
第五步配置完成后,当我们在本地电脑的浏览器中进入test.com时,它会指向你本地IIS配置的test.com网站,也就是你目前正在开发的网站。
第六步如果在test.com网站测试中发现了相应的问题,我们可以通过附加IIS进程来调试网站。当然,调试的方式和以前不一样。此时,不要直接点击Visual Studio中的调试按钮或F5进行调试。我们可以通过以下方式进入调试模式,选择菜单栏上的Debug,打开子菜单,选择Attach to Process,如下图所示(当然也可以通过快捷键Ctrl Alt P直接拉出附加界面)
打开后的附加界面如下。我们找到w3wp.exe流程,然后单击“附加”按钮。
附件完成后,可以在代码中添加相应的断点进行调试。在前台浏览器中输入test.com访问的错误,可以在Visual Studio中找到对应的代码段添加断点。
通过以上步骤,可以很好地调试网站,及早发现IIS相应的配置问题。
IIS出错后的常见检查步骤:
1.检查“网络服务扩展”中是否支持“ASP.NET v 2 . 0 . 50727”。
2.打开网站所在的文件夹(例如, wwwroot),在“属性”-“安全性”中检查是否有互联网来宾帐户。如果没有,请添加它,并为它分配至少一个“只读”权限。
3.在IIS管理器中,选择“默认网站”,然后单击“属性”。在“主目录”中,检查是否选择了“读取”、“记录访问”和“索引资源”。在“目录安全性”中,单击“授权和访问控制”下的“编辑”,检查是否未选中“匿名访问”和“匿名访问”是否为空?如果您设置的页面名称不是索引、默认值等。作为主页,请检查是否在“文档”选项卡上的“启用默认内容文档”中添加您想要作为主页的文件名。
4.在“默认网站”下勾选应用,右键点击与你的网站对应的应用,选择“属性”,按照上面3条的要求勾选“目录”、“目录安全”、“文档”三个选项。
摘要
以上就是本文的全部内容。希望本文的内容对大家的学习或工作有一定的参考价值。有问题可以留言交流。谢谢你的支持。