Serve The Web Like It's 2016
Caddy is an alternative web server that is easy to configure and use.
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.
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.
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.
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
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.
Caddy at your service
Get Caddy
Available for Windows, Mac, Linux, and BSD.