Gerador de Caddyfile — Reverse Proxy e Sites Estáticos com Caddy

O Caddy obtém certificados HTTPS automaticamente, então você só descreve o seu site. Escolha um reverse proxy (com balanceamento de carga opcional), um site estático, uma SPA ou PHP, marque redirecionamentos, compressão, headers de segurança, cache e basic auth, e copie um Caddyfile limpo e comentado.

Atualizado em
Caddyfile

Salve em /etc/caddy/Caddyfile, valide com caddy validate --config /etc/caddy/Caddyfile e aplique com sudo systemctl reload caddy.

Seus dados nunca saem do seu computador. Todo o processamento acontece localmente no navegador.

Como usar: Gerador de Caddyfile

  1. Escolha o cenário: reverse proxy para uma aplicação (liste vários upstreams para balancear a carga), um site estático, uma SPA ou PHP.
  2. Informe o seu domínio e como o www deve ser tratado; adicione um e-mail para que o Let’s Encrypt possa entrar em contato sobre os certificados.
  3. Marque compressão, headers de segurança, cache, log, health checks ou basic auth.
  4. Salve como /etc/caddy/Caddyfile, rode caddy validate e recarregue o Caddy.

Por que o Caddyfile é tão curto

O Caddy ativa o HTTPS automaticamente para qualquer endereço de site que seja um domínio real: ele obtém e renova o certificado e redireciona HTTP para HTTPS por conta própria. WebSockets e HTTP/2/3 também funcionam sem configuração extra, então um reverse proxy completo pode ter apenas três linhas:

example.com {
    reverse_proxy localhost:3000
}

O que as opções acrescentam

OpçãoDiretiva
Balanceamento de cargareverse_proxy com vários upstreams, lb_policy e health checks ativos opcionais
SPAtry_files {path} /index.html para que as rotas do lado do cliente funcionem ao recarregar a página
Compressãoencode zstd gzip
Headers de segurançaUm bloco header com X-Content-Type-Options, Referrer-Policy, X-Frame-Options e remoção do Server
Basic authbasic_auth com um hash bcrypt no caminho que você escolher

Veja também: Gerador de Config Nginx, Gerador de VirtualHost Apache, Gerador de Docker Compose.

Também pesquisado como: caddy reverse proxy, exemplo de caddyfile, gerador de config caddy, caddy load balancer, configuração caddy spa, caddy php configuração, caddy basic auth.

Ferramentas que combinam com: Gerador de Caddyfile

  • Gerador e Verificador Bcrypt — Crie hashes bcrypt para usuários de teste, dados de exemplo ou arquivos de configuração e confira se uma senha corresponde a um hash armazenado, sem enviar nada para outro lugar.
  • Gerador de systemd Service — Rode seu app como um serviço Linux de verdade, que inicia com o sistema e reinicia quando trava.
  • Verificador SSL — Verifique um certificado HTTPS em segundos — veja quando ele expira, quem o emitiu, quais hostnames ele cobre e se a cadeia é confiável.
  • Validador YAML — Cole um arquivo Docker Compose, manifesto Kubernetes, workflow do GitHub Actions ou qualquer YAML para localizar erros, evitar armadilhas comuns e obter uma versão bem formatada.

Perguntas frequentes

O Caddy realmente configura o HTTPS automaticamente?
Sim. Quando o endereço do site é um domínio público que aponta para o seu servidor e as portas 80 e 443 estão abertas, o Caddy obtém um certificado do Let’s Encrypt ou da ZeroSSL e o renova sozinho.
Como fazer reverse proxy para vários servidores?
Liste os upstreams separados por espaço. O Caddy distribui as requisições entre eles; marque Health checks para que ele pare de enviar tráfego para um upstream que esteja fora do ar.
Como proteger uma página com senha?
Marque Basic auth, informe um usuário e um hash bcrypt da senha (gerado com caddy hash-password) e o caminho que deve ser protegido.
Como servir um app React ou Vue?
Escolha SPA: o Caddy serve os arquivos e envia caminhos desconhecidos para o index.html, então o roteamento do lado do cliente funciona quando você recarrega a página.
Posso instalar o Gerador de Caddyfile como um aplicativo da web e usá-lo offline?
Sim. O Gerador de Caddyfile é um aplicativo da web instalável (PWA) — instalado a partir do seu navegador, não baixado de uma loja de aplicativos. Clique em “Instalar aplicativo” na parte superior desta página no Chrome ou no Edge (Windows, macOS, Linux, ChromeOS) ou, no Android, use “Compartilhar” → “Adicionar à tela inicial” no iPhone e no iPad, ou “Arquivo” → “Adicionar ao Dock” no Safari 17+ em um Mac. Em seguida, ela se abre em uma janela própria com seu próprio ícone e, como é executada inteiramente no seu navegador, continua funcionando offline. O Firefox no desktop não permite a instalação de aplicativos da web. Como funciona a instalação.

Ferramentas relacionadas