Этой ночью произошли массовые изменения на всех наших сайтах, которые используют кодировку WINDOWS-1251.
Я вносил изменения на сайт клиента. И вдруг — о ужас, динамическая часть данных, извлекаемая из базы данных почему-то стала отображаться в кодировке UTF-8, то есть текст стал нечитаемый.
Я зашёл в phpMyAdmin, чтобы проверить в каком состоянии находятся данные. Оказалось, что в базе данных происходят странные вещи. Часть таблиц в структуре описана как utf8_general_ci
, другая а кодировке cp1251_general_ci
. И почти везде кодировка по-умолчанию utf8_general_ci
.
Я старался исправить эту ситуацию: создавал заново таблицу, добавлял новую запись в кодировке cp1251_general_ci
, но это ничего не решало. Статические страницы отображались нормально, кроме динамической составляющей.
Всю ночь до 5 часов утра мучался, пытаясь что-то сделать. Ведь утром посетители придут на сайт клиента и вместо прайса и другой необходимой информации, увидят крякозябли. Какой подрыв экономики!
Оказывается это произошло, потому что хостер, переносил все сайты на новый пакет. И при этом пострадали все сайты с кодировкой WINDOWS-1251.
И только утром, после обращения в службу поддержки, текст стал отображаться правильно.
Вот предупреждающее письмо, которое пришло 22 марта в 10:20:
Сообщаем Вам о том, что компания MiroHost запустила в эксплуатацию новую хостинговую платформу, которая отличается большей производительностью, надежностью и устойчивостью к пиковым нагрузкам.
В связи с этим в течение ближайших суток Ваш сайт будет переведен на новую серверную платформу с новым IP-адресом.
Перенос будет произведен без прерывания работы Вашего сайта. Все необходимые настройки доменных имен и субдоменов будут произведены автоматически.
После вступления в силу изменений Вам будут отправлены новые настройки FTP клиента.
До вступления в силу изменений в панели управления хостингом Вам будут недоступны следующие разделы:
— управление доменом,
— управление сайтом,
— управление базами данных,
— статистика сайта.Убедительно просим Вас с момента получения Вами данного сообщения и до получения сообщения с новыми настройками FTP клиента не вносить изменений в каталоги и базы данных Вашего сайта, так как они не будут отражены в новом каталоге (базах данных).
Внимание! Если Вами замечены любые проблема в работе сайта, незамедлительно сообщайте о них в нашу службу технической поддержки. Спасибо!
Но не все сайты ожили после смены тарифного пакета и проблемы с кодировкой сайта остались.
По этому поводу системный администратор хостинг-провайдера MIROHOST.net даёт такую рекомендацию:
Пропишите в .htaccess
файл строку
<code>adddefaultcharset cp1251</code>
Вывод: предпочтительнее сразу создавать сайты в кодировке UTF-8, прописав следующую строку:
<code><META http-equiv="Content-Type" content="text/html; charset=utf-8"></code>
Тогда все переезды будут вашим сайтам ни по чём.
При
Спасибо огромное, 3 часа ищу в чем проблема, а оказалось всего надо было лишь прописать одну строчку «adddefaultcharset cp1251» в .htaccess