[pmwiki-users-fr] Lettres accentuées dans les noms de pages et de groupe

Pierre ROUZEAU pierre at rouzeau.net
Lun 25 Juil 17:13:09 CDT 2016


Ok, merci, j'ai capté, mon problème c'est que le groupe qui a une lettre 
accentuée, c'est la première lettre. 'Énergie'

J'ai un URL rewrite qui capture les pages de pmwiki en vérifiant que la 
première lettre est en majuscule (il y a des pages qui ne sont pas en 
pmwiki sur mon site), comme le E accentué est en UTF8, il ne peut pas 
l'attraper car le code de capture du E majuscule est en ISO. En plus, 
sur mon 404 tracking, il y a beaucoup de gens qui ne respectent pas la 
casse des adresses.

J'ai fait les URL rewriting et j'en ai profité pour capturer les groupes 
avec une casse erronée, donc je laisse (Je n'ai que cinq pages avec des 
lettres accentuées).

En effet, mon site a plus de dix ans et je ne fait pas une énorme 
maintenance. J'ai pas mal oublié ce que j'avais fait à l'époque. J'ai 
juste noté récemment que j'avais un fichier de tracking des 404 et qu'il 
commençait a gonfler. C'est la première fois que je le regarde depuis 
plus de dix ans ...
Mais les problèmes de lettres accentuées sont relativement récents 
(maximum deux ou trois ans). J'ai eu ça sur un autre site (CNCLoisirs) 
et comme je n'avait pas le temps de  chercher,  j'ai carrément renommés 
les groupes litigieux. C'est mauvais pour le référencement, mais j'étais 
pressé.

Salutations
Désolé pour le doublon, j'oublie toujours de répondre à la liste.

Le 25/07/2016 à 22:51, Petko Yotov a écrit :
> Bonjour,
>
> Ce sont les navigateurs qui par défaut encodent les caractères 
> internationaux des URLs en UTF-8 et ce depuis au moins une décennie, 
> pas PHP 5.5, ni PmWiki.
>
> PmWiki.php possède une commande qui décode automatiquement de tels 
> adresses en ISO8859-1, lignes
> 322-323. Si un des scripts nommés xlpage*.php n'est pas chargé, ça 
> devrait marcher tout seul, pas besoin de URL-rewriting.
>
> En effet, je viens de tester ça sur mon serveur local et je n'ai aucun 
> problème, je peux accéder aux pages Élèves.Élèves et Élèves.Chloé.
>
> Le navigateur en revanche affiche bien l'adresse :
>   http://localhost/pmwiki/field-iso/index.php?n=%c9l%e8ves.Chlo%e9
>
> pour que je puisse copier les octets exacts.
>
> Mais mème si je charge :
> http://localhost/pmwiki/field-iso/index.php?n=%C3%89l%C3%A8ves.Chlo%C3%A9
>
> ou :
>   http://localhost/pmwiki/field-iso/index.php?n=Élèves.Chloé
>
> la bonne page sera affichée.
>
> Il faut donc retirer toute modification de URL-Rewriting et toute 
> inclusion de fichier commençant par "xlpage".
>
> Petko
>
> ---
> Change log     :  http://www.pmwiki.org/wiki/PmWiki/ChangeLog
> Release notes  :  http://www.pmwiki.org/wiki/PmWiki/ReleaseNotes
> If you upgrade :  http://www.pmwiki.org/wiki/PmWiki/Upgrades
>
>
> On 2016-07-25 21:33, Pierre ROUZEAU wrote:
>> Bon, l'envoi de ce courriel (qui m'affiche des horreurs à l'écran) m'a
>> donné une réponse partielle. L'encodage UTF-8 fait deux caractères,
>> chacun de ces caractères pouvant se décoder en ISO.
>>
>> En faisant un url rewrite lisant les deux caractères ISO et le
>> transformant dans le vrai caractère ISO attendu, je peux capturer le
>> groupe. Si la page a des caractères accentués, ça ne marche pas, mais
>> au moins, l'utilisateur atterrit sur le bon groupe. Sinon, je peux
>> faire un url rewrite pour chaque page. Pas très drôle, mais ça devrait
>> marcher.
>>
>> éÉè
>>
>>
>> Le 25/07/2016 à 21:23, Pierre ROUZEAU a écrit :
>>>
>>> Bonjour, sur pmwiki 2.2.71, j'ai des groupes et des pages qui 
>>> comportent des lettres accentuées.
>>>
>>> Les noms de fichiers associés sont en ISO-8859-1
>>>
>>> Quand on appelle une page avec un lien interne, son nom est encodé 
>>> correctement, par exemple un 'É' est codé   '%c9'
>>>
>>> Depuis PHP 5.5 (et même un peu avant, je crois), les appels externes 
>>> sur les pages avec lettres accentuées ne fonctionnent pas.
>>>
>>> Mon enregistreur de page 404 me montre que l'encodage des url est 
>>> fait en UTF8 (lecture des variables système), soit pour un 'É', 
>>> '%C3%89'
>>>
>>> J'ai essayé de faire des url rewrite, mais si le rewriter m'envoie 
>>> bien des caractères en ISO, il n'arrive pas à lire les caractères en 
>>> UTF-8, j'ai aussi essayé en faisant des escape des '%'.
>>>
>>> J'ai aussi essayé d'ajouter AddDefaultCharset ISO-8859 ou 
>>> AddDefaultCharset ISO-8859, mais ça ne change rien.
>>>
>>> Je pense que ce n'est pas le problème, puisque le rewriter encode 
>>> bien en ISO. C'est la lecture d'adresses qui est transformée en 
>>> UTF-8. Ditto si je tape 'É' dans ma barre d'adresse, c'est décodé en 
>>> UTF-8.
>>>
>>> J'ai passé plusieurs heures la-dessus et je ne vois aucune solution. 
>>> Certains liens vers mes pages sont probablement très anciens et 
>>> supprimer les accents ne changerait rien à l'échec de recherche de 
>>> page.
>>>
>>> Une idée ?
>>>
>
> _______________________________________________
> pmwiki-users-fr mailing list
> pmwiki-users-fr at pmichaud.com
> http://www.pmichaud.com/mailman/listinfo/pmwiki-users-fr

-- 

---------------------------------------------------------------------------
Pierre Rouzeau - Proud indigenous of old Europe
www.rouzeau.net <http://www.rouzeau.net>
---------------------------------------------------------------------------



---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://www.pmichaud.com/pipermail/pmwiki-users-fr/attachments/20160726/b7780485/attachment-0001.html>


Plus d'informations sur la liste de diffusion pmwiki-users-fr