阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Nginx提示:500 Internal Server Error错误

125次阅读
没有评论

共计 925 个字符,预计需要花费 3 分钟才能阅读完成。

今天发现网站无法上传资源和发布文章,通过浏览器查看服务器的返回信息

500 Internal Server Error

刚开始我以为是应用服务器或者是程序异常,检查了下各自的日志,连请求记录都无,程序代码里也没抛出过该类型的异常,所以可以从服务器或者 Nginx 中找原因了。

1、是否磁盘空间不足?

使用 df -k 查看硬盘空间是否满了。清理硬盘空间就可以解决 500 错误。nginx 如果开启了 access log,在不需要的情况下,最好关闭 access log。access log 会占用大量硬盘空间。

2、nginx 配置文件错误?

这里不是指语法错误,nginx 如果配置文件有语法错误,启动的时候就会提示。当配置 rewrite 的时候,有些规则处理不当会出现 500 错误,请仔细检查自己的 rewrite 规则。如果配置文件里有些变量设置不当,也会出现 500 错误,比如引用了一个没有值的变量。

3、如果上面的问题都不存在可能是模拟的并发数太多了,需要调整一下 nginx.conf 的并发设置数

解决方法是:
1. 打开 /etc/security/limits.conf 文件,加上两句

* soft nofile 65535 
* hard nofile 65535

2. 打开 /etc/nginx/nginx.conf,在 worker_processes 的下面增加一行

worker_rlimit_nofile 65535;

重新启动 nginx,重新载入设置

kill -9 `ps -ef | grep php | grep -v grep | awk '{print $2}'` 
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 100 -u www-data -f /usr/bin/php-cgi 
killall -HUP nginx

重启后再看 nginx 的错误日志,有没有发现 500 报错的情况了。

总结

发现问题的时候,我没去 google 或者百度,而是直接登录远程服务器排查问题,花了将近一个小时才查出问题解决问题,浪费不少时间,这让我想起一句很经典的话:程序员之所以犯错误,不是因为他们不懂,而是因为他们自以为什么都懂。

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-12/138385.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计925字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中