Autant pour moi, mea culpa, etc. C'est beau la technologie... Et moi je suis dépassé ! ^^
D'ailleurs je suis tellement dépassé que je suis complètement largué... Pas pour rien que je me suis retrouvé ici : je cherche désespérément une solution à un problème qui me fait m'arracher mes cheveux !
Puisque vous avez l'air plus au courant, je me permets d'en profiter pour vous poser la question, sait-on jamais :
J'ai installé un mediawiki dernière version (1.14) sur un serveur 1&1, fichiers encodés en utf-8 avec balise en tête indiquant ce codage, .htaccess à la racine forçant l'interprétation en utf-8, bdd en utf-8 et je teste avec différents navigateurs paramétrés en utf-8... Le contenu de mes pages s'affiche sans problème d'accents ou autre. Mais le problème c'est les url : étant donné qu'il s'agit d'un wiki, et francophone de surcroit, les utilisateurs qui ne sont pas des codeurs professionnels (par défaut on les suppose encore plus nuls que moi !) sont amenés à publier des articles dont les titres sont des noms ou expressions correctement orthographiés, c'est à dire conformes à la graphie française, donc comportant des caractères accentués, or l'affichage de ces articles génère des pages dont l'url comporte le nom de l'article, dont nécessairement des caractères accentués. Et voilà tout le problème : quelque soit le navigateur utilisé, taper l'url avec ces caractères accentués retourne une erreur 404 ! Exemple : la page de test http://b0t.info/réalité.htm donne un message d'erreur "page inexistante", ce qui est problématique. Le problème ne vient pas du wiki lui-même puisque cette page de test, placée à la racine du serveur et non du dossier wiki, et n'appelant aucun autre fichier, ne s'affiche pas du tout. Elle ne contient que du basique :
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head>
<body>GA !</body></html>
... 0n peut difficilement faire plus simple !
La solution pour l'afficher consiste à remplacer les caractères accentués ("é") par leur code html/utf-8 hexadécimal ("%E9"), ce qui, il me semble, devrait se faire automatiquement puisque toute la chaîne est en utf-8, et l'utilisation de tels caractères, conforme aux normes W3C (depuis 2005 il me semble), est sensée être gérée par les navigateurs récents. D'après mon service technique 1&1, cela prouve que le problème ne vient pas du serveur, celui-ci recevant de toute façon toujours, lorsque le navigateur les lui envoie correctement, les caractères codés et parvenant lorsqu'on les lui donne à afficher la page, mais du navigateur qui ne parvient pas à coder ces caractères. 0ui, mais...
Le problème se pose avec tous les navigateurs testés (ie6, Firefox3, Google Chrome) sous quelque environnement que ce soit (Vista, XP, Mac 0s X, Fedora), quelque soit le pc utilisé (2 pc, l'un d'un an ; l'autre de 4 ans, à jours ; et un mac assez vieux mais également à jour), et quelque soit le codage paramétré dans le dit navigateur (utf-8, iso occidental, automatique) ; et ces mêmes navigateurs parviennent sans problème à afficher des pages wikipedia ou Amazon dont les url sont accentuées, même sans coder les accents, de même que toutes les pages placées sur d'autres serveurs que le mien, telles que http://www.cheminee-bio-ethanol.org/catalog/cheminées-modernes-c-21.html ! Mon service technique m'assure que leurs serveurs supportent sans problème les accents avec un codage utf-8, et que plusieurs utilisateurs utilisent des url avec de tels caractères sans problème...
Alors, si ça ne vient ni du serveur, ni de mon fichier, ni du navigateur... D'où vient ce *$¤#@¨~"!&+ de problème, très... problématique (!) puisqu'il m'empêche :
- de faire un lien externe vers un article au titre accentué de mon wiki sans coder l'url, ce qui est fastidieux à l'usage pour l'utilisateur lambda qui voudrait, par exemple, faire un lien d'un forum externe vers l'article "réalité" du wiki, et obtiendrai alors une erreur 404 ;
- de faire fonctionner correctement le moteur de recherche interne, qui ne trouve pas les articles au titre accentué
(curieusement les liens internes d'article à article fonctionnent sans problème, le mediawiki codant probablement automatiquement l'url dans ces cas là, mais le moteur de recherche ne trouve aucun article dont le titre est accentué - par ailleurs la fonction "rechercher : lire" ne fonctionne pas, ce qui est peut-être lié à ce problème de codage)
?!
Pourquoi puis-je afficher les url accentuées d'autres sites mais pas du mien ? Comment régler ce problème ?! Avez-vous svp une piste ?
La seule solution éventuelle que je vois pour l'instant serait d'utiliser un urlencode à chaque saisie par l'utilisateur du wiki, mais :
1) C'est relativement complexe à mon niveau ;
2) Le wiki comporte énormément de fichiers dont un certain nombre contiennent des zones de saisie ; je n'ai pas la moindre idée d'où trouver les parties de code concernées ; la doc et les forums d'entraide pour mediawiki sont anglophones et je suis archi-nul en anglais (ou je sais, mea culpa, encore).
3) Je souhaiterais conserver les accents (normalement gérés en utf-8 par les serveurs et navigateurs récents, et aux normes) par souci esthétique et orthographique, mais j'avoue que ce dernier argument, plutôt esthétique, est accessoire.
Je n'y comprends plus rien, et je commence à m'embrouiller après 3 nuits de travail acharné pour tenter de résoudre ce problème probablement pas insoluble (je l'espère !), mais en tout cas difficilement soluble à mon niveau !
Je serais infiniment reconnaissant à toute personne qui aurait une solution ou ne serait-ce qu'une piste pour solutionner ce problème ! Je veux bien lui édifier une église (virtuelle, hein, faut pas pousser ^^).
Merci d'avance à toute âme charitable !
PS : si vous voulez tester le wiki, il se trouve à cette adresse : http://posthumanisme.b0t.info ou http://b0t.info//mediawiki-1.14.0/index.php5?title=Accueil
21 mars 2009 à 00:29
20 juin 2010 à 21:35
notepad++ > all > notepad
28 déc. 2011 à 11:05
19 juin 2012 à 13:11
Il faut aller dans le menu encodage de notepad++ et sélectionner convertir en UTF-8 sans BOM