服务器常见错误代码500、501、502、503、504、505区别

500 Internal Server Error (检查你的代码吧)

顾名思义500错误一般是服务器遇到意外情况,而无法完成请求;
一般解决思路:查看nginx、php的错误日志文件
500 错误的可能原因:

  • a、编程语言语法错误,脚本错误
  • b、并发高时,因为系统资源限制,不能打开过多的文件描述符(fd)

502:简单点说,处理当前 nginx 请求的 php(进程OR服务器) 已经挂掉了;
nginx 在这里充当的是反向代理服务器的角色,是把http协议请求转成 fastcgi 协议的请求,通过 fastcgi_pass 指令传递给 php-fpm 进程,当nginx执行请求时,却收到了上游服务器( php-fpm)的无效响应,响应内容是nginx无法理解的,就会返回502 bad gateway;可以尝试刷新缓存(ob_flush);

503:简单点说,用户请求数(并发)过大;
当前请求用户量太多,服务器为了保护自己不挂掉,机智的拒绝了某些用户的访问,这些用户就会收到503这个错误(部分用户可正常访问);
因为一个 http 请求会占用一个 php-fpm 进程,瞬时请求量过大时,没有足够的 php-fpm 进程来处理请求,就会返回 503 service unavailable;
常见原因:

1、站点遭到攻击,在超过限制时报503错误,待攻击停止就可以恢复了;
2、站点规模较大,并发请求过多,这种建议修改优化程序或需要升级更高类型主机;
3、程序有错误,在短时间内产生多次工作进程崩溃,会因IIS7的快速故障防护功能而关闭程序池;
4、站点提供下载,当带宽超过限制时会报错,需停止下载功能,或者升级主机解决。

504:简单点说,请求超时,页面等了半天也没打开,返回504
一般而言,504很少会遇到,通常是由 nginx 配置不当引起;
也可能是脚本逻辑没考虑特例情况,比如 SQL 执行时间太久;
专业点儿说就是,单个 php-fpm 进程阻塞超过 nginx 的时间阈值,会返回 504 gateway timeout,例如,PHP脚本执行时间太长,此时可查看是否某些代码逻辑产生了阻塞;
比如你的 nginx 超时时间设为300,但你的请求响应时间为500,超过了300的阈值,就会看到504;

以下两种状态极少遇到

501  
服务器不具备完成请求的功能。例如,服务器无法识别请求方法时可能会返回此代码;
505  
服务器不支持请求中所用的 HTTP 协议版本(HTTP 版本不受支持);



作者:后厂村村长
链接:https://www.jianshu.com/p/84b2167b41e4
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 网页数据库连接报错时,报错信息通常会包含一个数字代码,这个代码表示连接错误的具体原因。常见的数据库连接错误代码包括: 1. 404 - 页面未找到 2. 500 - 服务器内部错误 3. 503 - 服务不可用 4. 1064 - SQL语法错误 5. 1045 - 认证失败 6. 2002 - 连接超时 7. 1049 - 未知数据库 8. 1153 - 超出资源限制 9. 1215 - 外键约束错误 具体的错误代码需要根据具体情况来分析。可以查看服务器端的错误日志或者调试代码来找到错误的具体原因。 ### 回答2: 网页数据库连接报错会报一些常见的数字错误代码,例如: 1. 404错误:表示在服务器上未找到请求的网页。 2. 500错误:表示服务器内部错误。 3. 403错误:表示禁止访问特定网页或资源。 4. 502错误:表示网关错误,通常是由于代理服务器或网关无法从上游服务器接收到有效响应引起的。 5. 503错误:表示服务不可用,通常是由于服务器过载或暂时维护而引起的。 6. 400错误:表示客户端提交的请求无效。 7. 401错误:表示未经授权,需要身份验证才能访问。 8. 408错误:表示请求超时,服务器在规定时间内未能完成请求的处理。 以上只是一些常见错误代码,实际上还有很多其他数字表示的错误类型,具体错误代码需要结合具体的网页数据库连接错误信息进行分析。在开发和维护网页过程中,通过查看报错的数字代码可以更好地定位和解决问题。 ### 回答3: 网页数据库连接报错时,常见的数字报错代码有以下几种: 1. 404错误:表示网页无法找到。这通常是因为链接指向的网页不存在或已被删除。 2. 500错误:表示服务器内部错误。这种错误通常是由数据库连接配置问题、服务器配置问题或者服务器内部错误等引起的。 3. 504错误:表示服务器超时错误。这意味着服务器无法及时响应客户端请求,可能是由于数据库查询较慢、网络连接问题或者服务器负载过高等原因。 4. 403错误:表示访问被拒绝。这可能是因为权限设置问题,客户端没有足够的权限访问数据库或者相关资源。 5. 400错误:表示请求无效。这通常是由于客户端发送的请求格式有误或者缺少必要的参数。 6. 502错误:表示服务器网关错误。这种错误通常是由于服务器无法正常连接到数据库,可能是由于数据库服务未启动、数据库连接配置错误或者数据库宕机等原因。 当网页数据库连接报错时,根据具体的错误代码,可以定位和解决问题。常见的解决方法包括检查数据库连接配置、确认服务器和数据库状态、检查网络连接、修复权限设置等。同时,开发人员可以通过查看服务器日志和数据库日志等来获取更详细的错误信息,并进行排查和处理。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值