Modes de fonctionnement de l'interpréteur PHP

Comparaison des modes d'exécution PHP : mod_php, CGI, FastCGI et LSPHP.

PHP comme module Apache (mod_php)

Dans ce mode, mod_php est chargé directement dans Apache et inclus dans chaque processus Apache. Convient particulièrement aux petits sites à faible trafic.

Avantages :

  • exécution des scripts la plus rapide par rapport aux autres modes ;
  • configuration simple — le serveur traite les scripts de manière autonome ;
  • un seul fichier de configuration php.ini s'applique à tous les scripts ;
  • les paramètres PHP peuvent être définis dans la configuration Apache ou via .htaccess.

Inconvénients :

  • tous les scripts s'exécutent sous le compte utilisateur du serveur web, les répertoires nécessitant un accès en écriture doivent donc être accessibles en écriture par tous ;
  • lorsque des scripts lancent des processus externes (par ex. des envois d'e-mails), il est impossible d'identifier quel utilisateur les a déclenchés ;
  • le traitement des scripts génère une charge supplémentaire sur Apache et peut ralentir la livraison des fichiers statiques ;
  • des erreurs dans les scripts peuvent faire tomber l'ensemble du serveur web.

PHP comme CGI

Dans ce mode, un processus php-cgi distinct est lancé pour chaque requête. Fonctionne bien pour les sites majoritairement statiques, car l'interpréteur n'est chargé qu'en cas de besoin — ce qui économise de la RAM. En contrepartie, l'exécution est plus lente, car un nouveau processus doit être démarré à chaque requête.

Avantages :

  • les scripts s'exécutent sous le compte utilisateur du propriétaire du domaine ;
  • PHP peut être configuré individuellement pour chaque utilisateur ;
  • consommation mémoire inférieure à celle de mod_php ;
  • les erreurs de scripts ne font pas planter le serveur web.

Inconvénients :

  • l'authentification PHP via Header() peut ne pas fonctionner correctement, car certaines variables serveur ne sont pas transmises au script PHP.

Nos produits et services

Hébergement webFonctionne sur des disques NVMe ultra-rapides. Convient aux sites de toute complexité.
Commande
VPSInfrastructure cloud flexible avec accès root complet.
Commande
Serveurs dédiésServeurs physiques pour une performance maximale.
Commande

PHP comme FastCGI

FastCGI se situe entre mod_php et CGI — il combine les points forts des deux modes et élimine le principal inconvénient de CGI. Un processus gestionnaire persistant s'exécute en mémoire, ce qui évite de démarrer un nouveau processus à chaque requête. En termes de vitesse, FastCGI est comparable à mod_php. Il convient parfaitement aux sites à fort trafic avec un flux régulier de requêtes.

Avantages :

  • les données intermédiaires sont mises en cache, les scripts ne sont donc pas réinterprétés à chaque requête — plus rapide que CGI ;
  • les scripts s'exécutent sous le compte utilisateur du propriétaire du domaine.

Inconvénients :

  • le processus php-cgi reste en mémoire après la première requête.

LSPHP

LiteSpeed PHP (LSPHP) est implémenté sous forme de module mod_lsapi pour Apache et constitue l'option d'exécution PHP la plus performante sur les serveurs sous cPanel.

Avantages :

  • traitement des scripts PHP plus rapide ;
  • absence d'erreurs 500 causées par php_flag et des directives similaires dans .htaccess — utile lors d'une migration depuis un hébergeur utilisant mod_php ;
  • consommation de ressources réduite ;
  • efficacité améliorée de l'Opcode Cache.

Installer des modules PHP

Les modules PHP s'installent via le panneau de contrôle ISPmanager, dans la section PHP.

Exécuter un script PHP depuis cron

Pour exécuter un script PHP via le planificateur cron, indiquez le chemin complet vers l'interpréteur avant le chemin du script :

/usr/bin/php-cgi /(chemin)/script.php

Le script peut se trouver dans n'importe quel répertoire, y compris ceux qui ne sont pas accessibles par FTP.

Aide

Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !

Besoin d’aide?Nos ingénieurs vous aideront gratuitement pour n’importe quelle question en quelques minutesNous contacter