2 php.ini-Dateien
-
28-09-2019 - |
Frage
Ich habe festgestellt, dass:
Wenn ich den folgenden auf Terminal-Typ:
php -i | grep php.ini
ich die Ausgabe bekommen:
Die Loaded Konfigurationsdatei ist @ /etc/php5/cli/php.ini
Doch von phpinfo()
ich zu sehen bekommen:
Die geladene ini-Datei @ /etc/php5/apache2/php.ini
Welche von ihnen ist gerade jetzt zu arbeiten? Wie ist es möglich, zwei php.ini
Dateien zu haben?
Lösung
Hängt davon ab, wo Sie PHP laufen aus. Wenn Sie es von der Kommandozeile ausführen, verwendet es die cli/php.ini
und apache2/php.ini
wenn durch Apache laufen.
Sie ausführen phpinfo()
über den Browser, Sie daher /etc/php5/apache2/php.ini
als Antwort bekommen. Laufen php -r "phpinfo();" | grep "Loaded Configuration"
vom Terminal ausgeben sollte die CLI ini. Gleiche Funktion, Kontextänderungen.
Der Vorteil dieses Systems ist offensichtlich unterschiedliche Konfigurationen zu ermöglichen, je nach Kontext. Für ein vereinfachtes Beispiel könnten Sie safe_mode
auf in Apache haben, aber es ist nicht notwendig im CLI-Modus.
Ihre .ini
Wege sind eigentlich recht ungewöhnlich. Normalerweise ist die Standard-ini ist nur php.ini
und CLI ini heißt php-cli.ini
und sie befinden sich in demselben Ordner.
Ich bin kein Experte auf diesem Gebiet, aber dies sollte die grundlegende Idee. Wenn jemand irgendwelche Korrekturen hat, würde ich mich freuen, sie zu hören.