Ce document présente les configurations à effectuer pour être compatible avec Unicode.
Attention : passer à Unicode ne se fait pas sur un coup de tête ! Il y a des implications à presque tous les niveaux et une mauvaise mise en place entraînerait au mieux des accents mal affichés et au pire des corruptions de données (typiquement suite à des mixages d'encodages) !
Stratégie
...([:JeanChristopheAndré/ÀFaire:reste à écrire])...
Configuration
Attention : l'ordre est important. En particulier : il faut installer les locales avant tout.
Environnement système
installer le paquet locales et choisir une locales UTF-8 par défaut (typiquement fr_FR.UTF-8).
MySQL ≥ 5.0
ajouter les lignes suivantes dans les sections précisées de /etc/mysql/my.cnf :
[mysqld] # par défaut du côté serveur default-character-set = utf8 # à exécuter pour tous les clients (indispensable pour PHP !) init-connect = 'SET NAMES utf8' [mysql] # par défaut du côté client (pour root, qui ne subit pas le init-connect) default-character-set = utf8 [mysqldump] # est-ce vraiment utile ? *** À TESTER *** default-character-set = utf8
Apache ≥ 2.0
- activer le module MIME si ce n'est déjà fait :
sudo a2enmod mime
directive globale à ajouter, par exemple, dans /etc/apache2/conf.d/charset :
AddDefaultCharset UTF-8
PHP
directive globale à ajouter dans /etc/php4/apache2/php.ini :
default_charset = "utf-8"