HTTP常见状态码和调错方法

**200 Ok:**客户端请求成功

**400 Bad Request:**参数类型不匹配;

解决步骤:

1)查看前端发送的数据类型、字段名及请求方法

2)查看后端接收数据的方式是否和前端匹配

3)查看字段名是否一致

4)查看数据类型是否一致

**401 Unauthorized:**请求未经授权

401错误代码提示通常有以下三种类型:

1、HTTP错误401.1-未经授权:访问由于凭据无效被拒绝;

2、HTTP错误401.2-未经授权:访问由于服务器配置被拒绝;

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

401错误解决方法:

一、针对401.1错误的解决步骤是:

1、控制面板——管理工具——计算机管理——本地用户和组,将IUSR_机器名账号启用;

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

二、针对401.2错误的解决步骤是:

1、开始——运行,输入inetmgr,并确认运行,打开IIS(Internet信息服务管理器);

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

三、针对401.3错误的解决方法是:

1、选中401错误网站根目录文件夹,单击右键选择“共享与安全”;

2、在弹出的设置框内选择“安全”,并配置文件夹读写权限。

403 Forbidden: 禁止访问

403.1 禁止:禁止执行访问

如果从并不允许执行程序的目录中执行 CGI、ISAPI或其他执行程序就可能引起此错误。

403.2 禁止:禁止读取访问

如果没有可用的默认网页或未启用此目录的目录浏览,或者试图显示驻留在只标记为执行或脚本权限的目录中的HTML 页时就会导致此错误。

403.3 禁止:禁止写访问

如果试图上载或修改不允许写访问的目录中的文件,就会导致此问题。

403.4 禁止:需要 SSL

此错误表明试图访问的网页受安全套接字层(SSL)的保护。要查看,必须在试图访问的地址前输入https:// 以启用 SSL。

403.5 禁止:需要 SSL 128

此错误消息表明您试图访问的资源受 128位的安全套接字层(SSL)保护。要查看此资源,需要有支持此SSL 层的浏览器。

请确认浏览器是否支持 128 位 SSL安全性。如果支持,就与 Web服务器的管理员联系,并报告问题。

403.6 禁止:拒绝 IP 地址

如果服务器含有不允许访问此站点的 IP地址列表,并且您正使用的 IP地址在此列表中,就会导致此问题。

403.7 禁止:需要用户证书

当试图访问的资源要求浏览器具有服务器可识别的用户安全套接字层(SSL)证书时就会导致此问题。可用来验证您是否为此资源的合法用户。

请与 Web服务器的管理员联系以获取有效的用户证书。

403.8 禁止:禁止站点访问

如果 Web服务器不为请求提供服务,或您没有连接到此站点的权限时,就会导致此问题。

403.9 禁止访问:所连接的用户太多

如果 Web太忙并且由于流量过大而无法处理您的请求时就会导致此问题。请稍后再次连接。

403.10 禁止访问:配置无效

此时 Web 服务器的配置存在问题。

403.11 禁止访问:密码已更改

在身份验证的过程中如果用户输入错误的密码,就会导致此错误。请刷新网页并重试。

403.12 禁止访问:映射程序拒绝访问

拒绝用户证书试图访问此 Web 站点。

请与站点管理员联系以建立用户证书权限。如果必要,也可以更改用户证书并重试。

404 Not Found: 请求资源不存在。

解决方法:检查url是否正确、后端控制器的requestmapping是否正确

**500 Internal Server Error:**服务器发生不可预期的错误

解决方法:根据tomcat日志排查问题

**503 Server Unavailable:**服务器暂时不可访问

产生原因

1.网络管理员可能关闭应用程序池以执行维护。

2.当请求到达时应用程序池队列已满。

3.应用程序池标识没有使用预定义账户:网络服务,而自己配置了标识,但是配置的这个用户不属于IIS_WPG组。

4.应用程序池启用了CPU监视,并且设置了CPU利用率超过一定百分比关闭应用程序池,而开发人员写的服务端页面(.asp,.aspx)执行效率不高,会引起CPU的长时间占用,最终达到设置的百分比,从而引起应用程序池关闭

5.应用程序池的性能选项卡的请求队列限制所填的数值太小,默认为1000。

6.web.config的system.web/httpRuntime节点的appRequestQueueLimit属性设置的值太低。

7.该站点正在被攻击。对于最新型的攻击,其实是ddos的一种派生,原理在于找数千个IP,同时向服务器的apache发出请求,然后 立即断开,让apache处于等待状态,致使apache线程全部被填满,致使服务器死机。因此,为了保证大多数客户的利益,我们给每个 空间,作出了每19秒64个php请求的限制。注意,是php请求,一般的图片请求和html请求不包括在内。

8.该程序占用的php线程过多,有的程序没有进行好优化处理,一个点击即可产生数个,甚至数十个php线程。这样的话,几个点击就可以把该时段的64个php线程全部填满了。因此出现503错误。建议优化一下程序,尽量少用require(“请求”之意)等语句

解决方法

1.验证是否已为虚拟服务器配置了应用程序池。默认的应用程序池是MSSharePointPortalAppPool。请按照下列步骤来确定虚拟服务器正在使用的应用程序池。

a.单击“开始”,指向“管理工具”,然后单击“Internet信息服务(IIS)管理器”。

b.展开“ServerName”,展开“Web站点”,右键单击虚拟服务器,然后单击“属性”。

c.单击“主目录”选项卡。为虚拟服务器配置的应用程序池列在“应用程序池”框中。

d.单击“确定”。

2、验证应用程序池帐户使用的密码是否正确。IIS不会自动轮询ActiveDirectory目录服务中的密码更改。如果应用程序池帐户是一个域帐户,其密码已过期,则在为此帐户重新指定一个新密码后,您可能会收到本文“症状”部分所描述的错误信息。

3、验证应用程序池帐户是服务器上的IIS_WPG组和STS_WPG组的成员。

4、重新启动IIS以回收应用程序池。

HTTP常见状态码和调错方法

相关推荐