Apache, MySQL und PHP

Unter Ubuntu (hier: 18.04) einen Webserver mit Apache, MySQL und PHP zu installieren ist nicht weiter schwierig. Es sollte reichen, folgendes zu tun:

Dabei natürlich eventuell die passende PHP-Version einsetzen und ggf. weitere Module installieren (Tip: php7.2-mbstring nicht vergessen, das wird gern übersehen und führt dann zu wunderlichen Fehlern!).

sudo apt install apache2 mysql php7.2 php7.2-cli

Kontrollieren kann ich das durch die Anzeige der Versionen mittels “php -v” und “mysql -v”. Den Webserver starte ich mit

sudo systemctl enable apache2
sudo systemctl restart apache2
sudo update-rc.d apache2 defaults    # immer beim Booten starten

Üblicherweise mache ich dann eine kleine Testdatei i.php mit dem Inhalt

<?php phpinfo()

die ich im Browser aufrufe

localhost/i,php

und die mir alle relevanten Parameter des Webservers und von PHP selbst anzeigt. Anzeigen soll – denn meist geht es trotzdem nicht!? Was ist der Grund dafür?

Es hat sich herausgestellt, dass das Fehlen des gestarteten “FastCGI Process Manager (FPM)” von PHP die Ursache ist. Also eines Werkzeuges, das eigentlich nur zum Beschleunigen der Abarbeitung von PHP dienen sollte, aber offenbar grundsätzlich für dessen Funktion in einem Webserver verantwortlich ist (wer näheres dazu weiß, kann das bitte gern unten kommentieren!). Also bitte noch zusätzlich PHP-FPM installieren und starten:

sudo apt install php7.2-fpm
sudo systemctl enable php7.2-fpm
sudo systemctl start php7.2-fpm
sudo update-rc.d php7.2-fpm defaults    # immer beim Booten starten

Jetzt sollte auch der Test im Browser klappen und das auch nach dem nächsten Reboot. Hinweis: Natürlich kann man Dienste auch meist über

sudo service <dienstname> start|stop|restart
sudo /etc/init.d/<dienstname> start|stop|restart

steuern.

Weitere Informationen:
www.webhostinghero.com/ubuntu-apache-php-fpm/