文档
一个 项目

模板

将响应主体作为 模板 文档执行。模板提供功能原语,用于创建简单的动态页面。功能包括 HTTP 子请求、HTML 文件包含、Markdown 渲染、JSON 解析、基本数据结构、随机性、时间等等。

语法

templates [<matcher>] {
	mime    <types...>
	between <open_delim> <close_delim>
	root    <path>
}
  • mime 是模板中间件将作用于的 MIME 类型;任何没有符合条件的 Content-Type 的响应都不会被评估为模板。

    默认:text/html text/plain

  • between 是模板操作的开始和结束分隔符。如果它们与文档的其余部分冲突,您可以更改它们。

    默认:{{ }}

  • root 是站点根目录,在使用访问文件系统的函数时使用。

    默认为由 root 指令设置的站点根目录,如果没有设置,则为当前工作目录。

内置模板函数的文档可以在 模板模块 中找到。

示例

有关使用模板为 markdown 提供服务的站点的完整示例,请查看 本网站 的源代码!具体来说,请查看 Caddyfilesrc/docs/index.html

为静态站点启用模板

example.com {
	root * /srv
	templates
	file_server
}

要使用模板提供简单的静态响应,请确保设置 Content-Type

example.com {
	header Content-Type text/plain
	templates
	respond "Current year is: {{now | date "2006"}}"
}