David Lemonnier avait proposé une solution pour sécuriser des pages spip
avec une boucle à l'intérieur de la boucle principale qui redirigeait vers
le login si la page contenait cet include.
Ça donne:
<BOUCLE_principale(ARTICLES){id_article}{doublons}>
<BOUCLE_securite(ARTICLES){id_article}{id_mot=xx}>
<?PHP
$requiredUserLevel = array(1); include("phpSecurePages/secure.php");
?>
</BOUCLE_securite>
</BOUCLE_principale>
Id_mot est le mot clef servant à définir quels articles sont filtrés
$requiredUserLevel étant la variable permettant de donner un "niveau"
d'autorisation
Et secure.php le script de protection.
Visiblement:
1/ça marche chez lui
2/ il dit avoir eut 34 demandes privées de la manip donc ça intéresse du
monde
3/ Maintenant, soyons égoiste ;-), ça ne fonctionne pas du tout chez moi:
L'url relative n'étant pas prise correctement par mon serveur je lui ai
donné une url absolue mais même avec cette url absolue l'article protégé est
affiché comme si de rien n'était.
Oui j'ai vidé le cache,
Oui je suis passé par un autre navigateur,
Oui j'ai testé le secure.php dans un fichier hors spip.
Dès que je veux passer par cette boucle dans un squelette spip tout se passe
comme si la boucle n'amenait aucun changement à l'affichage de l'article,
l'include est bien lu car si l'url n'est pas absolue spip me trouve une
erreur d'url liée au cache.
Des idées? Des suggestions? L'adoption massive de cette protection pour
spip?