常见状态码

常见状态码

简介
HTTP协议,即超文本传输协议是一种详细规定了浏览器和万维网(World Wide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议.
HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。
它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图
形)等。
HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型.浏览器作为HTTP客户端通过URL向
HTTP服务端(即WEB服务器)发送请求。Web服务器根据接收到的请求后,向客户端发送响应信息。
HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。

HTTP的特点
1.HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
2.HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。
3.HTTP是无状态:HTTP协议是无状态协议(Stateless Protocol):无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

HTTP状态码
HTTP协议的状态码由3位数字组成,第一个数字定义了响应的类别,共有5中类别:
1.1xx: 指示信息–表示请求已接收,继续处理
2.2xx: 成功–表示请求已被成功接收、理解、接受
3.3xx: 重定向–要完成请求必须进行更进一步的操作
4.4xx: 客户端错误–请求有语法错误或请求无法实现
5.5xx: 服务器端错误–服务器在处理请求的过程中发生了错误

常见状态码

:
200: 请求成功
301: 永久重定向。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替
302: 临时重定向。与301类似。但资源只是临时被移动。客户端应继续使用原有URI
403: 服务器理解请求客户端的请求,但是拒绝执行此请求.可能是没有权限访问或是人为设置不允许访问
404: 需要访问的文件不存在
500: 服务端代码异常,代码语法错误,连接不上数据库等
502: 代理情况下会出现,一般是后端服务器出现问题,如PHP-FPM挂掉
504: 后端服务器响应超时.如PHP-FPM的执行时间大于超时时间就会出现504

500错误常见解决方法

1、500错误指的是服务器内部错误,也就是服务器遇到意外情况,而无法履行请求。
2、500错误一般有几种情况:
(1)web脚本错误,如php语法错误,lua语法错误等;
(2)访问量大的时候,由于系统资源限制,而不能打开过多的文件。
3、一般分析思路:
( 1)查看nginx error log ,查看php error log
(2)如果是too many open files,修改nginx的worker_rlimit_nofile(65535最大值)参数,使用ulimit查看系统打开文件限制,修改/etc/security/limits.conf
vi /etc/security/limits.conf 添加

        *  soft  nofile  65536
        *  hard  nofile  65536

(3)如果是脚本的问题,则需要修复脚本错误,并优化代码
(4)各种优化都做好,还是出现too many open files,那就要考虑做负载均衡,把流量分散到不同服务器上去了

解决502,504错误

  • 1、使用nginx代理,而后端服务器发生故障;或者php-cgi进程数不够用;php执行时间长,或者是php-cgi进程死掉;已经fastCGI使用情况等都会导致502、504.
  • 2、502 是指请求的php-fpm已经执行,但是由于某种原因而没有执行完毕,最终导致php-fpm进程终止。
    一般来说,与php-fpm.conf的设置有关,也与php的执行程序性能有关,网站的访问量大,而php-cgi的进程数偏少.针对这种情况的502错误,只需增加php-cgi的进程数.(PHP
    Tomcat 故障)
    具体就是修改/usr/local/php/etc/php-fpm.conf文件,将其中的max_children值适当增加.
    这个数据要依据你的VPS或独立服务器的配置进行设置.一般一个php-cgi进程占20M内存,你可以自己计算下,适量增多.

/usr/local/php/sbin/php-fpm restart 然后重启一下.

  • 3、504 表示超时,也就是客户端所发出的请求没有到达网关,请求没有得到可以执行的php-fpm

解决503错误

503 Service Temporarily Unavailable错误
单个ip并发设置过小会导致503报错
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值