Repolode
php

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. 1

    Instale o FrankenPHP com Homebrew

    brew install dunglas/frankenphp/frankenphp
  2. 2

    Sirva o diretório atual

    frankenphp php-server
  3. 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