Caddy is a relatively new HTTP server created in 2015 and written in Go. The server's philosophy and design emphasize HTTPS-everywhere along with the HTTP/2 protocol.

How can Caddy be used with Python deployments?

Caddy can be used both for testing during local development or as part of a production deployment as an HTTP server and a reverse proxy with the proxy directive.

Caddy is an implementation of the web server concept. Learn how these pieces fit together in the deployment chapter or view the table of contents for all topics.

General Caddy resources

  • A look inside Caddy shows and explains some of the Go code written to build the server.

  • The official Caddy server docs are the spot to look for what directives can be placed into a Caddy configuration file

  • Caddy a modern web server supporting HTTP/2 is a quick synopsis on installing Caddy along with a short example configuration file.

  • HTTP 2.0 on localhost with Caddy shows how to use a self-signed certificate with Caddy to do local development with an HTTP/2 web server.

  • Is Caddy free? explains the donation and sponsorships model that Caddy uses to continue development on the server. The gist is that the server is free to clone, download and use. Sponsors and optional donations are currently used to fund ongoing development.

Continue learning about web servers or move to a new topic?

Which web server should I use?

What runs a Python application execute on the server?

How should I host and serve static content files?

Matt Makai 2012-2019