* Add gnu static binary build support * Remove --libc option * configure ./build-static.sh to allow extension loading with glibc * use tabs everywhere * do not use prebuilt sources for glibc build * ffi does not work with musl builds * remove unnecessary tabs * disable opcache jit on musl * disable opcache jit on musl again * err, build command, not download command * cs fixes * spellcheck * even more cs fixes * fix ar removing .a libs * disable ffi extension for now * add gnu static action * add gnu-static target * skip CHECKOV 2 and 3 * rename static-builder to static-builder-musl, gnu-static to static-builder-gnu run arm64 gnu job on ubuntu-arm * rename build-linux to build-linux-musl * rename job description to specify musl * higher optimisation flags * Update docker-bake.hcl --------- Co-authored-by: DubbleClick <m@pyc.ac> Co-authored-by: Kévin Dunglas <kevin@dunglas.fr>
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
Warning
En production, préférez utiliser les images Docker, le paquet Brew ou compiler FrankenPHP à partir des sources. Le binaire autonome est fourni à des fins de développement et de test.
Docker
Des images Docker sont également disponibles :
docker run -v $PWD:/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 worker
- Le support des Early Hints (code de statut HTTP 103)
- Temps réel
- Configuration
- 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
- Intégration Laravel
- Problèmes connus
- Application de démo (Symfony) et benchmarks
- Documentation de la bibliothèque Go
- Contribuer et débugger

