nginx 504 timeout问题的解决,drupal nginx 504错误
浏览量: 次 发布日期:2023-08-11 21:12:24
nginx 504 timeout问题的解决,drupal nginx 504错误
前一阵在笔记本电脑上试验lnmp 并打算作为以后的主要的开发和运行环境,用一个drupal架构的项目做实验,
兆柏数据恢复公司期间发现很多问题,但都能很容易的修复解决,可是在导入中文翻译的时候出现了504 connect timeout
下面是尝试解决的经过:
首先重试几次,判断一下这是不是个例,如果重试正常那么可能本身环境的问题不大
但是重试多次都是504 错误
下面检查 nginx 作为代理,首先检查nginx的问题,由于nginx是默认编译的,我没有做参数的设置,所以
修改fastcgi 的常见timeout 都改为300 ,并且把php-fpm.conf的timeout 也修改为300 ,php.ini中的最大执行时间
也修改为300,重新启动这些服务,再次执行 依然是504错误,查找了一些资料说可能是fastcgi buffer的大小不合适,
继续调大,执行依然是504
通过浏览器查看network ,超时是在5分钟,所以代理服务器nginx 完成了自己的服务,再次修改php-fpm.conf 启动慢执行
日志,查看也是执行到300 保错,这证明php也是按配置执行。兆柏数据恢复公司
这问题是出在哪里:
再有可能就是数据库,难道是数据库出现的问题,查看my.cnf 发现innodb 的配置都是默认关闭的,原来安装好mysql后我没有做
其他的设置,好,下面开启并修改一下mysql的配置,特别是 innodb_flush_log_at_trx_commit 这一项,对于innodb 影响很大,项目本身
不是很看重事务性,所有把这个数字修改成2,重启mysql,再次执行导入,就可以正常导入了。
兆柏数据恢复公司由此可见,导致nginx出现504的错误,不光在于后台程序,当然把数据库操作看作是后台也不是没有这样的,这里只是我解决这个问题
的一些思路和方式,回想不知道哪位前人说过的“php 大部分执行时间 都是在等待mysql返回数据 。。。”
转载请注明本文链接:http://www.simapple.com/230.html