这两天在Service 03 的iis 6.0 里面配置一个aspx 的网站 ,总是遇到一个问题 401.2 无权限访问,于是去百度了一下好多的方法,基本上是关于设置匿名用户,打开IUSER用户等方法,于是我也跟着去试了一个,结果 很悲剧的,那些方法都无效,欲哭无泪啊。后来在无意中,看到一个解决方法,就是更改配置web.config的配置就行了,抱着最后的一根稻草,我也试了一下,没想到还真的可以,下面我把配置贴出来
<system.web> <authorization> <!-- <deny users="?" />--> <allow users="*"/> </authorization> </system.web>
后来百度查了一下这两句代码的意思:
deny 是拒绝什么样的用户访问
allow 是允许什么样的用户访问
?:匿名用户
*:所有用户
我之前的配置上面,都是用<deny users="?"> 意思就是拒绝匿名用户访问,结果当然是没有办法访问了!!!
下面,我贴出一些我在百度上查到的关于iis 6.0 匿名访问的方法
原因:关闭了匿名身份验证
解决方案:
在开始菜单中输入运行->inetmgr,打开站点属性->目录安全性->身份验证和访问控制->选中“启用匿名访问”,输入用户名,或者点击“浏览”选择合法的用户,并两次输入密码后确定。
原因:IE7 问题
解决方案:
在“Internet属性-安全-本地Intraet-站点-高级”(IE7)中将“localhost”添加到信任站点中,但这个方法有个问题,就是你只能在本地上使用,除非你让每个用用户都执行下这个方法,所以不推荐,治标不治本
原因:IUSR_机器名账号 问题
解决方案:
(1)查看IIS管理器中站点安全设置的匿名帐户是否被禁用,如果是,请尝试用以下办法启用:
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。如果还没有解决,请继续下一步。
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。如果还没有解决,请继续下一步。
(2)查看本地安全策略中,IIS管理器中站点的默认匿名访问帐号或者其所属的组是否有通过网络访问服务器的权限,如果没有尝试用以下步骤赋予权限:
开始->程序->管理工具->本地安全策略->安全策略->本地策略->用户权限分配,双击“从网络访问此计算机”,添加IIS默认用户或者其所属的组。
注意:一般自定义 IIS默认匿名访问帐号都属于组,为了安全,没有特殊需要,请遵循此规则。
原因:关闭了匿名身份验证
解决方案:
运行inetmgr,打开站点属性->目录安全性->身份验证和访问控制->选中“启用匿名访问”,输入用户名,或者点击“浏览”选择合法的用户,并两次输入密码后确定。
解决方案:
运行inetmgr,打开站点属性->目录安全性->身份验证和访问控制->选中“启用匿名访问”,输入用户名,或者点击“浏览”选择合法的用户,并两次输入密码后确定。
原因:网站所在文件用户组没有访问权限
解决方案:
打开网站 所在文件夹,右键属性,安全,添加用户,选择IUSER_机器名 ,设置权限