From b7992bc9198f029c2598f859650f1b6a007cb5c4 Mon Sep 17 00:00:00 2001 From: Hamid Reza Mohammadi Date: Fri, 4 Sep 2026 13:56:29 +0330 Subject: [PATCH] image caching fix --- RMuseum/Controllers/GanjoorController.cs | 8 +++++++- RMuseum/Controllers/ImageController.cs | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/RMuseum/Controllers/GanjoorController.cs b/RMuseum/Controllers/GanjoorController.cs index 05467363..0fcf06fe 100644 --- a/RMuseum/Controllers/GanjoorController.cs +++ b/RMuseum/Controllers/GanjoorController.cs @@ -339,6 +339,7 @@ namespace RMuseum.Controllers } Response.GetTypedHeaders().LastModified = lastModified; + Response.Headers.CacheControl = nocache ? "no-cache" : "public,max-age=86400"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -386,11 +387,16 @@ namespace RMuseum.Controllers if (res.Result) { - var cacheKey = $"poet/image/{poet.Result.Cat.UrlSlug}.png"; + var cacheKey = $"poet/image/{poet.Result.Cat.UrlSlug}.gif"; + var cacheKeyForLastModified = $"{cacheKey}/lastModified"; if (_memoryCache.TryGetValue(cacheKey, out string imagePath)) { _memoryCache.Remove(cacheKey); } + if (_memoryCache.TryGetValue(cacheKeyForLastModified, out DateTime cachedLastModified)) + { + _memoryCache.Remove(cacheKeyForLastModified); + } } return Ok(res.Result); diff --git a/RMuseum/Controllers/ImageController.cs b/RMuseum/Controllers/ImageController.cs index 2a2322d7..c6bc2d27 100644 --- a/RMuseum/Controllers/ImageController.cs +++ b/RMuseum/Controllers/ImageController.cs @@ -52,6 +52,7 @@ namespace RMuseum.Controllers Response.GetTypedHeaders().LastModified = img.Result.LastModified; + Response.Headers.CacheControl = "public,max-age=86400"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue &&