The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Перенос www-сайта с Win на ALT. 2 серия. Проблема с кодировк..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Перенос www-сайта с Win на ALT. 2 серия. Проблема с кодировк..."  
Сообщение от Medlar (ok) on 13-Апр-09, 14:25 
ALT Linux 4.0. Apache 2.2.4, MySQL 5.0.51a
Разработчики сделали сайт в charset=windows-1251. Ес-но на страницах теперь видятся одни ????

1.Вот такие настройки у их хостинг-провайдера
character set client            cp1251
character set connection        cp1251
character set database  cp1251
character set results           cp1251
character set server    cp1251
character set system    utf8
character sets dir      /usr/share/mysql/charsets/
collation connection            cp1251_general_ci
collation database      cp1251_general_ci
collation server        cp1251_general_ci

Выставляю через SET то же самое (проверяю через SHOW VARIABLES) - никакого эффекта. Почему ?
Да, поскольку БД для разработчиков была создана заранее, и ес-но по умолчанию в utf8,
то и show create database BD; сначала показывал, что она в utf8. Поэтому была использована команда alter database DB charset cp1251;  

2. Еще вопрос по указанным опциям.
Из документации следует, что только 3 опции из перечисленых выше (--character-set-server & --collation server & character-set-dir) я могу задать в командной строке или в файле конфигурации. Остальные можно задать динамически через mysql (что и было сделано) или как SystemVar.
Насколько я понимаю, динамически заданные опции невозможно сохранить на будущее?
Значит, для того, чтобы сделать их постоянными, остается только задать их как SystemVar?

3. В Сети масса статей, описывающих аналогичные проблемы с кодировкой при переносе сайтов.Один из наиболее часто встречающихся советов - напустить iconv на dump БД.
Если в п.1 сделано все верно, то теперь похоже остается только использовать iconv или есть еще варианты?

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Перенос www-сайта с Win на ALT. 2 серия. Проблема с кодировк..."  
Сообщение от Sarge (??) on 13-Апр-09, 22:11 
если данные в базе в правильной кодировке, то после коннекта надо дать команду:
SET NAMES cp1251;

Сначала попробуйте руками с консоли через клиент mysql:
mysql -uИМЯ_ЮЗЕРА_С_ПРАВАМИ_НА_ЧТЕНИЕ_ВАШЕЙ_БАЗЫ
> USE ИМЯ_БАЗЫ;
> SET NAMES cp1251; /* cp1251 заменить на локаль */
> select * from ИМЯ_ТАБЛИЦЫ limit 1;

если увидите русские буквы, а не вопросики, значит всё ок - просто пропишите эту команду сразу после соединения с базой в приложении.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Перенос www-сайта с Win на ALT. 2 серия. Проблема с кодировк..."  
Сообщение от tiv (ok) on 14-Апр-09, 10:31 
попробуйте очистить или удалить базу,
выставить в my.cnf

[client]
default-character-set = cp1251
....

mysqld]
default-character-set = cp1251
character_set_server = cp1251

[mysql]
default-character-set = cp1251
и только потом залить dump
такая последовательность один раз помогала


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру