Maison  >  Article  >  base de données  >  Pourquoi ini_set(\'max_execution_time\') et set_time_limit() ne parviennent-ils pas à modifier la configuration sur un serveur distant ?

Pourquoi ini_set(\'max_execution_time\') et set_time_limit() ne parviennent-ils pas à modifier la configuration sur un serveur distant ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-28 20:30:02898parcourir

Why do ini_set('max_execution_time') and set_time_limit() fail to change configuration on a remote server?

ini_set() et set_time_limit() Ignorer les modifications de configuration sur le serveur distant

Lors de l'utilisation de ini_set('max_execution_time', 50) ou set_time_limit( 50) localement, la fonction ini_get('max_execution_time') renvoie 50 comme prévu. Cependant, sur un autre serveur, il fait écho à la valeur par défaut 30, sans tenir compte du paramètre spécifié.

Raison :

L'impossibilité de modifier la configuration max_execution_time avec ini_set() et set_time_limit() découle de la présence du mode sans échec. Le mode sans échec est une configuration PHP qui restreint certaines opérations, notamment la modification des paramètres d'exécution comme max_execution_time via ini_set().

Solution de contournement :

Pour contourner ce problème, vous disposez de deux options :

  • Désactiver le mode sans échec dans la configuration PHP (non recommandé pour des raisons de sécurité).
  • Modifier le paramètre max_execution_time directement dans le fichier de configuration php.ini.

Remarque supplémentaire :

La même restriction s'applique à la fonction set_time_limit(), comme indiqué dans le manuel PHP :

"Cette fonction n'a aucun effet lorsque PHP fonctionne en mode sans échec. Il n'y a pas d'autre solution que de désactiver le mode sans échec ou de modifier la limite de temps dans le php.ini."

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