FrankenPHP : le serveur d'applications PHP moderne, écrit en Go
FrankenPHP est un serveur d'applications moderne pour PHP construit à partir du serveur web Caddy.
FrankenPHP donne des super-pouvoirs à vos applications PHP grâce à ses fonctionnalités à la pointe : Early Hints, mode worker, fonctionnalités en temps réel, HTTPS automatique, prise en charge de HTTP/2 et HTTP/3...
FrankenPHP fonctionne avec n'importe quelle application PHP et rend vos projets Laravel et Symfony plus rapides que jamais grâce à leurs intégrations officielles avec le mode worker.
FrankenPHP peut également être utilisé comme une bibliothèque Go autonome qui permet d'intégrer PHP dans n'importe quelle application en utilisant net/http.
Découvrez plus de détails sur ce serveur d’application dans le replay de cette conférence donnée au Forum PHP 2022 :
Pour Commencer
Binaire autonome
Si vous préférez ne pas utiliser Docker, nous fournissons des binaires autonomes de FrankenPHP pour Linux et macOS contenant PHP 8.4 et la plupart des extensions PHP populaires.
Sous Windows, utilisez WSL pour exécuter FrankenPHP.
Téléchargez FrankenPHP ou copiez cette ligne dans votre terminal pour installer automatiquement la version appropriée à votre plateforme :
curl https://frankenphp.dev/install.sh | sh
mv frankenphp /usr/local/bin/
Pour servir le contenu du répertoire courant, exécutez :
frankenphp php-server
Vous pouvez également exécuter des scripts en ligne de commande avec :
frankenphp php-cli /path/to/your/script.php
Docker
Des images Docker sont également disponibles :
docker run -v .:/app/public \
-p 80:80 -p 443:443 -p 443:443/udp \
dunglas/frankenphp
Rendez-vous sur https://localhost, c'est parti !
Tip
Ne tentez pas d'utiliser
https://127.0.0.1. Utilisezhttps://localhostet acceptez le certificat auto-signé. Utilisez la variable d'environnementSERVER_NAMEpour changer le domaine à utiliser.
Homebrew
FrankenPHP est également disponible sous forme de paquet Homebrew pour macOS et Linux.
Pour l'installer :
brew install dunglas/frankenphp/frankenphp
Pour servir le contenu du répertoire courant, exécutez :
frankenphp php-server
Documentation
- Le mode classique
- Le mode worker
- Le support des Early Hints (code de statut HTTP 103)
- Temps réel
- Servir efficacement les fichiers statiques volumineux
- Configuration
- Écrire des extensions PHP en Go
- Images Docker
- Déploiement en production
- Optimisation des performances
- Créer des applications PHP standalone, auto-exécutables
- Créer un build statique
- Compiler depuis les sources
- Surveillance de FrankenPHP
- Intégration Laravel
- Problèmes connus
- Application de démo (Symfony) et benchmarks
- Documentation de la bibliothèque Go
- Contribuer et débugger

