This page is about Caddy 2, which is currently in beta. Click here for the old Caddy 1 site. Thank you for your patience as we transition!
Documentation
Caddy 2 is beta software. It is ready for production, but some things will change between releases; check the release notes before upgrading.

templates

Executes the response body as a template document. Templates provide functional primitives for making simple dynamic pages. Features include HTTP subrequests, HTML file includes, Markdown rendering, JSON parsing, basic data structures, randomness, time, and more.

Syntax

templates [<matcher>] {
	mime <types...>
	between <open_delim> <close_delim>
	root <path>
}
  • mime are the MIME types the templates middleware will act on; any responses that do not have a qualifying Content-Type will not be evaluated as templates. Default: text/html text/plain.
  • between are the opening and closing delimiters for template actions. Default: {{ }}. You can change them if they interfere with the rest of your document.
  • root is the site root, when using functions that access the file system.

Examples

Enable templates on all requests:

templates