bug sur les urls à cause d'une mauvaise global $profondeur_url
Le symptome
de temps en temps (mais assez fréquemment dans mon cas) lorsqu'on a un site dans un sous repertoire, les urls produite par #URL_ARTICLE et co contiennent des "../". Conséquent, lorsqu'on clique on remonte d'un niveau, et du coup on tombe sur une page 404.
La cause
Visiblement d'après c301add8 la cause serait une mauvaise globale $profondeur_url. Je cite ESJ
Enfin compris pourquoi SPIP compile parfois des squelettes où la globale profondeur_url est incorrecte. Lorsqu'on place dans ecrire/.htaccess une redirection comme "ErrorDocument 403 /?page=403", curieusement Apache met dans $_SERVER[’REQUEST_URI'] l'URL initiale (donc avec .../ecrire/...) tandis qu'il met dans $_SERVER[’SCRIPT_NAME'] l'URL de redirection (dans l'exemple ci-dessus une page à la racine). Du coup, la compilation de cette page à la racine se fait avec une profondeur d'URL qui est celle de ecrire/ et non de la racine. Pour peu que cette page et ses inclusions soient mises en cache, c'est toutes les autres pages qui les partagent qui se retouvent avec de mauvaises URL.
Les tentatives de résolution
Deux commits en 2.1 ont tenté de résoudre les pb : c301add8 et d55b5c20
Ils ont été reporté en 3.0 par
à ma connaissance c'est le point mort depuis