Quick & Easy: Caddy http/2 web server with a twist
someone recommended this one to me the other day, its fantastic, it has built in git, search, simpler config (that you can remember)
it can automatically get lets encrypt certificates and it can render markdown to html on the fly
Find it at caddyserver.com or on github
Install caddy (linux)
curl https://getcaddy.com | bash
Install caddy (Windows)
https://caddyserver.com/download/windows/amd64
to get port 80 to work
setcap cap_net_bind_service=+ep /usr/local/bin/caddy
serve content from current directory and list the content
caddy browse
@ http://localhost:2015
serve content from current directory with username
and password
and list the content
caddy "basicauth / username password" "browse"
serve markdown as html
caddy "markdown"
serve gipzed content on the fly
caddy "gzip"
self signed ssl
caddy "tls self_signed"
serve content from /var/www
caddy -root /var/www
everything put into a Caddyfile
localhost {
tls self_signed
root /var/www
basicauth / user pass
browse
markdown
gzip
}
now you can run it
caddy
or caddy -conf "/path/to/Caddyfile"
bonus round
change localhost
with domain.com
and add tls your@email.com
inside }
to get certificates automatically
to serve php5 you add fastcgi / /var/run/php5-fpm.sock php
inside }
to serve php7 you add fastcgi / /var/run/php7-fpm.sock php
inside }
to serve php7.1 you add fastcgi / /var/run/php7.1-fpm.sock php
inside }
reverse proxy to ghost with ssl
domain.com {
tls my@mail.ninja
proxy / localhost:2368 {
proxy_header Host {host}
proxy_header X-Real-IP {remote}
proxy_header X-Forwarded-Proto {scheme}
}
}