@@ -24,6 +24,7 @@ import (
2424 "net/http"
2525 "strings"
2626 "sync"
27+ "time"
2728
2829 etcdservergw "go.etcd.io/etcd/api/v3/etcdserverpb/gw"
2930 "go.etcd.io/etcd/client/pkg/v3/transport"
@@ -159,8 +160,9 @@ func (sctx *serveCtx) serve(
159160 if httpEnabled {
160161 httpmux := sctx .createMux (gwmux , handler )
161162 srv = & http.Server {
162- Handler : createAccessController (sctx .lg , s , httpmux ),
163- ErrorLog : logger , // do not log user error
163+ Handler : createAccessController (sctx .lg , s , httpmux ),
164+ ReadHeaderTimeout : 5 * time .Minute ,
165+ ErrorLog : logger , // do not log user error
164166 }
165167 if err := configureHttpServer (srv , s .Cfg ); err != nil {
166168 sctx .lg .Error ("Configure http server failed" , zap .Error (err ))
@@ -253,9 +255,10 @@ func (sctx *serveCtx) serve(
253255 httpmux := sctx .createMux (gwmux , handler )
254256
255257 srv = & http.Server {
256- Handler : createAccessController (sctx .lg , s , httpmux ),
257- TLSConfig : tlscfg ,
258- ErrorLog : logger , // do not log user error
258+ Handler : createAccessController (sctx .lg , s , httpmux ),
259+ TLSConfig : tlscfg ,
260+ ReadHeaderTimeout : 5 * time .Minute ,
261+ ErrorLog : logger , // do not log user error
259262 }
260263 if err := configureHttpServer (srv , s .Cfg ); err != nil {
261264 sctx .lg .Error ("Configure https server failed" , zap .Error (err ))
0 commit comments