Personnaliser la configuration PHP

PHP est l'un des langages de script les plus populaires pour créer des pages Web dynamiques. La majorité des sites Web et applications Web d'aujourd'hui sont basés sur des scripts PHP. C'est pourquoi les administrateurs de site doivent comprendre comment ils peuvent contrôler l'exécution des scripts PHP. En général, le comportement est défini par un certain nombre de paramètres de configuration. Ces paramètres indiquent différents aspects d'exécution du script, comme la performance (p. ex. le total de mémoire qu'un script peut utiliser), la sécurité (p. ex., l'accès au système et aux services de fichiers), etc. Les administrateurs peuvent vouloir adapter ces paramètres pour un certain nombre de raisons :

  • Pour empêcher une fuite de la mémoire ou l'interruption d'un serveur à cause de scripts écrits de manière incorrecte
  • Pour protéger les données contre les scripts malveillants
  • Pour répondre aux exigences d'une certaine application Web
  • Pour tester ses propres scripts et autres
Configuration de PHP personnalisée dans Plesk

En général, les paramètres PHP sont définis par le fichier de configuration valable pour l'ensemble du serveur. Pour Linux, c'est généralement, /etc/php.ini et pour Windows, %WIN%\php.ini. Ce fichier est géré par votre hébergeur et définit la configuration PHP de tous les sites Web hébergés sur le serveur. Depuis Plesk 10.4, les paramètres PHP peuvent être adaptés via le Panneau Client et vous pouvez les ajuster pour chaque pack d'hébergement ou abonnement. De plus, vos clients (si autorisés) peuvent adapter vos paramètres PHP un par un pour chacun de leurs sites Web et sous-domaines. Regardez la hiérarchie des paramètres PHP dans le schéma ci-dessous.

Hiérarchie des paramètres PHP

Vous pouvez définir la configuration PHP personnalisée dans les propriétés d'un certain pack de services, pack d'add-ons ou abonnements (sur l'onglet Paramètres PHP). Les paramètres PHP d'un niveau supérieur agissent comme un paramètre prédéfini pour un niveau inférieur si bien que chaque niveau inférieur aura la priorité par rapport au niveau supérieur. Par exemple, vous pouvez appliquer certaines restrictions PHP dans un pack de services et offrir à vos clients le pack d'add-ons qui supprime ces restrictions. Les paramètres PHP du pack d'add-ons écrasera les paramètres définis dans le pack de services principal.
Si les clients ont les droits correspondants, ils peuvent indiquer la configuration PHP qui est unique pour chaque site Web (ou sous-domaine) dans leur abonnement.

Groupes de paramètres PHP

Pour votre convenance, tous les paramètres PHP dans Plesk sont divisés en deux groupes :

  • Paramètres de performances.
    Ces paramètres définissent comment les scripts fonctionnent avec les ressources du système. Par exemple : utilisez le paramètre memory_limit pour limiter le total de mémoire pour un script, et par conséquent, empêcher les fuites de mémoire ; ou pour empêcher les scripts d'occuper le serveur en limitant le délai maximum pendant lequel les scripts peuvent fonctionner à max_execution_time.
  • Paramètres communs.
    Ce groupe contient les autres paramètres PHP communément utilisés. les paramètres de sécurité (par ex., l'activation du mode de sécurité PHP ou le droit d'enregistrer les variables globales), les paramètres de rapport d'erreurs (par ex., la directive pour journaliser les erreurs), etc.

Important : si vous utilisez une version de Plesk pour Windows ou pour Linux dans laquelle PHP ne s'exécute pas en tant que module Apache, vos clients ne peuvent pas écraser certains périphériques PHP, peu importe les droits. Ils peuvent utiliser la fonction ini_set() dans leurs scripts pour changer les valeurs des paramètres suivants : memory_limit, max_execution_time et ceux de vos directives supplémentaires que PHP permet de définir partout (directives PHP_INI_ALL ; pour en savoir plus : http://php.net/manual/fr/ini.list.php).

Si vous ne pouvez pas trouver les paramètres particuliers parmi les paramètres communs ou de performances, contactez votre hébergeur.

Valeurs par défaut des paramètres PHP

Vous pouvez définir la valeur de chaque paramètre dans les Paramètres PHP soit en sélectionnant une valeur à partir du paramètre prédéfini, soit en tapant une valeur personnalisée ou en laissant la valeur Par défaut. Dans le dernier cas, Plesk utilise la valeur du paramètre de la configuration PHP valable pour l'ensemble du serveur. Les seules exceptions sont des packs d'add-ons : la valeur définie sur Par défaut dans l'onglet Paramètres PHP de l'add-on gardera la valeur du paramètre du pack de services principal.

Autoriser les clients à changer les paramètres PHP

Vous pouvez autoriser vos clients à écraser les paramètres PHP de l'abonnement par leur propre configuration PHP par site Web et par sous-domaine. À cette fin, vous devez utiliser les droits suivants sur l'onglet Droits d'un pack de services ou abonnement spécifique :

  • Gestion des paramètres de performances de l'hébergement.
    Avec la gestion de certains autres paramètres, ce droit accorde l'accès des clients aux paramètres PHP à partir du groupe Paramètres de performances.
  • Gestion des paramètres PHP communs.
    Si ce droit est accordé, les clients peuvent adapter les paramètres PHP à partir du groupe Paramètres communs.

Notez que vous pouvez activer ces droits pour un pack (abonnement) uniquement si le droit Gestion des paramètres d'hébergement est activé.

Même si vos clients n'ont pas le droit d'adapter les paramètres PHP, vous (en tant qu'administrateur) pouvez toujours exécuter une configuration PHP (sous-domaine) par site Web. Pour ce faire, ouvrez un certain compte d'hébergement à partir du Panneau Revendeur et allez dans l'onglet Paramètres PHP. Appliquez-y les changements des paramètres.