Http常见状态码及解决方法

常见状态码

简介

HTTP协议,即超文本传输协议(Hypertext transfer protocol)。是一种详细规定了浏览器和万维网(World ide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议.
HTTP协议是用于从WWWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。
它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图
形)等。
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: 需要访问的文件不存在
499:客户端主动端开
500: 服务端代码异常,代码语法错误,连接不上数据库等
502: 代理情况下会出现,一般是后端服务器出现问题,如PHP-FPM挂掉
504: 后端服务器响应超时.如PHP-FPM的执行时间大于超时时间就会出现504

常见状态码499

造成原因:
1.客户端主动端开,可能是由于客户端一直在刷新页面请求;
2.服务器内部相互之间的请求出现异常。如:(服务器A---->请求--->服务器B)
服务器A的请求超时时间设置为30ms,而服务器B的响应时间设置为40ms,这样的话,服务器A请求服务器B的时候,B在40ms后响应,而A在30ms的时刻就已经认为超时了,也有可能会导致499的错误

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报错

如果未使用limit模块的话,一般不会出现503的错误代码。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,837评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,551评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,417评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,448评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,524评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,554评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,569评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,316评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,766评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,077评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,240评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,912评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,560评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,176评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,425评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,114评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,114评论 2 352

推荐阅读更多精彩内容

  • HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。有些 App...
    咖啡绿茶1991阅读 2,215评论 0 7
  • 1. 网络基础TCP/IP HTTP基于TCP/IP协议族,HTTP属于它内部的一个子集。 把互联网相关联的协议集...
    yozosann阅读 3,441评论 0 20
  • 谈论WEB编程的时候常说天天在写CGI,那么CGI是什么呢?可能很多时候并不会去深究这些基础概念,再比如除了CGI...
    __七把刀__阅读 2,195评论 2 11
  • 我把手掌弓起贴在双耳边上,让嘈杂声声入耳。再把眼睛闭上,嘴巴打开,打个大大的哈欠,直到分不清是几滴的泪在眼角掉下,...
    以身妄嫌阅读 136评论 0 0
  • 以行践言学《四书》——《大学》篇27 【所谓治国必先齐其家者,其家不可教而能教人者,无之。故君子不出家而成教于国。...
    华少论剑阅读 109评论 0 0