web-dev-qa-db-fra.com

Les navigateurs Web mettront-ils le contenu en cache sur https?

Le contenu demandé via https sera-t-il toujours mis en cache par les navigateurs Web ou considère-t-il ce comportement non sécurisé? Si tel est le cas, est-il possible de leur dire que la mise en cache est autorisée?

244
slashnick

Par défaut, les navigateurs Web doivent mettre en cache sur HTTPS le contenu identique à celui sur HTTP, sauf indication contraire explicite via en-têtes HTTP reçus.

Ce lien est une bonne introduction à la définition des paramètres de cache dans les en-têtes HTTP.

y a-t-il un moyen de leur dire que vous pouvez mettre en cache?

Ceci peut être réalisé en réglant le max-age valeur dans le Cache-Control en-tête à une valeur différente de zéro, par ex.

Cache-Control: max-age=3600

indiquera au navigateur que cette page peut être mise en cache pendant 3600 secondes (1 heure)

132
ConroyP

Depuis 2010, , tous les navigateurs modernes et courants cachent le contenu HTTPS par défaut, sauf indication explicite contraire.

Il est pas requis pour définir cache-control:public pour que cela se produise.

Source: Chrome , C'EST-À-DIRE , Firefox .

191
MarkR

Https est mis en cache par défaut. Cela est géré par un paramètre global qui ne peut pas être remplacé par des directives de cache définies par l'application. Pour remplacer le paramètre global, sélectionnez l'applet Options Internet dans le panneau de configuration et accédez à l'onglet Avancé. Cochez la case "Ne pas enregistrer les pages cryptées sur le disque" dans la section "Sécurité", mais l'utilisation de HTTPS seul n'a pas d'incidence sur le fait que IE décide de mettre en cache une ressource.

WinINet met uniquement en cache les réponses HTTP et FTP, pas les réponses HTTPS. https://msdn.Microsoft.com/en-us/library/windows/desktop/aa383928%28v=vs.85%29.aspx

0
Ashim Nath