利用IIS调试ASP.NET网站程序的完整步骤

前言

在实际的开发当中,相信很多的开发者在开发调试ASP.NET网站时候都是直接通过Visual Studio工具的编译运行来调试的。

一般情况下,这种调试方式也不会有多少问题,但有时候我们会发现这样的一个情况,就是明明在本地调试运行都没有问题的网站,部署到服务器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盘中查找系统的Host文件,Host文件一般在以下路径中:C:\Windows\System32\drivers\etc。

找到Host文件后,用文本编辑器打开host文件,推荐使用notepad++文本编辑器。打开后,我们在最后一行加入127.0.0.1 test.com即可,配置完成后保存(Win10系统可能无法编辑保存,我们一般采取复制文件出来,编辑完成后覆盖回原文件),在浏览器中输入test.com即可指向本地IIS中的网站,即你刚才配置的网站。

第五步 此时配置完毕后,我们在自己本地电脑的浏览器中输入test.com的时候,就会指向你本地IIS配置的test.com网站中,即你当前开发的网站。

第六步 如果test.com网站测试中发现相应的问题,我们就可以通过附加IIS进程的方式对网站进行调试。当然调试的方式与之前不同了,此时就不是直接点击Visual Studio中的调试按钮或者F5进行调试了。我们可以通过下面的方式进入调试模式,选择菜单栏上的调试,打开子菜单选中附加到进程,如下图(当然可以通过快捷键Ctrl+Alt+P直接调取出附加界面)

打开后的附加界面如下图,我们找到w3wp.exe进程,然后点击附加按钮即可。

附加完成后,你就可在代码中加入相应的断点调试了,在前台浏览器中输入test.com访问出现的错误,你可在Visual Studio中找到对应代码段加入断点。

通过上述步骤,即可很好的进行网站的调试,IIS相应的配置问题也能及早发现。

IIS出问题后的常见检查步骤:

1. 检查"Web服务扩展"中, 是否开启了"ASP.NET v2.0.50727"的支持.

2. 打开网站所在的文件夹(如: wwwroot), 在"属性"--->"安全"中, 检查有没有Internet来宾帐户, 如没有请添加, 并为其至少指定一个"只读"权限.

3. 在IIS管理器重, 选中"默认网站"后点击"属性", 在"主目录"中, 查看有没有选中"读取"、"记录访问"以及"索引资源".再"目录安全"中, 点击"授权及访问控制"下边的"编辑"之后, 查看又没有勾选"匿名访问"和"集成windows验证".
检查"ISAPI筛选器"选项卡, 是否为空.
如果设置非index、default等名称的页面为主页, 请检查是否在"文档"选项卡的"启用默认内容文档"中添加你希望做首页的文件名.

4. 检查"默认网站"下边的应用程序, 右键点击你网站对应的应用程序, 选择"属性", 按上面3的要求检查"目录"、"目录安全"和"文档"三个选项.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

(0)

