PHP-Anwendungsserver in Go: FrankenPHP erreicht 1.0

Der erste Meilenstein ist erreicht: FrankenPHP, geschrieben in GO, soll Usern mit nur einem Befehl einen leistungsfähigen PHP-Server für die Produktion bieten.

In Pocket speichern vorlesen Druckansicht 16 Kommentare lesen
Server-Hardware

(Bild: Konstantin Yolshin/Shutterstock.com)

Lesezeit: 1 Min.

Das Entwicklerteam hinter FrankenPHP, einem PHP-Anwendungsserver in Go, hat Version 1.0 veröffentlicht. Mit dem Tool soll eine einfache Bereitstellung eines Servers mit nur einem Befehl möglich sein. Dieser läuft auf der ebenfalls in Go geschriebenen Webserver-Plattform Caddy und bietet unter anderem native Unterstützung für PHP-Frameworks wie Symfony, Laravel und WordPress.

Ein Screenshot aus dem GitHub Repository zu FrankenPHP.

(Bild: dunglas/FrankenPHP/GitHub)

Die Website hebt zwölf Merkmale besonders hervor: Dazu zählen die Unterstützung für Early Hints, dem Webstandard, der die Ladezeiten von Seiten um bis zu 30 Prozent verbessern soll, der Worker-Modus für eine einmalige Anwendungsinitialisierung, Echtzeitereignisse für den Browser, Zstandard- und Gzip-Komprimierung, strukturiertes Logging, Prometheus-Metrikenüberwachung, HTTPS-Unterstützung, automatische Zertifikatsverlängerungen und weitere mehr.

Laut der Website braucht es lediglich fünf Code-Zeilen zur Konfiguration von FrankenPHP:

{
    # Enable FrankenPHP
    frankenphp
    order php_server before file_server
}​

localhost {
    # Enable compression (optional)
    encode zstd gzip
    # Execute PHP files in the current directory and serve assets
    php_server
}​

Gemäß der Dokumentation bietet das Tool derzeit noch keine Unterstützung für das Web Application Framework Laravel Octane. Allerdings gibt es einen laufenden Pull Request für die Integration. Die Dokumentation bestätigt die native Unterstützung von OPcache und XDebug, während die meisten gängigen PHP-Erweiterungen voraussichtlich funktionieren.

FrankenPHP lässt sich auf macOS und Linux ausführen. Interessierte können auch das folgende Docker-Kommando für eine einfache Experimentierumgebung verwenden.

docker run -v $PWD:/app/public \
-p 80:80 -p 443:443 \
dunglas/frankenphp​

Weitere Informationen finden sich auf der Website zu FrankenPHP und auf GitHub.

(mdo)