mirror of
https://github.com/caddyserver/caddy.git
synced 2025-05-24 02:02:26 -04:00
caddyhttp: Set default ReadHeaderTimeout (1 min)
Some checks failed
Tests / test (./cmd/caddy/caddy, ~1.22.3, ubuntu-latest, 0, 1.22, linux) (push) Failing after 3m56s
Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Failing after 2m44s
Tests / test (s390x on IBM Z) (push) Has been skipped
Tests / goreleaser-check (push) Has been skipped
Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m34s
Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m35s
Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m34s
Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m52s
Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 2m1s
Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m46s
Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m35s
Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m34s
Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m57s
Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m40s
Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 2m5s
Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m29s
Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 2m14s
Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m27s
Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 2m28s
Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m29s
Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m27s
Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m30s
Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m27s
Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m26s
Lint / lint (ubuntu-latest, linux) (push) Successful in 2m17s
Lint / govulncheck (push) Successful in 2m26s
Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Has been cancelled
Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled
Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled
Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled
Lint / lint (macos-14, mac) (push) Has been cancelled
Lint / lint (windows-latest, windows) (push) Has been cancelled
Some checks failed
Tests / test (./cmd/caddy/caddy, ~1.22.3, ubuntu-latest, 0, 1.22, linux) (push) Failing after 3m56s
Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Failing after 2m44s
Tests / test (s390x on IBM Z) (push) Has been skipped
Tests / goreleaser-check (push) Has been skipped
Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m34s
Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m35s
Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m34s
Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m52s
Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 2m1s
Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m46s
Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m35s
Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m34s
Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m57s
Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m40s
Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 2m5s
Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m29s
Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 2m14s
Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m27s
Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 2m28s
Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m29s
Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m27s
Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m30s
Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m27s
Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m26s
Lint / lint (ubuntu-latest, linux) (push) Successful in 2m17s
Lint / govulncheck (push) Successful in 2m26s
Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Has been cancelled
Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled
Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled
Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled
Lint / lint (macos-14, mac) (push) Has been cancelled
Lint / lint (windows-latest, windows) (push) Has been cancelled
Ref. #6663
This commit is contained in:
parent
b3ce260389
commit
197c564f20
@ -401,6 +401,9 @@ func (app *App) Provision(ctx caddy.Context) error {
|
|||||||
if srv.IdleTimeout == 0 {
|
if srv.IdleTimeout == 0 {
|
||||||
srv.IdleTimeout = defaultIdleTimeout
|
srv.IdleTimeout = defaultIdleTimeout
|
||||||
}
|
}
|
||||||
|
if srv.ReadHeaderTimeout == 0 {
|
||||||
|
srv.ReadHeaderTimeout = defaultReadHeaderTimeout // see #6663
|
||||||
|
}
|
||||||
}
|
}
|
||||||
ctx.Context = oldContext
|
ctx.Context = oldContext
|
||||||
return nil
|
return nil
|
||||||
@ -770,11 +773,20 @@ func (app *App) httpsPort() int {
|
|||||||
return app.HTTPSPort
|
return app.HTTPSPort
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
// defaultIdleTimeout is the default HTTP server timeout
|
// defaultIdleTimeout is the default HTTP server timeout
|
||||||
// for closing idle connections; useful to avoid resource
|
// for closing idle connections; useful to avoid resource
|
||||||
// exhaustion behind hungry CDNs, for example (we've had
|
// exhaustion behind hungry CDNs, for example (we've had
|
||||||
// several complaints without this).
|
// several complaints without this).
|
||||||
const defaultIdleTimeout = caddy.Duration(5 * time.Minute)
|
defaultIdleTimeout = caddy.Duration(5 * time.Minute)
|
||||||
|
|
||||||
|
// defaultReadHeaderTimeout is the default timeout for
|
||||||
|
// reading HTTP headers from clients. Headers are generally
|
||||||
|
// small, often less than 1 KB, so it shouldn't take a
|
||||||
|
// long time even on legitimately slow connections or
|
||||||
|
// busy servers to read it.
|
||||||
|
defaultReadHeaderTimeout = caddy.Duration(time.Minute)
|
||||||
|
)
|
||||||
|
|
||||||
// Interface guards
|
// Interface guards
|
||||||
var (
|
var (
|
||||||
|
@ -61,6 +61,7 @@ type Server struct {
|
|||||||
ReadTimeout caddy.Duration `json:"read_timeout,omitempty"`
|
ReadTimeout caddy.Duration `json:"read_timeout,omitempty"`
|
||||||
|
|
||||||
// ReadHeaderTimeout is like ReadTimeout but for request headers.
|
// ReadHeaderTimeout is like ReadTimeout but for request headers.
|
||||||
|
// Default is 1 minute.
|
||||||
ReadHeaderTimeout caddy.Duration `json:"read_header_timeout,omitempty"`
|
ReadHeaderTimeout caddy.Duration `json:"read_header_timeout,omitempty"`
|
||||||
|
|
||||||
// WriteTimeout is how long to allow a write to a client. Note
|
// WriteTimeout is how long to allow a write to a client. Note
|
||||||
|
Loading…
x
Reference in New Issue
Block a user