Caddyfile Quick-start
Create a new text file named Caddyfile
(no extension).
The first thing to type in a Caddyfile is your site's address:
localhost
Then hit enter and type what you want it to do, so it looks like this:
localhost
respond "Hello, world!"
Save this and run Caddy from the same folder that contains your Caddyfile:
caddy start
You will probably be asked for your password, because Caddy serves all sites -- even local ones -- over HTTPS by default. (The password prompt should only happen the first time!)
(If you get permission errors, you may need to run with elevated privileges or choose a port higher than 1023.)
Either open your browser to localhost or curl
it:
curl https://localhost
Hello, world!
You can define multiple sites in a Caddyfile by wrapping them in curly braces { }
. Change your Caddyfile to be:
localhost {
respond "Hello, world!"
}
localhost:2016 {
respond "Goodbye, world!"
}
You can give Caddy the updated configuration two ways, either with the API directly:
curl localhost:2019/load \
-H "Content-Type: text/caddyfile" \
--data-binary @Caddyfile
or with the reload command, which does the same API request for you:
caddy reload
Try out your new "goodbye" endpoint in your browser or with curl
to make sure it works:
curl https://localhost:2016
Goodbye, world!
When you are done with Caddy, make sure to stop it:
caddy stop