设为首页 收藏本站
查看: 1439|回复: 0

[经验分享] ASP.NET的IIS权限设置和故障排查

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-11-15 11:01:17 | 显示全部楼层 |阅读模式
  在上一篇文章中提到了在虚拟机上的2003系统下IIS出现的一些问题,具体是以下这个错误:
  
  配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
  分析器错误信息: 加载配置文件时出错: 未能开始监视对“//.host/Shared Folders/chenfangyi.com”的更改。
  源错误:
  [没有相关的源行]
  源文件: //.host/Shared Folders/chenfangyi.com/web.config    行: 0
  ——————————————————————————–
版本信息: Microsoft .NET Framework 版本:2.0.50727.832; ASP.NET 版本:2.0.50727.832
  现在来研究下错误出现的原因:
  探讨过程:
  1、这里有篇文章(虚拟一个win2003做服务器运行asp.net程序,共享文件夹权限问题)认为是共享文件夹权限的问题,不过我都可以在虚拟机里直接创建.aspx文件,并且把网站程序直接复制到虚拟机里也是同样情况,所以可以确定是IIS问题而不是共享文件夹权限问题。(后来证实在虚拟机里直接创建aspx是可以的,确实是虚拟机的共享文件夹问题)
  2、也非目录文件名问题,我把共享文件夹的文件路径全部都设为英文,仍然是那个错误。
  3、甚至我还按这里说的放到根目录下,作为一个虚拟目录而不是网站,也不行。
  4、按这里说的把文件所在的目录设置为应用程序,在属性-主目录中设置,却出现了另外一种情况:
  服务器应用程序不可用
您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。
  管理员注意事项: 详述此特定请求失败原因的错误信息可在 Web 服务器的系统事件日志中找到。请检查此日志项以查明导致该错误发生的原因。
  5、后来我还是把网站文件移到虚拟机中 ,新建了一个站点,没有进行其他配置,无意竟发现可以了,一切正常。
  查看了下正常状态下的权限和应用服务器设置,现在,可以找出这个问题的真正原因了:
  IIS6.0的默认设置是(我推算出来,而且还再虚拟了个2003才验证得出的结论啊):
  1、默认网站的权限安全里没有everyone组
2、aspnet_client及下级目录的权限安全里有everyone组
3、默认网站有创建一个应用程序“默认应用程序”
4、aspnet_clent没有应用程序,需要自己创建。
5、新建站点或目录没有everyone组。无论此站点或目录的上级文件夹是否有everyone权限。(第一次新建站点或目录都只开放Administrators跟system权限)
6、新建站点或目录会新建应用程序,无论此应用程序的上机目录或网站是否有应用程序。
7、但IIS有个特性,就是创建新站点时的权限并非按他默认的设置,而是按你上一次的设置而创建。比如上次如果给某个网站开放everyone权限,那么这次新建的网站就会是everyone权限的。反之则创建的网站或目录没有everyone权限。上面的3、4两点就失效了。
8、不过应用程序设置并无这个特性,新建站点或目录时都会自动创建应用程序。
  而aspx网站需要正常运行的配置为:
  1、权限安全组里必须包含ereryone。而IIS6里的那个“默认网站”下的aspnet_client目录安全里就有everyone权限组,所以才如上面第三点说的,有人把网站放到默认网站的目录下就可以了。注意:“默认网站”安全里并无everyone组,所以我之前做的把网站放在跟aspnet_client并列的目录是不行的,因为那样跟随的就是“默认网站”的目录安全设置,没有开放everyone权限。
  2、必须创建应用程序,不管是网站还是虚拟目录。不过默认其实都是帮我们创建好的,
  错误速查:
  1、.html可正常访问,访问.asp出现:HTTP/1.1 新建应用程序失败;访问aspx文件出现:
  无法显示网页
您正在查找的页当前不可用。 网站可能遇到支持问题,或者您需要 调整您的浏览器设置。
….
  找不到服务器或 DNS 错误
Internet Explorer
  则是整个站点都没有创建应用程序(不管整个站点是不是everyone权限)
  2、.html可正常访问,.asp可正常访问;而任何.aspx都出现:
  服务器应用程序不可用
您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。
  管理员注意事项: 详述此特定请求失败原因的错误信息可在 Web 服务器的系统事件日志中找到。请检查此日志项以查明导致该错误发生的原因。
  则应该是整个网站或整个目录都没有everyone权限(肯定有创建应用程序,否则就是上面的那种情况了)
  4、.html可正常访问,.asp可正常访问;而.aspx正常或出现:

  “/”应用程序中的服务器错误。
——————————————————————————–
  配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
  分析器错误信息: 加载配置文件时出错: 由于访问被拒绝,未能开始监视对“C:/Inetpub/wwwroot/chenfangyi.com/web.config”的更改。
  源错误:
  [没有相关的源行]
  源文件: C:/Inetpub/wwwroot/chenfangyi.com/web.config    行: 0
  ——————————————————————————–
版本信息: Microsoft .NET Framework 版本:2.0.50727.832; ASP.NET 版本:2.0.50727.832
  
  这就是我一开始出现的问题。这样则说明该站点(上级的上机目录)有应用程序,有两种可能:(1)、当前虚拟目录既没有创建应用程序也没有开放everyone目录(比如开始时我把虚拟目录架设在默认网站下,就是这个情况)。(2)、虽然有创建应用程序,但权限无法更改(比如我开始时把网上邻居里的目录设为网站或者某个目录就老出现这个情况) 。
  第一种情况很好解决,为此目录开放everyone权限并创建应用程序即可。而第二种情况暂时还无法解决。
  5、html可正常访问,.asp可正常访问;而.aspx出现:
  “/chenfangyi.com11”应用程序中的服务器错误。
——————————————————————————–
  配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
  分析器错误信息: 在应用程序级别之外使用注册为 allowDefinition=’MachineToApplication’ 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误。
  源错误:
  行 9:      </connectionStrings>
行 10:     <system.web>
行 11:         <authentication mode=”Forms”>
行 12:             <forms timeout=”60&Prime; />
行 13:         </authentication>
  源文件: C:/Inetpub/wwwroot/chenfangyi.com/web.config    行: 11
  显示其他配置错误:
  在应用程序级别之外使用注册为 allowDefinition=’MachineToApplication’ 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误。 (C:/Inetpub/wwwroot/chenfangyi.com/web.config line 14)
  ——————————————————————————–
版本信息: Microsoft .NET Framework 版本:2.0.50727.832; ASP.NET 版本:2.0.50727.832
  
  或类似的“应用服务器错误”,那说明是站点(上级的上机目录)有应用程序,但当前虚拟目录却没有创建应用程序。为此目录创建应用程序即可解决。
  6、.html可正常访问,.asp可正常访问;而.aspx正常或出现:
  “/”应用程序中的服务器错误。
——————————————————————————–
  编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。
  编译器错误信息: ASPNET: 请确保此代码文件中定义的类与“inherits”属性匹配,并且该类扩展的基类(例如 Page 或 UserControl)是正确的。
  源错误:
  行 10: using System.Web.UI.HtmlControls;
行 11:
行 12: public partial class Default : System.Web.UI.Page
行 13: {
行 14:     protected void Page_Load(object sender, EventArgs e)
  源文件: c:/Inetpub/wwwroot/chenfangyi.com/Default.aspx.cs    行: 12
  显示详细的编译器输出:
  或类似的错误,则说明IIS设置正常,只是普通的aspx页面代码错误。
  
             版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-139452-1-1.html 上篇帖子: 在windows7 IIS7下配置tomcat6 下篇帖子: IIS网站访问需要输入用户名和密码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表