Maison > développement back-end > Problème PHP > Que dois-je faire si le fichier php nginx ne prend pas de temps d'exécution ?

Que dois-je faire si le fichier php nginx ne prend pas de temps d'exécution ?

PHPz
Libérer: 2023-03-29 11:44:08
original
570 Les gens l'ont consulté

Nginx est un logiciel de serveur Web hautes performances et à haute concurrence, et PHP est un langage de développement commun qui peut être utilisé par Nginx. Cependant, lorsque vous utilisez Nginx, vous pouvez rencontrer le problème de la non-exécution des fichiers PHP. Ceci est généralement dû à un délai d'exécution de PHP. Eh bien, cet article explique comment résoudre ce problème en définissant le temps d'exécution de PHP dans Nginx.

Étape 1 : Afficher les paramètres actuels de temps d'exécution PHP

Avant de commencer à ajuster le temps d'exécution PHP de Nginx, vous devez comprendre les paramètres actuels. Vous pouvez vérifier le paramètre actuel de temps d'exécution PHP en exécutant la commande suivante :

php -i | grep "max_execution_time"
Copier après la connexion

Cela affichera la limite actuelle de temps d'exécution PHP. Par défaut, il est défini sur 30 secondes.

Étape 2 : Modifier les paramètres de temps d'exécution PHP dans Nginx

Pour modifier les paramètres de temps d'exécution PHP dans Nginx, vous devez modifier le fichier de configuration du site Web Nginx. Dans cet exemple, nous supposons que le fichier de configuration de votre site Web Nginx se trouve dans le répertoire /etc/nginx/sites-available/ et qu'il est nommé example.com.

Ouvrez le fichier example.com et recherchez le code suivant :

location ~ \.php$ {
    fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
Copier après la connexion

Dans ce bloc de code, vous devez ajouter la directive fastcgi_read_timeout. Cette directive est utilisée pour définir le temps d'exécution du script PHP en secondes.

location ~ \.php$ {
    fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_read_timeout 300; # 5 minutes
}
Copier après la connexion

Dans cet exemple, nous étendons le temps d'exécution de PHP à 5 minutes.

Étape 3 : Recharger la configuration et tester Nginx

Vous avez modifié les paramètres de temps d'exécution PHP dans Nginx. Maintenant, vous devez recharger le fichier de configuration Nginx pour que les modifications prennent effet.

sudo systemctl reload nginx
Copier après la connexion

Ensuite, vous pouvez tester si le temps d'exécution de PHP a été modifié avec succès. Vous pouvez tester cela en créant un simple script PHP.

<?php
sleep(300); # sleep for 5 minutes
echo "Hello World!";
?>
Copier après la connexion

Enregistrez le code ci-dessus sous test.php et téléchargez-le dans le répertoire Web de votre serveur Nginx. Vous pouvez maintenant accéder au fichier dans votre navigateur Web et attendre 5 minutes pour voir si le résultat est correct.

Résumé

Maintenant, vous avez appris comment résoudre le problème de non-exécution du script PHP en définissant le temps d'exécution de PHP dans Nginx. En suivant les étapes de cet article pour le configurer, vous pouvez vous assurer que votre script PHP s'exécute complètement sans avoir à vous soucier des délais d'attente d'exécution 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!

source:php.cn
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