Uno degli errori più frequenti commessi quando di installano dei servizi LAMP su un server Linux e quello di non configurare il charset uft8 sui servizi apache, PHP e MySQL. Questo può portare alla visualizzare di caratteri strani, al posto delle lettere accentate, nelle pagine web.
Configurare tutto per usare il carset utf8 non è complesso, vediamo come fare:
Apache
Aggiungere al file /etc/apache2/conf.d/charset la direttiva:
1 | AddDefaultCharset UTF-8 |
PHP
Aggiungere al file /etc/php5/apache2/php.ini la direttiva:
1 | default_charset="UTF-8" |
e poi riavviare apache:
1 | /etc/init.d/apache2 restart |
MySQL
Aggiungere le seguenti direttive nella sezione [mysqld] del file /etc/mysql/my.cnf:
1 2 3 4 | [mysqld] character-set-server=utf8 character-set-client=utf8 init-connect='SET NAMES utf8' |
riavviare MySQL:
1 | /etc/init.d/mysql restart |
accedere alla console mysql:
1 | mysql-uroot-p |
e poi controllare che le impostazioni siano corrette:
1 | mysql>show variables like'c%'; |
Dovreste vedere una cosa del genere:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | +--------------------------+----------------------------+ |Variable_name |Value | +--------------------------+----------------------------+ |character_set_client |utf8 | |character_set_connection|utf8 | |character_set_database |utf8 | |character_set_filesystem|binary | |character_set_results |utf8 | |character_set_server |utf8 | |character_set_system |utf8 | |character_sets_dir |/usr/share/mysql/charsets/| |collation_connection |utf8_general_ci | |collation_database |utf8_general_ci | |collation_server |utf8_general_ci | |completion_type |NO_CHAIN | |concurrent_insert |AUTO | |connect_timeout |10 | +--------------------------+----------------------------+ 14rows inset(0.00sec) |
enjoy!
Ti interessa acquistare un dominio a prezzi ultraconvenienti? clicca qui
Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂
Commenta