Maison  >  Article  >  développement back-end  >  Comment changer le délai d'attente en php

Comment changer le délai d'attente en php

PHPz
PHPzoriginal
2023-04-03 15:14:501614parcourir

Avec le développement commercial et l'augmentation du trafic sur les sites Web, nous devons souvent exécuter des scripts PHP qui prennent beaucoup de temps. Cependant, le délai d'attente par défaut de PHP n'est que de 30 secondes, ce qui est loin de répondre aux besoins de l'entreprise. Afin de résoudre ce problème, nous devons modifier le délai d'attente de PHP.

Voici quelques façons de modifier le délai d'attente PHP :

Modifier php.ini

C'est la manière la plus courante, en modifiant le paramètre max_execution_time dans le fichier php.ini, vous pouvez modifier le délai d'attente PHP. Recherchez le contenu suivant dans le fichier php.ini :

; Maximum execution time of each script, in seconds
; http://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 30

Modifiez le paramètre max_execution_time sur une valeur supérieure à 30 secondes.

Il est à noter que si la modification du fichier php.ini ne fonctionne pas, vous devez vérifier quel fichier php.ini est actuellement utilisé par PHP. Ceci peut être visualisé dans le code PHP en utilisant la fonction phpinfo().

Utilisez set_time_limit() dans le code

La fonction set_time_limit() est une fonction intégrée en PHP qui peut être utilisée pour modifier la durée maximale d'exécution du script. Par exemple, ajoutez le code suivant au début du code :

set_time_limit(600);

Le temps d'exécution maximum du script PHP sera fixé à 600 secondes, soit 10 minutes.

Il est à noter que si le paramètre est passé à 0, cela signifie que le délai d'exécution est annulé et que le script peut continuer à s'exécuter.

Défini dans Apache

Si PHP s'exécute en tant que module Apache, vous pouvez modifier le délai d'attente PHP en modifiant php_value dans le fichier .htaccess.

Ajoutez le code suivant dans le fichier .htaccess :

php_value max_execution_time 600

À ce stade, le temps d'exécution maximum de PHP sera fixé à 600 secondes, soit 10 minutes.

Défini dans Nginx ou FastCGI

Si vous utilisez Nginx ou FastCGI, vous pouvez ajouter le code suivant dans le fichier de configuration :

fastcgi_read_timeout 600;

A ce moment, le temps d'exécution maximum de PHP sera fixé à 600 secondes, ce qui est 10 minutes.

Défini dans PHP-FPM

Si vous utilisez PHP-FPM, vous pouvez définir le délai d'attente PHP en modifiant le fichier php-fpm.conf ou www.conf. Prenons l'exemple du fichier php-fpm.conf ici :

Trouvez le contenu suivant :

; Process timeouts in seconds. Negative values disable timeouts.
; Default Value:
;     process.timeout = 0s
process.timeout = 30s

Changez le paramètre process.timeout sur une valeur supérieure à 30 secondes.

Résumé

Ce qui précède sont les méthodes pour modifier le délai d'attente PHP. Selon différents environnements et utilisations, choisissez différentes méthodes pour modifier le délai d'attente PHP. De plus, nous devons également prêter attention à l'ajustement de paramètres tels que la limite de mémoire PHP (memory_limit) et le temps de réponse aux requêtes du serveur Apache ou Nginx pour améliorer les performances et la stabilité du site Web.

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:
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