http.timeouts
timeouts用来配置Caddy的HTTP少时时间:
- Read: 读取整个请求的最大持续时间,包括正文。
- Read Header: 允许读取请求头的时间。
- Write: 允许写入响应的最大持续时间。
- Idle: 等待下一个请求的最大时间(当使用keep-alive时)。默认是5分钟。
超时是在出现bug或恶意客户端时维持服务器连通性的重要手段。
由于超时适用于整个HTTP服务,该服务可能为您的Caddyfile中定义的多个站点提供服务,因此在共享该服务的所有站点上,每个站点的超时值将被减少到它们的最小值(
0
或none
是最低值)。最好保持你的超时时间不变,或者只在一个站点上设置它们以避免混淆。一个站点上的超时设置将应用于共享该服务的所有站点。
语法
将所有超时设置为相同的值:
timeouts val
- val 适用于所有超时的持续时间值(例如30s、2m30s、5m、1h)。设置为
0
或none
以禁用以前启用的超时。
你也可以单独地配置每个超时项:
timeouts {
read val
header val
write val
idle val
}
有效值是持续时间,或0
或none
(禁用掉超时,如果之前启用过)。
示例
设置所有超时时间为1分钟:
timeouts 1m
自定义read
和write
的超时值:
timeouts {
read 30s
write 20s
}