mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[bugfix] Set cache-control max-age dynamically for s3 (#1510)
* [bugfix] set cache-control max-age dynamically for s3 * woops * double whoops * time until, thank you linter, bless you, you're the best, no matter what kim says * aa
This commit is contained in:
@@ -24,6 +24,7 @@ import (
|
||||
"net/http"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"codeberg.org/gruf/go-fastcopy"
|
||||
"github.com/gin-gonic/gin"
|
||||
@@ -89,6 +90,10 @@ func (m *Module) ServeFile(c *gin.Context) {
|
||||
|
||||
if content.URL != nil {
|
||||
// This is a non-local, non-proxied S3 file we're redirecting to.
|
||||
// Derive the max-age value from how long the link has left until
|
||||
// it expires.
|
||||
maxAge := int(time.Until(content.URL.Expiry).Seconds())
|
||||
c.Header("Cache-Control", "private,max-age="+strconv.Itoa(maxAge))
|
||||
c.Redirect(http.StatusFound, content.URL.String())
|
||||
return
|
||||
}
|
||||
|
Reference in New Issue
Block a user