Premier appel à l'aide sur cette liste, donc avant tout: MERCI, SPIP c'est
génial pour des ignorants comme moi, on se met très vite aux squelettes,
avec toutes les explications disponibles.
Mon problème,
j'essaye de mettre en place un "INTRANET", qui ne serait accessible qu'aux
auteurs et administrateurs de l'espace "administration".
J'utilise donc #LOGIN_PUBLIC pour authentifier les gens autorisés, et
#URL_LOGOUT (je suis en SPIP 1.5.1) pour la déconnexion.
Je protège ensuite tous mes squelettes avec:
<?php $etat=$auteur_session['statut'];
if ($etat=="") { ?>
code public
<?php }else { ?>
code privé
<?php } ?>
Cette méthode est elle bien équivalente à celle proposée sur le site
officiel de SPIP ? http://www.uzine.net/article1827.html
Mon problème est le suivant, mon site est hébergé à l'extérieur du centre où
je suis et ce centre utilise un firewall et un proxy interne. C'est
probablement cela qui pose problème, mais je ne comprends pas vraiment
pourquoi (je suis vraiment novice ). Voici ce qui se passe:
Je vais sur une rubrique en étant authentifié, ma page se charge normalement
avec les infos "privées" qui s'affichent. Puis je me déconnecte, et je
retourne sur cette page en cliquant sur un lien vers cette rubrique. Au lieu
d'avoir ma page en version "publique", c'est encore la version "privée" qui
apparaît. (j'ai désactivé le cache de mon navigateur). Si je fait "reload",
c'est encore "privé" qui vient, si je fait "recalculer", là j'ai ma bonne
page "publique". Mais si de nouveau je reclic sur le même lien, il me
renvoie encore "privé". Je pensais donc que c'était la page de mon proxy qui
revenait à chaque fois, et que quand je "recalcule" j'obtient la bonne page
mais mon proxy ne change pas (d'où l'effet du reload ou du clic sur un
lien).
Sauf que, si je supprime le cache de SPIP (délais=0 dans tout mes .php3),
alors là ça marche et j'obtiens bien le contenu "privé" lorsque je suis
authentifié et le contenu "public" dès après ma déconnexion. Je comprends
pas: si c'était mon proxy qui me renvoyait toujours la page, le cache de
SPIP ne devrait pas avoir d'influence et si c'est le cache de SPIP qui doit
être recalculé à chaque fois, je comprends pas non plus, puisque le php que
je met dans mon squelette est normalement pris en compte à chaque appel (le
code php reste dans le cache).
Si quelqu'un peut m'expliquer ce qui se passe, je lui en serai hautement
reconnaissant, car je serai embêté de ne pouvoir utiliser le cache de SPIP.
Merci d'avance
Désolé pour la longueur du messsage
Simon