Ich versuche gerade, die richtige php.ini-Datei zu finden, um sie zu bearbeiten und Apache neu zu starten, damit die Änderungen wirksam werden und ich ratlos bin.
Ich habe drei verschiedene php.ini-Dateien gefunden (keine Ahnung, warum es drei gibt). So habe ich die Dateien gefunden
$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini
Habe ich auch gemacht ....
$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
Ich habe alle (nur um sicherzugehen) auf die gewünschten Einstellungen geändert.
Ich habe Apache mit neu gestartet
sudo service apache2 restart
Die Ergebnisse...
* Restarting web server apache2
Ich habe die Seite neu geladen und festgestellt, dass die Datei php.ini nicht aktualisiert wurde.
Ich weiß das, weil ich es benutzt habe
echo ini_get('post_max_size');
Das sollte auf 20M geändert werden, war aber immer noch nur 2M
Ich habe versucht, meinen Computer neu zu starten, da ich dachte, dies würde den Apache-Server anhalten und die php.ini-Datei mit der richtigen Einstellung neu laden, aber leider schlug dieser Versuch auch fehl.
Besteht die Möglichkeit, dass eine andere php.ini-Datei stört?
apache2
Unterverzeichnisupdatedb; locate php.ini
anstelle vonfind
./etc/php/5.6/apache2/php.ini
in Ubuntu 16.04 LTS Xenial Xerus, wo5.6/
die Version von PHP installiert ist. Kopieren Sie zuerst die Dateiphp.original.ini
und öffnen Sie sie dann zum Bearbeiten mitsudo gedit /etc/php/5.6/apache2/php.ini
Antworten:
Die drei Dateien, die Sie dort haben, sind jeweils für unterschiedliche Zwecke bestimmt.
/etc/php/5.6/cli/php.ini
ist für das CLI-PHP-Programm, das Sie gefunden haben, indem Sie esphp
auf dem Terminal ausgeführt haben./etc/php/5.6/cgi/php.ini
ist für das PHP-CGI-System, das in diesem Setup nicht speziell verwendet wird./etc/php/5.6/apache2/php.ini
ist für das von Apache verwendete PHP-Plugin. Diese müssen Sie bearbeiten, damit die Änderungen für Ihr Apache-Setup übernommen werden./etc/php/5.6/fpm/php.ini
ist für denphp5-fpm
Prozessor gedacht, der ein FastCGI-kompatibler 'Wrapper' für die PHP-Verarbeitung ist (z. B. zur Weitergabe von NGINX anphp5-fpm
) und als eigenständiger Prozess auf dem System ausgeführt wird (im Gegensatz zum Apache PHP-Plugin).quelle
Führen Sie in Ihrem Browser ein Skript aus, das dieses Snippet enthält,
<?php phpinfo(); ?>
und suchen Sie dann nach einer geladenen Konfigurationsdatei . Dieser Eintrag gibt die php.ini an, die Ihr PHP auf Ihrem Apache-Server verwendet.quelle
Um herauszufinden, welche
php.ini
CLI verwendet, können Sie Folgendes ausführen:Beispielausgabe:
quelle
für php7 ubuntu 16.4
quelle
Sie können die verwendete Datei finden, indem Sie diese auf dem Terminal ausführen:
quelle