在 Ubuntu 上处理 PHP 超时问题,可以通过以下几种方法来解决:
找到你的 php.ini 文件。它的位置可能因 PHP 版本和安装方式而异,但通常可以在 /etc/php/{php_version}/cli/php.ini 或 /etc/php/{php_version}/fpm/php.ini 找到,其中 {php_version} 是你的 PHP 版本号。
使用文本编辑器打开 php.ini 文件,例如:
sudo nano /etc/php/{php_version}/cli/php.ini
找到以下设置并进行调整:
max_execution_time:此设置控制脚本的最大执行时间(以秒为单位)。将其更改为所需的值,例如 300(5 分钟):max_execution_time = 300
max_input_time:此设置控制输入数据的最大处理时间(以秒为单位)。将其更改为所需的值,例如 300(5 分钟):max_input_time = 300
保存更改并退出编辑器。然后重启 PHP 或 Web 服务器以使更改生效。
对于 PHP-FPM,重启命令如下:
sudo systemctl restart php{php_version}-fpm
set_time_limit() 函数:在你的 PHP 脚本中,可以使用 set_time_limit() 函数来设置脚本的最大执行时间。例如,要将执行时间设置为 5 分钟,可以在脚本开头添加以下代码:
set_time_limit(300);
请注意,这种方法仅适用于 CLI 脚本,而不适用于 Web 服务器上的脚本。
如果你使用的是 Apache 或 Nginx 等 Web 服务器,还可以调整其配置以允许更长的执行时间。
对于 Apache,可以在 .htaccess 文件或虚拟主机配置文件中添加以下指令:
php_value max_execution_time 300
php_value max_input_time 300
对于 Nginx,可以在 nginx.conf 或站点配置文件中的 location 块中添加以下指令:
fastcgi_param PHP_VALUE "max_execution_time=300; max_input_time=300";
保存更改并重启 Web 服务器以使更改生效。
通过以上方法,你应该能够在 Ubuntu 上处理 PHP 超时问题。如果问题仍然存在,请检查你的代码以确保没有无限循环或其他性能问题。