Caddy é um servidor web extensível, escrito em Go, que atende HTTP/1.1, HTTP/2 e HTTP/3 e habilita HTTPS automaticamente por padrão.
php/frankenphp
Um servidor moderno de aplicações PHP baseado no servidor web Caddy, com modo worker, Early Hints, HTTP/3 e HTTPS automático.
- Estrelas
- 11,441
- Forks
- 498
- Issues abertas
- 117
- Último commit
- há 11 horas
O que é?
FrankenPHP é um servidor de aplicações para PHP, escrito em Go e baseado no servidor web Caddy. Ele executa qualquer aplicação PHP e oferece modo worker, no qual a aplicação permanece carregada na memória entre as requisições, além de Early Hints, suporte em tempo real com Mercure e hot reload. HTTPS automático, HTTP/2 e HTTP/3 também estão incluídos.
O projeto é distribuído como um binário independente para Linux, macOS (Apple Silicon) e Windows. Também estão disponíveis pacotes rpm, deb e apk, Homebrew e imagens Docker. Laravel e Symfony têm integrações oficiais com o modo worker. FrankenPHP também pode ser usado como biblioteca Go para incorporar PHP a uma aplicação que usa net/http.
O projeto oferece comandos como `frankenphp php-server` para servir um diretório e `frankenphp php-cli` para executar scripts. Também permite criar aplicações PHP autocontidas e binários estáticos, além de possibilitar que desenvolvedores escrevam extensões PHP em Go.
Recursos principais
- 01O modo worker mantém as aplicações carregadas entre as requisições.
- 02Suporte a Early Hints (código de status 103), HTTP/2 e HTTP/3.
- 03HTTPS automático e recursos em tempo real via Mercure.
- 04Hot reload durante o desenvolvimento.
- 05Binários independentes, pacotes para sistemas e imagens Docker.
Casos de uso
- Executar aplicações Laravel ou Symfony em modo worker para aumentar a taxa de processamento.
- Substituir uma configuração de Nginx e PHP-FPM por um único binário de servidor.
- Incorporar PHP a um serviço Go usando net/http.
- Empacotar uma aplicação PHP como um binário executável independente.
Início rápido
- 1
Instale o FrankenPHP com Homebrew
brew install dunglas/frankenphp/frankenphp - 2
Sirva o diretório atual
frankenphp php-server - 3
Abra https://localhost no navegador e aceite o certificado autoassinado
Antes de usar
- O binário independente para macOS é compatível apenas com Apple Silicon.
- O HTTPS local usa um certificado autoassinado que você precisa aceitar manualmente.
Tópicos
Perguntas frequentes
- O que é frankenphp?
- Um servidor moderno de aplicações PHP baseado no servidor web Caddy, com modo worker, Early Hints, HTTP/3 e HTTPS automático. FrankenPHP é um servidor de aplicações para PHP, escrito em Go e baseado no servidor web Caddy. Ele executa qualquer aplicação PHP e oferece modo worker, no qual a aplicação permanece carregada na memória entre as requisições, além de Early Hints, suporte em tempo real com Mercure e hot reload. HTTPS automático, HTTP/2 e HTTP/3 também estão incluídos.
- frankenphp é gratuito? Qual é a licença?
- frankenphp é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- frankenphp ainda é mantido?
- Manutenção ativa. O último commit de frankenphp foi em 21 de out. de 2026.
- Para que posso usar frankenphp?
- Executar aplicações Laravel ou Symfony em modo worker para aumentar a taxa de processamento. Substituir uma configuração de Nginx e PHP-FPM por um único binário de servidor. Incorporar PHP a um serviço Go usando net/http. Empacotar uma aplicação PHP como um binário executável independente.
- Como instalar frankenphp?
- Instale o FrankenPHP com Homebrew: brew install dunglas/frankenphp/frankenphp Sirva o diretório atual: frankenphp php-server Abra https://localhost no navegador e aceite o certificado autoassinado
- Onde consigo frankenphp?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/php/frankenphp
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Servidor web de alto desempenho, proxy reverso, balanceador de carga, API gateway e cache de conteúdo escrito em C.
Um framework web minimalista e de alto desempenho para Go, baseado no pacote padrão net/http.
Runtime de JavaScript, TypeScript e WebAssembly com padrões seguros, desenvolvido com V8, Rust e Tokio.
Cliente HTTP para JVM, Android e GraalVM que reutiliza conexões, oferece suporte a HTTP/2 e armazena respostas em cache por padrão.
Um servidor compacto de autenticação e autorização que funciona como middleware para Traefik, Nginx e Caddy ou como servidor de login SSO independente.