当前位置导航:炫浪网>>网络学院>>编程开发>>Visual C#教程

所有HTTP 状态代码及其定义

  

  状态行包含HTTP版本、状态代码、与状态代码对应的简短说明信息。在大多数情况下,除了Content-Type之外的所有应答头都是可选的。但Content-Type是必需的,它描述的是后面文档的MIME类型。虽然大多数应答都包含一个文档,但也有一些不包含,例如对HEAD请求的应答永远不会附带文档。有许多状态代码实际上用来标识一次失败的请求,这些应答也不包含文档(或只包含一个简短的错误信息说明)。

  当用户试图通过 HTTP 访问一台正在运行 Internet 信息服务 (IIS) 的服务器上的内容时,IIS 返回一个表示该请求的状态的数字代码。状态代码可以指明具体请求是否已成功,还可以揭示请求失败的确切原因。

  1xx - 信息提示

  这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。 100 - 继续。

  101 - 切换协议。

  2xx - 成功

  这类状态代码表明服务器成功地接受了客户端请求。

  200 - 确定。客户端请求已成功。
  201 - 已创建。
  202 - 已接受。
  203 - 非权威性信息。
  204 - 无内容。
  205 - 重置内容。
  206 - 部分内容。

  3xx - 重定向

  客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。

  302 - 对象已移动。
  304 - 未修改。
  307 - 临时重定向。

  4xx - 客户端错误

  发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。

  400 - 错误的请求。
  401 - 访问被拒绝。IIS 定义了许多不同的 401 错误,它们指明更为具体的错误原因。这些具体的错误代码在浏览器中显示,但不在 IIS 日志中显示:
  401.1 - 登录失败。
  401.2 - 服务器配置导致登录失败。
  401.3 - 由于 ACL 对资源的限制而未获得授权。
  401.4 - 筛选器授权失败。
  401.5 - ISAPI/CGI 应用程序授权失败。
  401.7 – 访问被 Web 服务器上的 URL 授权策略拒绝。这个错误代码为 IIS 6.0 所专用。
  403 - 禁止访问:IIS 定义了许多不同的 403 错误,它们指明更为具体的错误原因:
  403.1 - 执行访问被禁止。
  403.2 - 读访问被禁止。
  403.3 - 写访问被禁止。
  403.4 - 要求 SSL.
  403.5 - 要求 SSL 128.
  403.6 - IP 地址被拒绝。
  403.7 - 要求客户端证书。
  403.8 - 站点访问被拒绝。
  403.9 - 用户数过多。
  403.10 - 配置无效。
  403.11 - 密码更改。
  403.12 - 拒绝访问映射表。
  403.13 - 客户端证书被吊销。
  403.14 - 拒绝目录列表。
  403.15 - 超出客户端访问许可。
  403.16 - 客户端证书不受信任或无效。
  403.17 - 客户端证书已过期或尚未生效。
  403.18 - 在当前的应用程序池中不能执行所请求的 URL.这个错误代码为 IIS 6.0 所专用。
  403.19 - 不能为这个应用程序池中的客户端执行 CGI.这个错误代码为 IIS 6.0 所专用。
  403.20 - Passport 登录失败。这个错误代码为 IIS 6.0 所专用。
  404 - 未找到。
  404.0 -(无) – 没有找到文件或目录。
  404.1 - 无法在所请求的端口上访问 Web 站点。
  404.2 - Web 服务扩展锁定策略阻止本请求。
  404.3 - MIME 映射策略阻止本请求。
  405 - 用来访问本页面的 HTTP 谓词不被允许(方法不被允许)
  406 - 客户端浏览器不接受所请求页面的 MIME 类型。
  407 - 要求进行代理身份验证。
  412 - 前提条件失败。
  413 – 请求实体太大。
  414 - 请求 URI 太长。
  415 – 不支持的媒体类型。
  416 – 所请求的范围无法满足。
  417 – 执行失败。
  423 – 锁定的错误。

  5xx - 服务器错误

  服务器由于遇到错误而不能完成该请求。

  500 - 内部服务器错误。
  500.12 - 应用程序正忙于在 Web 服务器上重新启动。
  500.13 - Web 服务器太忙。
  500.15 - 不允许直接请求 Global.asa.
  500.16 – UNC 授权凭据不正确。这个错误代码为 IIS 6.0 所专用。
  500.18 – URL 授权存储不能打开。这个错误代码为 IIS 6.0 所专用。
  500.100 - 内部 ASP 错误。
  501 - 页眉值指定了未实现的配置。
  502 - Web 服务器用作网关或代理服务器时收到了无效响应。502.1 - CGI 应用程序超时。
  502.2 - CGI 应用程序出错。
  503 - 服务不可用。这个错误代码为 IIS 6.0 所专用。
  504 - 网关超时。
  505 - HTTP 版本不受支持。

  常见的 HTTP 状态代码及其原因

  200 - 成功。 此状态代码表示 IIS 已成功处理请求。
  304 - 未修改。 客户端请求的文档已在其缓存中,文档自缓存以来尚未被修改过。客户端使用文档的缓存副本,而不从服务器下载文档。
  401.1 - 登录失败。 登录尝试不成功,可能因为用户名或密码无效。
  401.3 - 由于 ACL 对资源的限制而未获得授权。 这表示存在 NTFS 权限问题。即使您对试图访问的文件具备相应的权限,也可能发生此错误。
  403.1 - 执行访问被禁止。

  下面是导致此错误信息的两个常见原因:

  您没有足够的执行许可。例如,如果试图访问的 ASP 页所在的目录权限设为“无”,或者,试图执行的 CGI 脚本所在的目录权限为“只允许脚本”,将出现此错误信息。若要修改执行权限,请在 Microsoft 管理控制台 (MMC) 中右击目录,然后依次单击属性和目录选项卡,确保为试图访问的内容设置适当的执行权限。
  您没有将试图执行的文件类型的脚本映射设置为识别所使用的谓词(例如,GET 或 POST)。若要验证这一点,请在 MMC 中右击目录,依次单击属性、目录选项卡和配置,然后验证相应文件类型的脚本映射是否设置为允许所使用的谓词。
  403.2 - 读访问被禁止。验证是否已将 IIS 设置为允许对目录进行读访问。另外,如果您正在使用默认文件,请验证该文件是否存在。
  403.3 - 写访问被禁止。 验证 IIS 权限和 NTFS 权限是否已设置以便向该目录授予写访问权。
  403.4 - 要求 SSL.禁用要求安全通道选项,或使用 HTTPS 代替 HTTP 来访问该页面。
  403.5 - 要求 SSL 128.禁用要求 128 位加密选项,或使用支持 128 位加密的浏览器以查看该页面。
  403.6 - IP 地址被拒绝。您已把您的服务器配置为拒绝访问您目前的 IP 地址。
  403.7 - 要求客户端证书。您已把您的服务器配置为要求客户端身份验证证书,但您未安装有效的客户端证书。
  403.8 - 站点访问被拒绝。您已为您用来访问服务器的域设置了域名限制。
  403.9 - 用户数过多。与该服务器连接的用户数量超过了您设置的连接限制。

  注意:Microsoft Windows 2000 Professional 和 Microsoft Windows XP Professional 自动设置了在 IIS 上最多 10 个连接的限制。您无法更改此限制。

  403.12 - 拒绝访问映射表。 您要访问的页面要求提供客户端证书,但映射到您的客户端证书的用户 ID 已被拒绝访问该文件。
  404 - 未找到。 发生此错误的原因是您试图访问的文件已被移走或删除。如果在安装 URLScan 工具之后,试图访问带有有限扩展名的文件,也会发生此错误。这种情况下,该请求的日志文件项中将出现“Rejected by URLScan”的字样。
  500 - 内部服务器错误。 很多服务器端的错误都可能导致该错误信息。事件查看器日志包含更详细的错误原因。此外,您可以禁用友好 HTTP 错误信息以便收到详细的错误说明。
  500.12 - 应用程序正在重新启动。 这表示您在 IIS 重新启动应用程序的过程中试图加载 ASP 页。刷新页面后,此信息即会消失。如果刷新页面后,此信息再次出现,可能是防病毒软件正在扫描 Global.asa 文件。
  500-100.ASP - ASP 错误。 如果试图加载的 ASP 页中含有错误代码,将出现此错误信息。若要获得更确切的错误信息,请禁用友好 HTTP 错误信息。默认情况下,只会在默认 Web 站点上启用此错误信息。
  502 - 网关错误。 如果试图运行的 CGI 脚本不返回有效的 HTTP 标头集,将出现此错误信息。

  “IIS配置401错误”完美解决方案

  “IIS配置401错误”完美解决方案(54powerman)

  1、错误号401.1

  症状:HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。

  分析:

  由于用户匿名访问使用的账号(默认是IUSR_机器名)被禁用,或者没有权限访问计算机,将造成用户无法访问。

  解决方案:

  (1)查看IIS管理器中站点安全设置的匿名帐户是否被禁用,如果是,请尝试用以下办法启用:

  控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。如果还没有解决,请继续下一步。

  (2)查看本地安全策略中,IIS管理器中站点的默认匿名访问帐号或者其所属的组是否有通过网络访问服务器的权限,如果没有尝试用以下步骤赋予权限:

  开始->程序->管理工具->本地安全策略->安全策略->本地策略->用户权限分配,双击“从网络访问此计算机”,添加IIS默认用户或者其所属的组。

  注意:一般自定义 IIS默认匿名访问帐号都属于组,为了安全,没有特殊需要,请遵循此规则。

  2、错误号401.2

  症状:HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。

  原因:关闭了匿名身份验证

  解决方案:

  运行inetmgr,打开站点属性->目录安全性->身份验证和访问控制->选中“启用匿名访问”,输入用户名,或者点击“浏览”选择合法的用户,并两次输入密码后确定。

  3、错误号:401.3

  症状:HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。

  原因:IIS匿名用户一般属于Guests组,而我们一般把存放网站的硬盘的权限只分配给administrators组,这时候按照继承原则,网站文件夹也只有administrators组的成员才能访问,导致IIS匿名用户访问该文件的NTFS权限不足,从而导致页面无法访问。

  解决方案:

  给IIS匿名用户访问网站文件夹的权限,方法:进入该文件夹的安全选项,添加IIS匿名用户,并赋予相应权限,一般是读、写。

相关内容
赞助商链接