The HTTP/2 web server with automatic HTTPS

Download User Guide

Serve The Web Like It's 2016

Caddy is an alternative web server that is easy to configure and use.

Sponsored By

A web server that serves you

Other web servers were designed for the Web, but Caddy was designed for humans, with today's Web in mind.

Modern feature set

Caddy supports HTTP/2, IPv6, Markdown, WebSockets, FastCGI, templates and more, right out of the box.

For
Designers

Create amazing things with Caddy as your companion. You'll be able to view your work privately in your web browser before you publish it for all to see.

Caddy for designers ›

For
Bloggers

Caddy lets you work on your blog offline by serving text files or even WordPress on your own computer. It's easy to set up and doesn't get in the way.

Caddy for writers ›

For
Developers

Use Caddy as a local dev server or use it to serve your site in production. If you've ever found it difficult to configure a web server, try Caddy.

Caddy for developers ›

How To Use Caddy




1. Make a Caddyfile

The Caddyfile is an optional text file that configures Caddy. You can put it with your site so you don't lose it.

You can define as many sites as you want since Caddy supports virtual hosts.

matt.life # Your site's address ext .html # Clean URLs errors { log ../errors.log # Error log 404 error-404.html # Custom error page } fastcgi /blog localhost:9000 php # PHP backend

2. Start Caddy

Run Caddy by entering caddy into the command line. Caddy automatically uses your Caddyfile if it's in the same folder. More info

$ caddy_

3. Open Your Browser

Just type the address of your site to see it in action. Live sites are served over HTTPS automatically.

Do this on your own computer as you build your site or on a public web host to serve your site to the world. More info

Download Caddy

For static and dynamic web sites

Features

Caddy makes web development faster, easier, and more productive for busy people with busy websites.

HTTP/2

It's time for a faster web. Caddy supports HTTP/2 right out of the box. No thought required.

Automatic HTTPS

Caddy uses Let's Encrypt to serve your sites over HTTPS without any hassle. Supports SNI.

Easy Deployment

Caddy is a single executable with no dependencies. Any platform.

Multi-core

When the going gets tough, Caddy gets going on more CPUs.

WebSockets

Caddy can pipe stdin and stdout from any program to WebSocket clients.

Markdown

Serve Markdown documents rendered on-the-fly as HTML.

IPv6

Runs full well in an IPv6 environment.

Logging

Caddy takes copious notes according to your favorite log format.

FastCGI

Serve PHP by proxying requests to FastCGI servers like php-fpm.

Headers

Send custom response headers just by adding a line to your Caddyfile.

Reverse Proxy

Forward requests to other endpoints with reverse proxy and load balancing.

Rewrites & Redirects

Rewrite requests internally or configure HTTP redirects.

Clean URLs

Elegantly serve files without needing the extension in the URL.

Gzip

Compress responses to save bandwidth.

Directory Browsing

List the contents of folders according to your own template.

Virtual Hosts

Serve multiple sites from the same address with a single Caddyfile.

And there's more.

But let's not overwhelm you here.

Caddy at your service

Get Caddy

Available for Windows, Mac, Linux, and BSD.