解决Ubuntu PHP日志中超时问题可从配置、代码、服务器优化三方面入手,具体方法如下:
调整PHP配置
php.ini
文件,增加max_execution_time
(脚本最大执行时间,默认30秒)和default_socket_timeout
(socket连接超时时间,默认60秒)。/etc/php/{version}/fpm/pool.d/www.conf
,设置request_terminate_timeout
(请求终止超时时间,默认0无限制)和fastcgi.read_timeout
。修改后需重启PHP-FPM服务:sudo systemctl restart php{version}-fpm
。优化代码逻辑
调整Web服务器配置
fastcgi_read_timeout
和fastcgi_send_timeout
(默认60秒),确保与PHP超时设置一致。sudo systemctl restart nginx
。监控与日志分析
php.ini
或PHP-FPM配置中设置slowlog
路径和request_slowlog_timeout
),定位超时代码段。注意:设置超时时间需结合业务需求,避免过长占用服务器资源。优先通过代码优化减少超时,配置调整仅为临时解决方案。