Ich versuche, die cachability eine ASP.NET Ressource zu setzen. Wenn ich also goto/foo/show zeige, wird eine Ansicht für einige Ressourcen angezeigt und diese für ein paar Stunden zwischengespeichert (zum Beispiel). Zu diesem Zweck verwende ich das OutputCache-Attribut, das meine Aktionsmethode schmückt. Die Details dieses Cache (gegen diese Aktionsmethode) finden Sie in der Datei web.config.Wie legt man den S-MaxAge CacheControl Wert in einer ASP.NET App fest?
Wenn ich diesen Ausgabe-Cache einstelle, wird der Wert maxage value
richtig eingestellt, aber der Wert s-maxage
ist 0. WTF?
hier ist der Code ...
[Authorize]
[OutputCache(CacheProfile = "SomeController_Show")]
public ActionResult Show(){ ... }
und hier ist ein Ausschnitt aus der Konfigurationsdatei ..
<add name="SomeController_Show" duration="3600" varyByParam="authkey;format;blah" />
und ein Ausschnitt aus der Antwort ...
Cache-Control:public, max-age=3576, **s-maxage=0**
Content-Length:746
Content-Type:application/json; charset=utf-8
Date:Tue, 10 Aug 2010 00:42:17 GMT
Expires:Tue, 10 Aug 2010 01:41:53 GMT
Last-Modified:Tue, 10 Aug 2010 00:41:53 GMT
Server:Microsoft-IIS/7.0
Vary:*
Beachten Sie, wie der maxage richtig eingestellt ist, aber der s-maxage ist nicht? Kann mir hier jemand helfen?