Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
php [Le 26/11/2018, 15:29]
krodelabestiole [Modules]
php [Le 20/07/2019, 14:41]
81.48.52.31 [Conflits potentiels entre plusieurs versions de PHP]
Ligne 103: Ligne 103:
 Vous pouvez lister les modules installés sur votre système grâce à la commande Vous pouvez lister les modules installés sur votre système grâce à la commande
 <​code>​php -m</​code>​ <​code>​php -m</​code>​
-Attention cependant au fait que les modules PHP activés en ligne de commande et via votre serveur HTTP ne sont pas nécessairement les mêmes. La fonction PHP //​[[http://​php.net/​manual/​fr/​function.phpinfo.php|phpinfo()]]//​ vous montrera les modules activés sur votre serveur web. 
  
 +Attention cependant au fait que les modules PHP activés en ligne de commande et via votre serveur HTTP ne sont pas nécessairement les mêmes. La fonction PHP //​[[#​phpinfo|phpinfo()]]//​ vous montrera les modules activés sur votre serveur web.
 +
 +
 +==== Activer / désactiver les modules ====
 +
 +Les modules sont en principe activés automatiquement lors de l'​installation des paquets correspondants. Cependant au fur et à mesure des changements de configuration on peut se retrouver avec des modules installés mais pas activés.
 +
 +On peut activer / désactiver un module respectivement avec les commandes ''​phpenmod''​ et ''​phpdismod''​.\\ ​
 +Par exemple :
 +<​code>​sudo phpenmod mbstring</​code>​
 +Par défaut la modification s'​applique pour toutes les versions de PHP installées et toutes les SAPI utilisées (CLI, Apache, FPM, etc.)
 ===== Configuration ===== ===== Configuration =====
  
Ligne 146: Ligne 156:
 Pour un site en production, mieux vaut désactiver l'​affichage des erreurs et se référer uniquement au log d'​erreur du serveur HTTP : Pour un site en production, mieux vaut désactiver l'​affichage des erreurs et se référer uniquement au log d'​erreur du serveur HTTP :
 <file - .htaccess>​php_flag display_errors off</​file>​ <file - .htaccess>​php_flag display_errors off</​file>​
 +
 +==== phpinfo() ====
 +
 +La fonction //​[[http://​php.net/​manual/​fr/​function.phpinfo.php|phpinfo()]]//​ permet d'​obtenir des informations sur sa configuration de PHP en situation. C'est utile en particulier parce que les configurations de PHP peuvent être différentes entre son utilisation en ligne de commande, en module d'​apache ou en fastCGI.
 +
 +La méthode est de créer un fichier ''​phpinfo.php''​ à la racine de l'​hôte virtuel, donc par ex. ''/​var/​www/​example/​phpinfo.php''​ contenant ceci :
 +
 +<file phpinfo.php>​
 +<?php phpinfo(); ?>
 +</​file>​
 +
 +On appelle ensuite ce script depuis un navigateur web : [[http://​example/​phpinfo.php]]
  
 ==== OPcache ==== ==== OPcache ====
Ligne 189: Ligne 211:
  
 Vous pouvez vérifier cela avec cette commande : Vous pouvez vérifier cela avec cette commande :
-<​code>​apt list \*php\* ​| grep install</​code>​+<​code>​apt list \*php\* ​--installed</​code>​
 Si vous voyez apparaître plusieurs versions de PHP, par ex. //php7.2// et //php7.0// ou //php5.6//, vous avez un problème. Dans ce cas supprimez les versions de PHP qui ne correspondent pas à la version proposée par les dépôts officiels d'​ubuntu (//php7.0// sur [[:​xenial|Xenial 16.04]], //php7.2// sur [[:​bionic|Bionic 18.04]]), [[:​ppa#​la_methode_propre_les_paquets_de_gestion_automatiqueppa-purge_launchpad-getkeys|désinstallez le PPA exotique]] si il existe, puis réinstallez les paquets absents si nécessaire sans spécifier de numéro de version ([[apt>​libapache2-mod-php]],​ etc). Si vous voyez apparaître plusieurs versions de PHP, par ex. //php7.2// et //php7.0// ou //php5.6//, vous avez un problème. Dans ce cas supprimez les versions de PHP qui ne correspondent pas à la version proposée par les dépôts officiels d'​ubuntu (//php7.0// sur [[:​xenial|Xenial 16.04]], //php7.2// sur [[:​bionic|Bionic 18.04]]), [[:​ppa#​la_methode_propre_les_paquets_de_gestion_automatiqueppa-purge_launchpad-getkeys|désinstallez le PPA exotique]] si il existe, puis réinstallez les paquets absents si nécessaire sans spécifier de numéro de version ([[apt>​libapache2-mod-php]],​ etc).
  
  • php.txt
  • Dernière modification: Le 01/04/2024, 12:06
  • par bcag2