占位符
有些指令允许你在Caddyfile中使用占位符,以便能为每个请求填充不同的值。例如{path}
会替换请求中URL的部分,这些也被称为可替换的值。
这些占位符只适用于支持他们的指令。请查阅指令文档,查看是否支持占位符。
请求占位符
这些值是从请求中获取的
- {dir}
- 所请求的文件目录(来自请求的URL)
- {file}
- 请求的文件名(来自请求的URL)
- {fragment}
- 网址最后以 "#"开头的部分
- {>Header}
- 任何请求中头字段之header的请求
- {host}
- 请求中的主机地址
- {hostname}
- 正在处理请求的主机计算机名称
- {hostonly}
- 与{host}相同,但是没有端口值
- {method}
- 请求方法 (GET, POST, 等。)
- {path}
- 原始请求URL的路径部分(不包括查询字段)
- {path_escaped}
- {path}的查询转义变体
- {port}
- 客户端的端口
- {proto}
- 协议字段 (例如 "HTTP/1.1")
- {query}
- URL中查询字符串部分,不包含“?”
- {query_escaped}
- {query}的查询变体
- {remote}
- 客户端的ip地址
- {request}
- 整个压缩为一行的HTTP请求(无主体)
- {request_body}
- 压缩为一行的请求正文(最大长度100KB,仅支持JSON或XML)
- {rewrite_path}
- 与{path}相同,但是是重写后的路径地址
- {rewrite_path_escaped}
- {rewrite_path}的查询变体
- {scheme}
- 所使用的协议/方案(通产是HTTP或HTTPS)
- {uri}
- 请求URI(包括路径,查询字符串)
- {uri_escaped}
- {uri}的查询变体
- {when}
- 本地时间戳格式
02/Jan/2006:15:04:05 -0700
- 本地时间戳格式
- {when_iso}
- UTC时间戳格式
2006-01-02T15:04:05Z
- UTC时间戳格式
响应占位符
这些值是从响应请求中获得的,并且只能通过指令实现。请在使用他们之前,确保指令支持响应占位符。
- {latency}
- 服务器处理请求所需要的大致时间
- {size}
- 响应体的大小
- {status}
- HTTP响应的状态