[spip-dev] no-store dans l'en-tête HTTP Cache-Control

Bonjour,

J’ai remarqué que SPIP envoie l’entité “no-store” dans l’en-tête HTTP Cache-Control, notamment lors de la rédaction d’un article.

Apparemment, c’est pour que le navigateur ne mette pas la page en cache.
Cependant, ainsi qu’indiqué par le W3C, l’entité “no-cache” correspond à ce but. Les données envoyées avec l’entité no-cache nécessitent une revalidation avant d’être utilisées pour une requête future.
L’entité “no-store” sert quand à elle à éviter que des données confidentielles ne restent, même temporairement, dans un des caches du navigateur.

Firefox respecte cette entité no-store, ce qui veut dire qu’il revalide les données même pour un retour en arrière. Dans tous les autres cas, Firefox revalide toujours les données avec no-cache.
Internet Explorer ne la respecte que lorsque la page est envoyée via HTTPS (le contenu se trouve en bas de la page). Microsoft indique lui-même que no-cache suffit.

Le problème, qui nous est arrivé à plusieurs reprises, est celui-ci : pendant la rédaction d’un article, nous cliquons sur un autre onglet du navigateur pour accéder à des informations nécessaires à la rédaction et au lieu de cliquer sur l’onglet nous cliquons sur un lien dans l’interface de SPIP. Le résultat : le navigateur remplace la page d’édition de l’article par la page pointée par lien. Mais lorsque nous voulons revenir à la rédaction de l’article, le navigateur recharge la page, perdant ainsi toutes les modifications effectuées depuis la dernière sauvegarde de celui-ci.

Serait-il donc possible, soit de retirer cette entité, soit de ne pas l’envoyer si le navigateur est Firefox (voire également un autre) ?

Bon week-end,
Thomas Bertels

* Thomas Bertels tapuscrivait, le 22/01/2011 12:04:

Bonjour,

J'ai remarqué que SPIP envoie l'entité "no-store" dans l'en-tête HTTP
Cache-Control, notamment lors de la rédaction d'un article.

Apparemment, c'est pour que le navigateur ne mette pas la page en cache.
Cependant, ainsi qu'indiqué par le W3C, l'entité "no-cache" correspond à
ce but
<HTTP/1.1: Header Field Definitions. Les
données envoyées avec l'entité no-cache nécessitent une revalidation
avant d'être utilisées pour une requête future.
L'entité "no-store"
<HTTP/1.1: Header Field Definitions; sert
quand à elle à éviter que des données confidentielles ne restent, même
temporairement, dans un des caches du navigateur.

Firefox respecte cette entité no-store, ce qui veut dire qu'il revalide
les données même pour un retour en arrière
<https://developer.mozilla.org/En/Using_Firefox_1.5_caching&gt;\. Dans tous
les autres cas, Firefox revalide toujours les données avec no-cache.
Internet Explorer ne la respecte que lorsque la page est envoyée via
HTTPS
<http://searchsecurity.techtarget.com/tip/1,289483,sid14_gci1132800,00.html&gt;
(le contenu se trouve en bas de la page). Microsoft indique lui-même que
no-cache suffit
<http://support.microsoft.com/default.aspx?scid=kb;EN-US;234067&gt;\.

Le problème, qui nous est arrivé à plusieurs reprises, est celui-ci :
pendant la rédaction d'un article, nous cliquons sur un autre onglet du
navigateur pour accéder à des informations nécessaires à la rédaction et
au lieu de cliquer sur l'onglet nous cliquons sur un lien dans
l'interface de SPIP. Le résultat : le navigateur remplace la page
d'édition de l'article par la page pointée par lien. Mais lorsque nous
voulons revenir à la rédaction de l'article, le navigateur recharge la
page, perdant ainsi toutes les modifications effectuées depuis la
dernière sauvegarde de celui-ci.

Serait-il donc possible, soit de retirer cette entité, soit de ne pas
l'envoyer si le navigateur est Firefox (voire également un autre) ?

A contrario, j'ai un usage bien pratique de ce no-store quand j'ai plusieurs rubriques à créer dans la même rubrique :
- je crée une rubrique
- j'enregistre
- je fais back et j'ai un nouveau formulaire vierge me permettant une nouvelle rubrique dans la même rubrique que la précédente.

Avec no-cache, cette possibilité serait perdue :frowning:

-- RealET

+1

Bonjour,

quand j'ai besoin de créer d'avance plusieurs rubriques ou articles,
j'ouvre dans des onglets différents ces différentes pages.

Il faudrait donc concilier les deux usages, avec et sans no-store.

Peut être une préférence "utilisateur"?

Grégoire

Bonjour,

Tout à fait en phase avec cette demande !

Combien de pages en cours de rédaction perdues à cause de cela !

Pascal

J’ai créé un ticket pour ce problème.

Thomas

Bonjour

J'ai créé un ticket pour ce problème.

Le trac ne fonctionne plus depuis le début de l'année, suit au passage
en cours vers redmine. Il faut créer le ticket sur core.spip.org

Si tu avais un compte, indique moi quel était le login utilisais pour
le réactive.

Désolé pour le désagrément.

Km