Je cherche un moyen de mettre en cache une page à la fois le client et le serveur tout en faisant varier le cache de sortie du serveur par un paramètre de chaîne de caractères "Version".Comment puis-je mettre en cache à la fois client et serveur lorsque VaryByParam! = "None"?
Avec ce tag:
<%@ OutputCache Duration="10" Location="Any" VaryByParam="none" %>
Je reçois ces en-têtes:
HTTP/1.1 200 OK
Cache-Control: public
Content-Type: text/html; charset=utf-8
Expires: Wed, 03 Feb 2010 02:29:24 GMT
Last-Modified: Wed, 03 Feb 2010 02:29:14 GMT
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.21006
X-Powered-By: ASP.NET
Date: Wed, 03 Feb 2010 02:29:14 GMT
Content-Length: 2364
Ce fait exactement ce que je veux sur le côté client, mais du côté du serveur, il ne varie pas par " Version".
Pendant ce temps, avec ce tag:
<%@ OutputCache Duration="10" Location="Any" VaryByParam="Version" %>
Je reçois ces en-têtes:
HTTP/1.1 200 OK
Cache-Control: public, max-age=4
Content-Type: text/html; charset=utf-8
Expires: Wed, 03 Feb 2010 02:28:29 GMT
Last-Modified: Wed, 03 Feb 2010 02:28:19 GMT
Vary: *
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.21006
X-Powered-By: ASP.NET
Date: Wed, 03 Feb 2010 02:28:25 GMT
Content-Length: 2352
Ce fait exactement ce que je veux sur le côté serveur, mais le "vary *" forces en-tête de la navigateur pour recharger la page sur chaque demande.
Y a-t-il un moyen d'obtenir la mise en cache du côté du client et du serveur en faisant varier un paramètre?