相关推荐

  • IIS7 配置大全(ASP.NET 2.0, WCF, ASP.NET MVC,php)

    一.IIS7.0 配置 ASP.NET2.0 1.ASP.NET 2.0 部署 1)首先打开win7 的特性,路径我已标注 下面选中的是ASP.NET2.0, 如果要支持ASP.NET1.1,你的选中IIS6兼容 2.)设置安全选项 3)添加.Net经典应用程序池 4)将站点转换为Application 5)为站点添加 yourmachinename\IIS_IUSRS权限 6.)右键站点-Manage Application-Advanced Setting 设置当前站点为Classic .N

  • asp.net iis7默认文档错误异常的解决方法

    默认文档异常错误 当修改默认文档时IIS提示信息 执行此操作时出错. 详细信息: 文件名: \\?\E:\DNN\web.config 行号: 102 错误: 在唯一密钥属性"value"设置为"Default.aspx"时,无法添加类型为"add"的重复集合项 错误原因:是IIS中已经设置了默认文档为default.aspx,这个时候就出现的冲突,引发的异常 解决方法:在项目的web.config文件中找到添加文档节点<add />

  • Win7中IIS的ASP.NET环境配置简洁版

    工作中需要在Win7中使用IIS搭建ASP.NET的网站,这里分享下配置中的小问题. siyue最开始自己配了一遍,发现使用IIS运行ASP.NET网站时一直报错,想到自己可能配置的有问题,于是上网找点资料看看. 发现有个朋友对这个进行了详细的设置,非常好的介绍,我这里只是稍微总结下,好让自己记得更清楚. 详细内容传送门:Win7旗舰版中的IIS配置asp.net的运行环境 siyue觉得在Win7上配置IIS,一般的安装IIS和建立网站都没问题,(不过要运行ASP必须在开发工具那里安装ASP.

  • asp.net iis 无法显示网页的解决方法分析

    关于这个问题的解答,网络上有成千上万个版本,当然,出现问题的诱因不同,解决的途径也不同,所以我不排除其他解决此类问题的办法,但是这些办法都没有解决过我的问题,因为就是在一个绝对"干净"的系统环境下进行配置,也出现过此类问题.这期间,我曾显得那么无奈,那么郁闷.好在努力终有回报,我成功的解决了这个问题(主要是对文件夹权限的设置),今天把它分享出来,是一种展示,也是向大家提供一种思维方式.当然,这个办法也不是万能的,只是它显得更有效率而已. 具体步骤如下: 1.右键点击您要创建的虚拟目录文

  • IIS部署asp.net报404错误的解决方法

    1).所建网站->(右键)权限->"ASP.NET计算机帐户"是否已添加. 2).所建网站->(右键)属性->ASP.NET选项卡->版本是否为2.0,不是则修改为2.0; 3).IIS->WEB服务扩展中->ASP.NETV2.0是否被禁止,若为禁止状态则启动; 4).所建网站->(右键)属性->主目录->执行权限是否为:纯脚本;应用程序池是否设置: 5).所建网站->(右键)属性->ASP.NET选项卡->

  • iis支持asp.net4.0的注册命令使用方法

    32位的Windows: 1. 运行->cmd 2. cd C:\Windows\Microsoft.NET\Framework\v4.0.30319 3. aspnet_regiis.exe -i 64位的Windows: 1. 运行->cmd 2. cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319 3. aspnet_regiis.exe -i

  • ASP.NET在IIS7中上下文中不可用的解决方法

    Johnny换上Win7已经有几个月的时间,不过前几天重装了系统,依旧用的是Win7,只是今天在打开VS2009工程后在IE中测试时一打开便出现一个错误如下: 请求在此上下文中不可用 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.Web.HttpException: 请求在此上下文中不可用 源错误: 复制代码 代码如下: 行 28: protected void Application

  • 如何利用IIS调试ASP.NET网站程序详解

    前言 在实际的开发当中,相信很多的开发者在开发调试ASP.NET网站时候都是直接通过Visual Studio工具的编译运行来调试的. 一般情况下,这种调试方式也不会有多少问题,但有时候我们会发现这样的一个情况,就是明明在本地调试运行都没有问题的网站,部署到服务器IIS上,就出现无法描述的线上问题.这时候,就要排除服务器环境是否跟本地环境一样,其中一点还要涉及到IIS的配置的排除. 那问题来了,我们能不能在开发的时候,就部署在IIS上调试,而不是直接使用Visual Studio的运行调试,这样

  • win7和win2008 r2下配置IIS7(ASP.net运行环境)

    1.先要设置应用程序池(ApplicationPool)为Classic.NETAppPool,而不是默认的DefaultAppPool,可以在网站目录里对每个站点设置,也可以在站点进行单独设置. 控制面板--系统和安全--管理工具--Internet信息服务(IIS)管理器,打开IIS管理器.选中左侧的默认网站,单击右侧的高级设置,将应用程序池设置为Classic.NETAppPool. 2.选中左侧的"应用程序池",选中"Classic.NETAppPool",

  • iis6网站属性没有asp.net选项卡的解决办法

    iis6安装了asp.net,但是网站属性中没有显示asp.net选项卡. 解决办法如下:   1,如果是只安装了.net framework 1.1 在iis中是不显示那个选项卡的.默认就会支持asp.net1.1.在安装了.net framework 2.0后,iis站点属性里才会有asp.net的选项.   2,安装asp.net2.0后,请关闭iis窗口,重新打开iis,iis站点属性里才会有asp.net的选项   3,如果还没有,那么就要重新在IIS中注册asp.net,方法如下:

随机推荐