2 fichiers php.ini
-
28-09-2019 - |
Question
J'ai trouvé que:
Quand je tapez la commande suivante sur la borne:
php -i | grep php.ini
je reçois la sortie:
Le fichier de configuration est Loaded @ /etc/php5/cli/php.ini
Cependant, à partir phpinfo()
, je peux voir:
Le fichier ini est chargé @ /etc/php5/apache2/php.ini
Lequel de ces travaille en ce moment? Comment est-il possible d'avoir deux fichiers php.ini
?
La solution
dépend où vous utilisez PHP. Si vous exécutez la ligne de commande, il utilise le cli/php.ini
et apache2/php.ini
lorsqu'il est exécuté par apache.
Vous exécutons phpinfo()
via le navigateur, d'où vous obtenez /etc/php5/apache2/php.ini
comme la réponse. Exécution php -r "phpinfo();" | grep "Loaded Configuration"
du terminal devrait sortir le CLI ini. La même fonction, les changements de contexte.
L'avantage de ce système est évidemment de permettre à différentes configurations en fonction du contexte. Pour un exemple simplifié, vous voudrez peut-être avoir safe_mode
dans apache mais il est inutile en mode CLI.
Vos chemins de .ini
sont en fait tout à fait inhabituel. Normalement, la valeur par défaut .ini est juste php.ini
et CLI .ini est appelé php-cli.ini
et ils résident dans le même dossier.
Je ne suis pas expert en la matière, mais cela devrait être l'idée de base. Si quelqu'un a des corrections, je serais heureux de les entendre.