Après avoir installé Ubuntu, avec Apache2, et PHP, je suis resté plusieurs mois sans comprendre pourquoi lorsque je testais une page ou un script en local, j'obtenais quelque chose comme cela.
Quelque soit l'encodage (charset) définit dans les sources, malgré un bon paramétrage du navigateur Firefox, j'obtenais une lecture en UTF-8... Jusqu'à ce que je me rende compte que le problème ne survenait que lorsque la page ou le script était fourni(e) par le serveur Apache2 local, et non pas lorsque je lisais directement un fichier html.
De fait l'examen du phpinfo(), montrait la ligne suivante en local (mais pas chez mon hébergeur) dans le groupe HTTP Headers Information :
Content-Type | text/html ; charset=UTF-8 |
Après avoir réexaminé le script de configuration d'Apache (/etc/apache2/apache2.conf), je ne voyais toujours pas la source du problème. Un petit coup d'oeil aux sous-dossiers me faisait découvrir la ligne suivante dans le fichier /etc/apache2/conf.d/charset :
Il a suffit de commenter cette ligne pour résoudre le problème ! Par exemple si vous disposez de l'éditeur de texte de gnome 2 (gedit) et que vous êtes sous Ubuntu (donc pas de possibilité de se connecter comme root :
Mettre un # devant la ligne pour la commenter.