Carnet Wiki

Durée des cookies dans SPIP

Version 10 — Juin 2022 — Nicolas Hoizey

Mémo des cookies déposés par SPIP et de leur durée par défaut

Les cookies sont gérés par la fonction spip_setcookie

Constante PHP

La constante _RENOUVELLE_ALEA définit la durée de validité de l’aléa qui sert pour l’authentification des cookies, en secondes. Elle permet notamment de modifier la durée des sessions. La valeur par défaut est de 12 heures. (Doc sur spip.net _RENOUVELLE_ALEA)

Cookie visiteurs

Nom du cookieFonctionDuréeAppel
spip_lang mémoriser la langue du visiteur 1 an ecrire/action/converser.php
spip_accepte_ajax mémoriser si le visiteur supporte l’ajax la session ecrire/inc/cookie.php

Cookie rédacteurs / admin

Valable jusqu’à SPIP 3.1

Nom du cookieFonctionDuréeAppel
spip_lang_ecrire mémoriser la langue du visiteur dans le backoffice 1 an ecrire/action/converser.php
spip_ecran mémoriser réglages écran et couleur du visiteur dans le backoffice 1 an ecrire/action/preferer.php
spip_admin « cookie de correspondance »
mémoriser l’accès aux backoffice
bouton dans la partie publique

1 semaine (admin)
14 jours (rédacteur)
ecrire/inc/auth.php
ecrire/action/cookie.php
spip_session mémoriser si une session est active * ecrire/inc/session.php

La durée de la session est égale à la constante _RENOUVELLE_ALEA (valeur par défaut 12 heures) * ...

A partir de SPIP 3.2
Suppression du cookie de correspondance par un simple cookie d’administration

Points de doc à améliorer, corriger ou compléter

Selon @rasta
-  La doc mélange les concepts de « durée de l’alea », « durée des cookies » et « durée des sessions », sans qu’on sache le rapport entre l’un et l’autre, et sans qu’on sache de quels cookies et pourquoi précisément.
-  L’interface utilisateur parle de « quelques jours », alors que dans le code on parle de « 12h » par défaut. Donc c’est quoi le rapport et pourquoi ?
-  Et donc surtout le « temps de session » c’est quoi concrètement ? Si j’éteins mon navigateur (en mode normal pas privé) et que je reviens sur le site, c’est quoi, « la session » ? Je suis toujours connecté ou pas et pourquoi et combien de temps ?
-  La durée des cookies (en fait il faut préciser pour chacun car chaque cookie peut avoir une durée différente) est calculé par rapport à la durée de session, ou l’inverse ?