{{ caddy_site_domain }} { {% if caddy_site_body %} {{ caddy_site_body | trim | indent(4, first=True) }} {% else %} {% if caddy_site_basic_auth %} basic_auth { {% for cred in caddy_site_basic_auth %} {{ cred.user }} {{ cred.hash }} {% endfor %} } {% endif %} {% if caddy_site_root %} root * {{ caddy_site_root }} file_server {% endif %} {% if caddy_site_upstream %} {% if caddy_site_headers_up or caddy_site_resolvers %} reverse_proxy {{ caddy_site_upstream }} { {% for key, value in caddy_site_headers_up.items() %} header_up {{ key }} {{ value }} {% endfor %} {% if caddy_site_resolvers %} # Use Tailscale MagicDNS to resolve the upstream hostname transport http { resolvers {{ caddy_site_resolvers }} } {% endif %} } {% else %} reverse_proxy {{ caddy_site_upstream }} {% endif %} {% endif %} {% endif %} }