Як виправити кодування за замовчуванням в apache, вебісторій

Отже, Ви встановили Apache, PHP, MySQL і вже готові працювати, як раптом з'ясовується, що замість букв браузер видає Вам кракозябри на кшталт цих.

Звичайно, можна і потрібно додавати в код сторінки

(Або інша потрібна нам кодування замість UTF-8) і це допоможе для конкретної сторінки. Однак буде правильним встановити кодування UTF-8 на Вашому веб-сервері за замовчуванням.

За замовчуванням Apache використовує windows-1251.

Налаштування кодування в веб-сервері Apache зберігаються в файлі .htaccess (починається з точки). Файл розміщується в кореневому каталозі веб-сервера (тобто WWW). Якщо такого файлу немає, його необхідно створити.

Всі наступні маніпуляції будемо проводити під root'ом. Якщо Ви точно знаєте, що робите, можете відразу зайти під користувачем root. Наприклад, через

Далі створюємо файл .htaccess. Я вважаю за краще робити це командою

Далі в цьому файлі прописуємо рядок

яка пояснює, що все веб-сторінки необхідно виводити в кодуванні UTF-8 (або тієї, яку Ви вкажете).

Можна взагалі відключити кодування за замовчуванням, додавши рядок

Це може стати в нагоді, якщо у Вас на веб-сервері лежать файли в різних кодуваннях. Але тоді Вам доведеться вказувати тип кодування в кожному документі.

Для вступу змін в силу Apache перезавантажувати не треба.

Що ще потрібно знати про .htaccess?

Файл .htaccess може перебувати не тільки в кореневому каталозі веб-сервера, але і в підкаталозі конкретного сайту. В цьому випадку настройки файлу з підкаталогу перекривають настройки файли з «кореня», тобто є пріоритетними.