Maison > développement back-end > Problème PHP > Explication détaillée de la façon de définir le délai d'expiration de php.ini

Explication détaillée de la façon de définir le délai d'expiration de php.ini

PHPz
Libérer: 2023-04-11 14:01:08
original
1372 Les gens l'ont consulté

在使用 PHP 执行长时间运行的脚本时,我们经常遇到脚本运行时间过长的问题。当脚本运行时间超过预定的时间限制时,PHP 会自动终止脚本的执行,并返回错误信息。这个时间限制就是 PHP 的超时时间(timeout)。默认情况下,PHP 的超时时间是 30 秒。对于一些需要大量计算或者处理的脚本来说,这个时限可能远远不够,需要手动设置更长的超时时间。

下面介绍在 php.ini 文件中设置超时时间的方法。

  1. 找到 php.ini 文件的位置

在 Linux 系统中,可以使用如下命令查找 php.ini 文件的位置:

php -i | grep php.ini
Copier après la connexion

命令执行后会显示 php.ini 文件的路径,例如:

Configuration File (php.ini) Path => /usr/local/php7/lib
Loaded Configuration File => /usr/local/php7/lib/php.ini
Copier après la connexion

在 Windows 系统中,可以使用搜索工具查找 php.ini 文件。

  1. 打开 php.ini 文件

使用文本编辑器打开 php.ini 文件。注意:php.ini 文件通常是系统级别的配置文件,需要管理员权限。

  1. 找到并修改以下两个配置项
; Maximum amount of time each script may spend parsing request data.
; Default: 60
; Change: 600
max_input_time = 600

; Maximum execution time of each script, in seconds
; Default: 30
; Change: 300
max_execution_time = 300
Copier après la connexion

一般情况下,修改以上两个配置项即可将 PHP 超时时间设置为 10 分钟。其中,

  • max_input_time 指 PHP 脚本最大的运行时间,以秒为单位。在这个时间内,脚本的输入数据必须被解析完毕。
  • max_execution_time 指 PHP 脚本的最大执行时间,以秒为单位。在这个时间内,脚本必须执行完毕,否则 PHP 引擎将终止脚本的执行。

需要注意的是,max_execution_time 的设置不能超过 PHP-FPM、Web 服务器、操作系统等其他组件的限制。如果这些组件的限制时间更短,那么超时时间也将被限制在更短的时间内。

  1. 保存并重新启动 PHP

修改完 php.ini 文件后,保存并重启 PHP。

在 Linux 系统中可以使用命令:

sudo systemctl restart php-fpm
Copier après la connexion

在 Windows 系统中可以在命令行中输入:

iisreset
Copier après la connexion

或者,在服务管理器中重启 IIS 服务。

经过以上操作,我们就可以将 PHP 的超时时间设置为我们需要的时间了。当然,设置太长的超时时间也会对服务器的性能带来一定压力,需要根据实际情况和需求进行合理设置。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal