(Linux + Nginx+ MySQL+ PHP+ Apache)post 出现500错误

查看:100
本文介绍了(Linux + Nginx+ MySQL+ PHP+ Apache)post 出现500错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

服务器安装使用的是oneinstack一键安装包,lnmpa(Linux + Nginx+ MySQL+ PHP+ Apache)https://oneinstack.com/

程序运行的是discuz3.2, http://www.liuxuesheng8.com/

在发表新帖子,提交时,出现错误,提示:

This page isn’t working

bbs.liuxuesheng8.com is currently unable to handle this request.
HTTP ERROR 500

但是内容确实已经写到数据库里,只是卡在上面图片所示页面,重新打开网站页面,发表的新帖子已经提交,很是奇怪。
然后查看服务器日志,只是在access_log里面出现,post 500错误,而在apache里面和openresty的日志里面都没有相应的错误日志,这种情况下在哪里查找500原因呢???

 - - [29/Apr/2017:18:27:03 +0800] "POST /forum.php?mod=post&action=newthread&fid=70&extra=&topicsubmit=yes HTTP/1.0" 500 -

解决方案

显然你这个错误是跟nginx相关的。

nginx出现500,一般有以下几种情况:

  1. 硬盘空间满了(df -lh查看磁盘占用情况,nginx所在目录已占用100%)。nginx如果开启了access log,在不需要的情况下,最好关闭access log。access log会占用大量硬盘空间。

  2. nginx配置文件错误
    配置rewrite的时候,有些规则处理不当会出现500错误,检查下自己的rewrite规则。如果配置文件里有些变量设置不当,也会出现500错误,比如引用了一个没有值的变量。

  3. 并发问题,服务器扛不住
    文件打开句柄太小,在做服务器并发测试的时候,因为服务器压力大,我们经常看到一部分请求是500,那么原因就是nginx可以使用的文件句柄太小,每个请求都会占用一个句柄。

这篇关于(Linux + Nginx+ MySQL+ PHP+ Apache)post 出现500错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