Nos serveurs annoncent UTF-8 par défaut, le standard actuel. Vous n'avez normalement rien à régler, et si vos accents s'affichent mal, la cause est presque toujours ailleurs.
En bref : le serveur annonce UTF-8 par défaut : déclarez plutôt <meta charset="utf-8"> dans vos pages. Le Jeu de caractères par défaut se change dans Configuration Apache (carte Site web), seulement pour un ancien site en ISO-8859-1.
Prérequis
- Avoir accès à votre console Apanel.
Ce qu'il faut savoir avant de commencer
Le réglage Jeu de caractères par défaut détermine l'encodage que le serveur annonce au navigateur. Ne le modifiez que dans un cas : votre site est ancien et ses fichiers sont réellement enregistrés en ISO-8859-1 (Latin-1), et vous ne pouvez pas les convertir.
Changer cette valeur ne convertit rien : cela ne fait que changer l'étiquette. Si vos pages sont en UTF-8 et que vous annoncez du Latin-1, vous transformez un site correct en site illisible.
Comment déclarer l'encodage dans la page ?
Une page qui déclare elle-même son encodage s'affiche correctement quel que soit le réglage du serveur. Placez cette ligne au tout début de la section <head> :
<meta charset="utf-8">
C'est la méthode la plus fiable, et celle qui suit votre site si vous le déplacez un jour ailleurs.
Comment modifier le jeu de caractères annoncé par le serveur ?
- Connectez-vous à votre console Apanel.
- Depuis le tableau de bord, cliquez sur le nom de votre domaine pour ouvrir la Gestion de l'hébergement.
- Dans la carte Site web, cliquez sur Configuration Apache.
- Dans le champ Jeu de caractères par défaut, choisissez UTF-8 ou ISO Latin1 (ISO-8859-1).
- Cliquez sur Sauvegarder.
En cas de problème
Si vos accents s'affichent mal, trois maillons doivent être d'accord. Identifiez d'abord le symptôme :
| Ce que vous voyez |
Maillon en cause |
Quoi faire |
é à la place de é |
La déclaration d'encodage |
Ajoutez <meta charset="utf-8"> dans vos pages ; vérifiez le jeu de caractères dans Configuration Apache |
? ou � |
Le texte a été abîmé à l'enregistrement |
La connexion à la base n'est pas en UTF-8 : voir Corriger les accents mal affichés en passant PHP, MySQL et le navigateur en UTF-8 |
| Seuls certains fichiers posent problème |
Les fichiers sources eux-mêmes |
Ré-enregistrez-les en UTF-8 sans BOM depuis votre éditeur |
Pour aller plus loin