PHP ist eine weit verbreitete serverseitige Skriptsprache, die zur Entwicklung dynamischer Webanwendungen genutzt wird. PHP 7.4, die letzte Minor-Version der PHP-7-Reihe, bringt Funktionen wie typisierte Eigenschaften, Pfeilfunktionen und verbesserte Leistung mit. Viele ältere Anwendungen setzen weiterhin auf PHP 7.4, um die Kompatibilität mit bestehendem Code und Diensten zu gewährleisten.
Diese Anleitung beschreibt Schritt für Schritt, wie Sie PHP 7.4 auf Rocky Linux 9 installieren. Sie umfasst die Installation von PHP, die Einrichtung von PHP-FPM und das Aktivieren wichtiger Erweiterungen, die für dynamische Anwendungen erforderlich sind.
Wichtiger Hinweis
PHP 7.4 hat im November 2022 sein End-of-Life (EOL) erreicht und erhält keine Sicherheitsupdates mehr. Nutzen Sie es nur, wenn es für Legacy-Projekte zwingend erforderlich ist, und planen Sie den Umstieg auf eine unterstützte PHP-Version, um Sicherheit und Support zu gewährleisten.
Passende Infrastruktur bei centron
Zum Ausprobieren braucht es keine eigene Hardware: ccloud³ VMs mit vollem Root-Zugriff gibt es ab 3,12 € im Monat, stundengenau abgerechnet und in Sekunden bereit. Cloud Server mieten →
Voraussetzungen
- Zugriff auf ein Rocky-Linux-9-System mit einem Nicht-Root-Benutzer, der über Sudo-Rechte verfügt.
EPEL- und Remi-Repositories installieren
Standardmäßig ist PHP 7.4 nicht in den DNF-Paketquellen verfügbar. Sie müssen die EPEL- und Remi-Repositories hinzufügen, um Zugriff auf aktuelle Abhängigkeiten für Rocky Linux 9 zu erhalten, einschließlich mehrerer PHP-Versionen wie PHP 7.4. Gehen Sie wie folgt vor:
DNF-Paketindex aktualisieren
$ sudo dnf makecacheEPEL-Repository installieren
$ sudo dnf install epel-release -yRemi-Repository installieren
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm -yPrüfen, ob Remi aktiviert ist
$ sudo dnf repolist | grep remiDieser Befehl listet die aktiven Remi-Repositories auf, die im System verfügbar sind.
PHP 7.4 installieren
Um PHP 7.4 auf Rocky Linux 9 zu installieren, müssen Sie zunächst das passende Modul aktivieren und dann PHP sowie die benötigten Erweiterungen installieren. Folgen Sie diesen Schritten:
DNF-Paketindex aktualisieren
$ sudo dnf makecacheNach PHP-7.4-Paketen suchen
$ sudo dnf search php74Beispielausgabe:
=============================================================== Name Exactly Matched: php74 ================================================================
php74.x86_64 : Package that installs PHP 7.4
============================================================== Name & Summary Matched: php74 ===============================================================
php74-php-pecl-http-message-devel.x86_64 : php74-php-pecl-http-message developer files (headers)
php74-php-pecl-pcsc-devel.x86_64 : php74-php-pecl-pcsc developer files (header)
php74-php-pecl-propro-devel.x86_64 : php74-php-pecl-propro developer files (header)
......PHP-7.4-Modul aktivieren
$ sudo dnf module enable php:remi-7.4 -yPHP 7.4 installieren
$ sudo dnf install php74 -yGängige PHP-Erweiterungen installieren
$ sudo dnf install php74-php-mysql php74-php-zip php74-php-xml php74-php-json php74-php-mbstring php74-php-pdo php74-php-gd -yDies installiert:
- php74-php-mysql: Verbindung zu MySQL-Datenbanken.
- php74-php-zip: Unterstützung für ZIP-Archive.
- php74-php-xml: XML-Parsing mit DOM, SimpleXML usw.
- php74-php-json: JSON-Codierung und -Decodierung.
- php74-php-mbstring: Verarbeitung mehrbyteiger Zeichenketten (z. B. UTF-8).
- php74-php-pdo: Datenbankabstraktionsschicht mit PDO.
- php74-php-gd: Bildbearbeitung (Größenänderung, Zuschneiden, Wasserzeichen).
Installierte PHP-Version prüfen
$ php74 --versionBeispielausgabe:
PHP 7.4.33 (cli) (built: Mar 18 2025 06:44:58) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend TechnologiesPHP 7.4-FPM installieren
PHP-FPM (FastCGI Process Manager) ist ein leistungsstarker PHP-Handler, der mit einem poolbasierten Prozessmanagement arbeitet. Er ermöglicht eine effiziente Kommunikation zwischen PHP, Webservern und Diensten über UNIX-Sockets oder TCP-Ports. In PHP 7.4 betreibt PHP-FPM einen eigenen Prozesspool, was ihn zu einer wichtigen Komponente für die Bereitstellung dynamischer Anwendungen macht. Gehen Sie wie folgt vor, um PHP 7.4 FPM zu installieren und einzurichten:
PHP 7.4 FPM-Paket installieren
$ sudo dnf install php74-php-fpm -yPHP 7.4 FPM-Installation überprüfen
$ sudo dnf list installed | grep php-fpmDieser Befehl gibt Details zum installierten PHP-FPM-Paket aus.
PHP 7.4 FPM aktivieren und starten
$ sudo systemctl enable php74-php-fpm
$ sudo systemctl start php74-php-fpmStatus von PHP 7.4 FPM prüfen
$ sudo systemctl status php74-php-fpmBeispielausgabe:
● php74-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php74-php-fpm.service; enabled; preset: disabled)
Active: active (running) since Fri 2025-06-06 03:22:20 UTC; 1h 2min ago
Main PID: 5790 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 17, slow: 0, Traffic: 0req/sec"
......PHP 7.4-FPM konfigurieren
PHP-FPM nutzt Pool-Konfigurationen, um PHP-Anfragen mit definierten Listening-Adressen, Benutzerrechten und Performance-Parametern zu verarbeiten. Gehen Sie wie folgt vor, um das Standard-Konfigurationsverzeichnis zu prüfen und die Standard-Pool-Einstellungen für PHP-Anfragen zu bearbeiten:
Konfigurationsdateien auflisten
$ ls /etc/opt/remi/php74/Beispielausgabe:
opt php.d php-fpm.conf php-fpm.d php.ini pki pm skel sysconfig X11 xdg xinetd.dWichtige Dateien/Verzeichnisse:
- php-fpm.conf: Globale Einstellungen für PHP-FPM vor Anwendung der Pool-Konfigurationen.
- php-fpm.d: Enthält die einzelnen Pool-Konfigurationsdateien.
Standard-Pool-Konfiguration bearbeiten
$ sudo nano /etc/opt/remi/php74/php-fpm.d/www.confPool-Namen prüfen:
[www]Falls nötig, Benutzer/Gruppe anpassen (z. B. von apache zu nginx ändern, wenn Nginx verwendet wird):
user = apache
group = apacheListening-Socket-Pfad überprüfen:
listen = /var/opt/remi/php74/run/php-fpm/www.sockProzessmanagement-Standardeinstellungen prüfen (an die Serverressourcen anpassen):
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35PHP-FPM neu starten
$ sudo systemctl restart php74-php-fpmPHP 7.4 testen
PHP kann sowohl über die CLI als auch integriert mit Webservern via PHP-FPM getestet werden. Nachfolgend die Tests für beide Methoden:
PHP über CLI testen
Datei test.php erstellen:
$ sudo nano test.phpFolgenden Code einfügen:
<!--?php echo "Greetings from centron"; ?-->Script ausführen:
$ php74 test.phpErwartete Ausgabe:
Greetings from centronPHP-FPM mit Apache testen
Prüfen, ob Apache installiert ist:
$ rpm -q httpdFalls nicht vorhanden, installieren:
$ sudo dnf install httpd -yApache aktivieren und starten:
$ sudo systemctl enable httpd
$ sudo systemctl start httpdApache so konfigurieren, dass PHP über PHP-FPM verarbeitet wird:
$ cd /etc/httpd/conf.d
$ sudo nano welcome.confVor dem <LocationMatch>-Block einfügen:
SetHandler "proxy:unix:/var/opt/remi/php74/run/php-fpm/www.sock|fcgi://localhost/"Zum Standard-Webverzeichnis wechseln und info.php erstellen:
$ cd /var/www/html
$ sudo nano info.phpFolgenden Code einfügen:
<!--?php phpinfo(); ?-->SELinux und Firewall konfigurieren
$ sudo setsebool -P httpd_can_network_connect 1
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --reloadÖffnen Sie Ihren Browser und rufen Sie auf:
http://your_server_ip/info.php
Fazit
In diesem Tutorial haben Sie PHP 7.4 auf Rocky Linux 9 installiert und PHP-FPM so konfiguriert, dass Anwendungen über einen Webserver bereitgestellt werden können. PHP ist nach wie vor eine leistungsfähige serverseitige Skriptsprache zur Erstellung dynamischer Anwendungen. Obwohl PHP 7.4 nicht mehr unterstützt wird und nur bei notwendiger Legacy-Kompatibilität eingesetzt werden sollte, kann es weiterhin Frameworks und Plattformen wie Laravel, Symfony oder bestimmte WordPress-Versionen betreiben. Weitere Informationen finden Sie in der offiziellen PHP-Dokumentation.
Testen Sie Ihr Setup auf ccloud³
Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.