
Servidor web HTTP/1-2-3 multiplataforma, rápido e extensível, com HTTPS automático.
Caddy é uma plataforma de servidor extensível que usa TLS por padrão.
Lançamentos · Documentação · Obter Ajuda
A maneira mais simples e multiplataforma de começar é baixar o Caddy dos Lançamentos do GitHub e colocar o arquivo executável no seu PATH.
Consulte nossa documentação online para outras instruções de instalação.
Requisitos:
Nota: Estes passos não incorporarão informações de versão adequadas. Para isso, siga as instruções da próxima seção.
$ git clone "https://github.com/caddyserver/caddy.git"
$ cd caddy/cmd/caddy/
$ go build
Quando você executar o Caddy, ele pode tentar vincular a portas baixas, a menos que especificado de outra forma na sua configuração. Se o seu sistema operacional exigir privilégios elevados para isso, você precisará dar permissão ao seu novo binário para fazê-lo. No Linux, isso pode ser feito facilmente com: sudo setcap cap_net_bind_service=+ep ./caddy
Se preferir usar go run que cria apenas binários temporários, ainda pode fazer isso com o setcap.sh incluído, assim:
$ go run -exec ./setcap.sh main.go
Se não quiser digitar sua senha para setcap, use sudo visudo para editar seu arquivo sudoers e permitir que sua conta de usuário execute esse comando sem senha, por exemplo:
username ALL=(ALL:ALL) NOPASSWD: /usr/sbin/setcap
substituindo username pelo seu nome de usuário real. Tenha cuidado e faça isso apenas se souber o que está fazendo! Estamos qualificados apenas para documentar como usar o Caddy, não as ferramentas Go ou seu computador, e fornecemos estas instruções apenas por conveniência; aprenda a usar seu próprio computador por sua conta e risco e faça os ajustes necessários.
Em seguida, você pode executar os testes em todos os módulos ou em um específico:
$ go test ./...
$ go test ./modules/caddyhttp/tracing/
Usando nossa ferramenta de construção, xcaddy...
$ xcaddy build
...os seguintes passos são automatizados:
mkdir caddycd caddygo mod init caddygo get github.com/caddyserver/caddy/v2@version substituindo version por uma tag git, commit ou nome de branch._ "import/path/here"go build -tags=nobadger,nomysql,nopgxO site do Caddy possui documentação que inclui tutoriais, guias de início rápido, referência e muito mais.
Recomendamos que todos os usuários – independentemente do nível de experiência – sigam nosso guia Introdução para se familiarizar com o uso do Caddy.
Se você tem apenas um minuto, o site possui vários tutoriais de início rápido para escolher! No entanto, após concluir um tutorial de início rápido, leia mais documentação para entender como o software funciona. 🙂
O Caddy é mais frequentemente usado como servidor HTTPS, mas é adequado para qualquer programa Go de longa duração. Antes de tudo, é uma plataforma para executar aplicativos Go. Os "apps" do Caddy são simplesmente programas Go implementados como módulos do Caddy. Dois apps – tls e http – acompanham o Caddy por padrão.
Os apps do Caddy se beneficiam instantaneamente de documentação automatizada, alterações de configuração online via API e unificação com outros apps do Caddy.
Embora JSON seja a linguagem de configuração nativa do Caddy, ele pode aceitar entrada de adaptadores de configuração que podem essencialmente converter qualquer formato de configuração de sua escolha em JSON: Caddyfile, JSON 5, YAML, TOML, configuração NGINX e muito mais.
A principal maneira de configurar o Caddy é através de sua API, mas se você prefere arquivos de configuração, a interface de linha de comando também os suporta.
O Caddy oferece um nível de controle sem precedentes em comparação a qualquer servidor web existente. No Caddy, você geralmente está definindo os valores reais dos tipos inicializados na memória que alimentam tudo, desde seus manipuladores HTTP e handshakes TLS até seu meio de armazenamento. O Caddy também é ridiculamente extensível, com um sistema de plugins poderoso que oferece grandes melhorias em relação a outros servidores web.
Para exercer o poder deste design, você precisa saber como o documento de configuração está estruturado. Consulte nosso site de documentação para detalhes sobre a estrutura de configuração do Caddy.
Quase toda a configuração do Caddy está contida em um único documento de configuração, em vez de estar espalhada por flags de CLI, variáveis de ambiente e um arquivo de configuração como em outros servidores web. Isso torna o gerenciamento da configuração do seu servidor mais direto e reduz variáveis/fatores ocultos.
Nosso site possui documentação completa:
A documentação também é open source. Você pode contribuir com ela aqui: https://github.com/caddyserver/website
Recomendamos que empresas que usam o Caddy obtenham um contrato de suporte através da Ardan Labs antes de precisar de ajuda.
Um patrocínio ajuda muito! Podemos oferecer ajuda privada para patrocinadores. Se o Caddy está beneficiando sua empresa, considere um patrocínio. Isso não apenas ajuda a financiar o trabalho em tempo integral para garantir a longevidade do projeto, mas também fornece à sua empresa os recursos, suporte e descontos necessários; além de ser uma ótima imagem para sua empresa perante seus clientes e potenciais clientes!
Indivíduos podem trocar ajuda gratuitamente em nosso fórum da comunidade em https://caddy.community. Lembre-se de que as pessoas oferecem ajuda de seu tempo livre e boa vontade. A melhor maneira de obter ajuda é oferecê-la primeiro!
Utilize nosso rastreador de problemas apenas para relatórios de bugs e solicitações de funcionalidades, ou seja, itens de desenvolvimento acionáveis (perguntas de suporte geralmente serão encaminhadas para os fóruns).
Matthew Holt começou a desenvolver o Caddy em 2014 enquanto estudava ciência da computação na Brigham Young University. (O nome "Caddy" foi escolhido porque este software ajuda com as tarefas tediosas e mundanas de servir a Web, e também é um único lugar para organizar várias coisas juntas.) Logo se tornou o primeiro servidor web a usar HTTPS automaticamente e por padrão, e agora tem centenas de contribuidores e já atendeu trilhões de requisições HTTPS.
O nome "Caddy" é uma marca registrada. O nome do software é "Caddy", não "Caddy Server" ou "CaddyServer". Por favor, chame-o de "Caddy" ou, se desejar esclarecer, "o servidor web Caddy". Caddy é uma marca registrada da Stack Holdings GmbH.
Caddy é um projeto da ZeroSSL, uma empresa HID Global.
O alojamento do repositório de pacotes Debian é gentilmente fornecido pela Cloudsmith. Cloudsmith é a única solução de gerenciamento de pacotes totalmente hospedada, nativa da nuvem e universal, que permite que sua organização crie, armazene e compartilhe pacotes em qualquer formato, para qualquer lugar, com total confiança.