From 005825bbc9a3fcfa90ea7bed9b1e79241261617e Mon Sep 17 00:00:00 2001 From: Benedikt Kulmann Date: Mon, 23 Nov 2020 13:06:05 +0100 Subject: [PATCH] Set proper expires header --- ocis-phoenix/pkg/service/v0/service.go | 3 ++- ocis-pkg/middleware/static.go | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ocis-phoenix/pkg/service/v0/service.go b/ocis-phoenix/pkg/service/v0/service.go index 4bb9942b2..1f426af33 100644 --- a/ocis-phoenix/pkg/service/v0/service.go +++ b/ocis-phoenix/pkg/service/v0/service.go @@ -146,6 +146,7 @@ func (p Phoenix) Static(ttl int) http.HandlerFunc { // we don't have a last modification date of the static assets, so we use the service start date lastModified := time.Now().UTC().Format(http.TimeFormat) + expires := time.Now().Add(time.Second * time.Duration(ttl)).UTC().Format(http.TimeFormat) return func(w http.ResponseWriter, r *http.Request) { if rootWithSlash != "/" && r.URL.Path == p.config.HTTP.Root { @@ -169,8 +170,8 @@ func (p Phoenix) Static(ttl int) http.HandlerFunc { } w.Header().Set("Cache-Control", fmt.Sprintf("max-age=%s", strconv.Itoa(ttl))) + w.Header().Set("Expires", expires) w.Header().Set("Last-Modified", lastModified) - w.Header().Del("Expires") static.ServeHTTP(w, r) } diff --git a/ocis-pkg/middleware/static.go b/ocis-pkg/middleware/static.go index 57f2e6957..03d61ac0f 100644 --- a/ocis-pkg/middleware/static.go +++ b/ocis-pkg/middleware/static.go @@ -24,6 +24,7 @@ func Static(root string, fs http.FileSystem, ttl int) func(http.Handler) http.Ha // we don't have a last modification date of the static assets, so we use the service start date lastModified := time.Now().UTC().Format(http.TimeFormat) + expires := time.Now().Add(time.Second * time.Duration(ttl)).UTC().Format(http.TimeFormat) return func(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { @@ -31,8 +32,8 @@ func Static(root string, fs http.FileSystem, ttl int) func(http.Handler) http.Ha next.ServeHTTP(w, r) } else { w.Header().Set("Cache-Control", fmt.Sprintf("max-age=%s", strconv.Itoa(ttl))) + w.Header().Set("Expires", expires) w.Header().Set("Last-Modified", lastModified) - w.Header().Del("Expires") static.ServeHTTP(w, r) } })