Webserver · 3 min read · Jan 07, 2026

PHP5-FPM Mit Apache2 Auf Fedora 17 Verwenden

PHP5-FPM Mit Apache2 Auf Fedora 17 Verwenden

Version 1.0
Autor: Falko Timme
Folge mir auf Twitter

Dieses Tutorial zeigt, wie Sie einen Apache2-Webserver auf einem Fedora 17-Server mit PHP5 (über PHP-FPM) und MySQL-Unterstützung installieren können. PHP-FPM (FastCGI Process Manager) ist eine alternative PHP-FastCGI-Implementierung mit einigen zusätzlichen Funktionen, die für Websites jeder Größe nützlich sind, insbesondere für beschäftigere Seiten.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

In diesem Tutorial verwende ich den Hostnamen server1.example.com mit der IP-Adresse 192.168.0.100. Diese Einstellungen können bei Ihnen abweichen, daher müssen Sie sie gegebenenfalls anpassen.

2 Aktivieren zusätzlicher Repositories

Wir müssen später mod_fastcgi installieren, das in den RPMforge-Repositories verfügbar ist. RPMforge kann wie folgt aktiviert werden:

rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

cd /tmp
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

3 MySQL 5 installieren

Um MySQL zu installieren, machen wir Folgendes:

yum install mysql mysql-server

Dann erstellen wir die Systemstartlinks für MySQL (damit MySQL automatisch startet, wenn das System bootet) und starten den MySQL-Server:

systemctl enable mysqld.service
systemctl start mysqld.service

Setzen Sie Passwörter für das MySQL-Root-Konto:

mysql_secure_installation

[root@server1 ~]# mysql_secure_installation

HINWEIS: DAS AUSFÜHREN ALLER TEILE DIESER SKRIPTE WIRD FÜR ALLE MySQL
SERVER IM PRODUKTIONSEINSATZ EMPFOHLEN! BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!

Um sich bei MySQL anzumelden, um es zu sichern, benötigen wir das aktuelle
Passwort für den Root-Benutzer. Wenn Sie MySQL gerade installiert haben und
Sie das Root-Passwort noch nicht festgelegt haben, ist das Passwort
leer, sodass Sie hier einfach die Eingabetaste drücken sollten.

Geben Sie das aktuelle Passwort für root ein (drücken Sie die Eingabetaste für keines):
OK, Passwort erfolgreich verwendet, weiter…

Das Setzen des Root-Passworts stellt sicher, dass niemand sich ohne
die entsprechende Autorisierung beim MySQL-Root-Benutzer anmelden kann.

Root-Passwort setzen? [Y/n] <– EINGABETASTE
Neues Passwort: <– yourrootsqlpassword
Neues Passwort erneut eingeben: <– yourrootsqlpassword
Passwort erfolgreich aktualisiert!
Privilegientabellen werden neu geladen..
… Erfolg!

Standardmäßig hat eine MySQL-Installation einen anonymen Benutzer, der es
jedem ermöglicht, sich bei MySQL anzumelden, ohne dass ein Benutzerkonto
für ihn erstellt werden muss. Dies ist nur für Tests gedacht und
um die Installation etwas reibungsloser zu gestalten. Sie sollten sie
entfernen, bevor Sie in eine Produktionsumgebung wechseln.

Anonyme Benutzer entfernen? [Y/n] <– EINGABETASTE
… Erfolg!

Normalerweise sollte root nur von ‘localhost’ aus eine Verbindung
erlaubt werden. Dies stellt sicher, dass jemand das Root-Passwort
über das Netzwerk nicht erraten kann.

Root-Login aus der Ferne verbieten? [Y/n] <– EINGABETASTE
… Erfolg!

Standardmäßig kommt MySQL mit einer Datenbank namens ‘test’, auf die
alle zugreifen können. Dies ist ebenfalls nur für Tests gedacht und
sollte entfernt werden, bevor Sie in eine Produktionsumgebung wechseln.

Testdatenbank und Zugriff darauf entfernen? [Y/n] <– EINGABETASTE

  • Testdatenbank wird gelöscht…
    … Erfolg!
  • Berechtigungen für die Testdatenbank werden entfernt…
    … Erfolg!

Das Neuladen der Berechtigungstabellen stellt sicher, dass alle
Änderungen, die bisher vorgenommen wurden, sofort wirksam werden.

Berechtigungstabellen jetzt neu laden? [Y/n] <– EINGABETASTE
… Erfolg!

Aufräumen…

Alles erledigt! Wenn Sie alle oben genannten Schritte abgeschlossen
haben, sollte Ihre MySQL-Installation jetzt sicher sein.

Danke, dass Sie MySQL verwenden!

[root@server1 ~]#

4 Apache2 installieren

Apache2 ist als Fedora-Paket verfügbar, daher können wir es wie folgt installieren:

yum install httpd

Jetzt konfigurieren Sie Ihr System, um Apache beim Booten zu starten…

 systemctl enable httpd.service

… und starten Sie Apache:

 systemctl start httpd.service

Richten Sie jetzt Ihren Browser auf http://192.168.0.100, und Sie sollten die Platzhalterseite von Apache2 sehen:

Der Standard-Dokumentenstamm von Apache ist /var/www/html unter Fedora, und die Konfigurationsdatei ist /etc/httpd/conf/httpd.conf. Zusätzliche Konfigurationen werden im Verzeichnis /etc/httpd/conf.d/ gespeichert.

5 PHP5 installieren

Wir können PHP5 in Apache2 über PHP-FPM und das mod_fastcgi-Modul von Apache zum Laufen bringen, das wir wie folgt installieren:

yum install mod_fastcgi php-fpm

Öffnen Sie dann /etc/php.ini:

vi /etc/php.ini

Um Fehler wie

[08-Aug-2011 18:07:08] PHP Warning: phpinfo(): Es ist nicht sicher, sich auf die Zeitzoneneinstellungen des Systems zu verlassen. Sie sind *verpflichtet*, die Einstellung date.timezone oder die Funktion date_default_timezone_set() zu verwenden. Falls Sie eine dieser Methoden verwendet haben und immer noch diese Warnung erhalten, haben Sie wahrscheinlich den Zeitzonenbezeichner falsch geschrieben. Wir haben 'Europe/Berlin' für 'CEST/2.0/DST' stattdessen in /usr/share/nginx/html/info.php in Zeile 2 ausgewählt

… in /var/log/php-fpm/www-error.log zu vermeiden, wenn Sie ein PHP-Skript in Ihrem Browser aufrufen, sollten Sie date.timezone in /etc/php.ini setzen:

| [...] [Date] ; Definiert die Standardzeitzone, die von den Datumsfunktionen verwendet wird ; http://php.net/date.timezone date.timezone = "Europe/Berlin" [...] |

Sie können die korrekte Zeitzone für Ihr System ermitteln, indem Sie Folgendes ausführen:

cat /etc/sysconfig/clock

[root@server1 ~]# cat /etc/sysconfig/clock
ZONE=”Europe/Berlin”
[root@server1 ~]#

Als nächstes erstellen Sie die Systemstartlinks für php-fpm und starten es:

systemctl enable php-fpm.service
systemctl start php-fpm.service

PHP-FPM ist ein Daemon-Prozess (mit dem Init-Skript /etc/init.d/php-fpm), der einen FastCGI-Server auf Port 9000 ausführt.

Starten Sie als Nächstes Apache neu:

systemctl restart httpd.service
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.