APACHE_RESET_TIMEOUT |
Réinitialise le dépassement de délai d'Apache |
---|---|
PHP 5.1.0+ |
Syntaxe
function apache_reset_timeout() |
Retour
Valeur | Description |
---|---|
TRUE | Cette valeur permet d'indiquer que l'opération à réussi. |
FALSE | Cette valeur permet d'indiquer qu'un problème est survenu. |
Description
Cette fonction permet d'effectuer la réinitialisation du temporisateur d'Apache.
Remarques
- Réinitialise les délais d'expiration d'Apache : La fonction apache_reset_timeout permet de réinitialiser les délais d'expiration pour la requête en cours. Cela affecte les délais d'attente utilisés par Apache pour la lecture des entêtes HTTP et la réception des données de la requête. Si un script prend du temps pour exécuter une opération longue, cette fonction peut empêcher la demande de se terminer prématurément à cause des délais d'attente par défaut.
- Réinitialisation des délais d'attente pour une requête longue : Elle est particulièrement utile dans des scénarios où un script PHP traite des opérations longues comme le téléchargement de fichiers ou des calculs intensifs, où il est nécessaire d'empêcher Apache de couper la connexion à cause d'un délai d'attente trop court. Cela permet à la requête de continuer sans interruption, même si elle prend plus de temps que la limite définie par défaut.
- Limitation à l'environnement Apache : apache_reset_timeout fonctionne uniquement dans un serveur Web Apache lorsqu'il est exécuté avec PHP en tant que module (mod_php). Elle n'est pas disponible dans d'autres environnements comme PHP-FPM ou Nginx, car cette fonction interagit directement avec les paramètres d'Apache, ce qui la rend spécifique à cet environnement.
- Comportement non standard dans d'autres serveurs Web : Cette fonction est unique à Apache et n'a pas d'équivalent direct dans les autres serveurs Web. Par exemple, si vous utilisez PHP avec Nginx ou en mode CGI, vous devrez recourir à d'autres moyens pour gérer les délais d'attente, car apache_reset_timeout n'est pas supportée dans ces configurations.
- Aucune garantie d'efficacité si mal utilisée : Si apache_reset_timeout est appelée de manière excessive ou mal utilisée dans des environnements où les requêtes sont déjà bien gérées par des dépassements de délai définis au niveau du serveur, elle peut ne pas avoir l'effet escompté. Une configuration incorrecte peut mener à une utilisation inefficace des ressources serveur, comme maintenir des connexions ouvertes pendant trop longtemps, ce qui peut impacter les performances du serveur.
- Nécessite des privilèges d'exécution suffisants : La fonction nécessite des privilèges d'exécution suffisants sur le serveur Apache. Si un script PHP fonctionne dans un environnement où les privilèges sont restreints, ou si Apache n'a pas été configuré pour permettre l'ajustement de ces paramètres, l'appel à apache_reset_timeout peut échouer ou être ignoré.
- Réinitialisation du timeout pour des processus longs : La fonction permet de prolonger le délai d'attente pour des processus nécessitant plus de temps, comme des importations massives de données ou des opérations de calcul intensives. C'est particulièrement utile dans des systèmes où la durée des requêtes peut varier considérablement, en fonction de la charge serveur ou de l'ampleur des données traitées.
- Comportement dans les environnements multi-processus : Lorsque PHP est exécuté dans un environnement multi-processus avec Apache, il est important de noter que apache_reset_timeout affecte uniquement le processus de la requête en cours. Si plusieurs requêtes sont traitées en parallèle, chaque processus peut avoir son propre délai d'attente pouvant être réinitialisé indépendamment, ce qui nécessite une gestion précise des requêtes longues.
Voir également
Serveur ou service logiciel - Apache - Introduction
Index des extensions de fichier - Format de fichier : httpd.conf
Index des extensions de fichier - Format de fichier : .htaccess
Index des extensions de fichier - Format de fichier : .htpasswd
Dernière mise à jour : Dimanche, le 22 mars 2015