504错误一般是由于请求超时造成的,nginx请求9000端口 或者sock文件.然后等待进程的响应,如果进程没有响应,则nginx 报504错误.
在lnmp环境下,php一般是独立进程存在的,一般占用9000端口,当我们访问一个主机的80端口的时候(nginx),nginx一般通过9000端口
php-fpm来执行php文件,php然后执行一些mysql的工作,所以报了504错误,先检查是不是静态页的问题,所以先让nginx执行一个静态文件,但是没有问题,随后,对mysql进行慢查询检查,发现也没有可疑的查询语句,然后对mysql进行错误的表进行查询,发现同样没有可疑的.最后排查php-fpm是不是php文件执行的其他的操作,导致的php-fpm一直在停留着,没有多余的php-fpm来响应请求,而且内存也会被耗干。
网友评论