当你访问一个网站的时候可能出现“您未被授权查看该页”。这个错误属于HTTP错误的401错误码,我们知道4XX错误是属于客户端错误状态码,总体意思是Unauthorized(未授权)错误,所以我们要从客户端分析问题。当然,这个401错误还分为三个小类别错误。
401错误是这些
(1)HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。
这个错误一般是由于用户匿名访问使用的账号是IUSR_机器名被禁用,造成用户无法访问。 解决办法是将IUSR_机器名账号启用,启用方法就不详说了。
(2)HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。
解决方法是要根据需要配置不同的身份认证(我们知道一般为匿名身份认证,这是大多数站点使用的认证方法)。这个认证选项设置在IIS的属性->安全性->身份验证和访问控制下配置。
(3)HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。
这个是由于Web客户端的用户隶属于user组,因此,如果该文件的NTFS权限不足(例如没有读权限),则会导致页面无法访问。 具体的解决办法是进入该文件夹的安全选项卡,配置user的权限,至少要给读权限。
不同的服务器环境下,同样的权限配置,在面对asp网站、PHP网站、ASP.NET网站时出现的错误也是不一样的。
401错误是怎么产生的
任何客户端 ( 例如您的浏览器或我们的 CheckUpDown 机器人 ) ,都需要通过以下循环:
从您站点的 IP 名称 ( 即您站点的网址-URL, 不带起始的 ‘http://’) 获得一个 IP 地址。这个对应关系 ( 即由 IP 名称向 IP 地址转换的对应关系 ) 由域名服务器 (DNSs) 提供。
打开一个 IP 套接字 (socket) 连接到该 IP 地址。
通过该套接字写 HTTP 数据流。
从您的Web服务器接受响应的 HTTP 数据流。该数据流包括状态编码, 其值取决于 HTTP 协议 。 解析该数据流得到 状态编码和其他有用信息。
401错误在以上所述的最后一步生成,即当客户端收到 HTTP 状态编码并识别其为 ‘401‘ 时。