Нещодавно в мене з’явилася ідея щодо переносу блоґу на інший хостинг. Першим ділом я взявся читати статтю про аналогічний “переїзд” Блоґорідера. А оскільки мій блоґ наразі також знаходиться на TOPUA, то проблеми в нас так само мають бути аналогічними (а саме проблема з latin1).
Та перед тим, як купувати хостинг, я вирішив проробити всю процедуру на локальному веб-сервері (я юзаю XAMPP) для того, щоб перевірити, чи все я правильно зрозумів і які підводні камені можуть стати на дорозі.
Для початку я зробив дамп бази даних через інтерфейс phpMyAdmin, а також архів кореневого каталогу з допомогою cPanel. Потім відкрив дамп в Notepad++, змінив кодування з CP1251 на utf-8 і замінив всі значення “latin1″ на “utf-8″, таким чином при імпорті дампу всі таблиці створювались з Юнікодом, як кодуванням за умовчуванням:
CREATE TABLE `table` (
...
) ENGINE=MyISAM ... DEFAULT CHARSET=utf8 ;
Після імпорту дампу і розпаковки кореневого каталогу я додав у файл wp-config.php рядок
define('DB_CHARSET', 'utf8');
Насамкінець я виконав кілька SQL-запитів для того, щоб блоґ нормально працював на новому домені:
UPDATE wp_options SET option_value = replace(option_value, 'http://fireon.org.ua', 'http://localhost/fireonblog') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://fireon.org.ua','http://localhost/fireonblog');
UPDATE wp_posts SET post_content = replace(post_content, 'http://fireon.org.ua', 'http://localhost/fireonblog');
Після чого все запрацювало! От тут і виникає питання: може я чогось не вкурив, але чому у мене все пройшло так просто, а hellveen та Роланд Чанішвілі вручну конвертували всі поля з кириличним тестом з latin1 в BLOB, а потім в utf-8?
UPD!!!
Як виявилося, запрацювало не все, а лише головна сторінка – при переході на всі внутрішні лінки вискакує помилка 404. Наразі шукаю вирішення…
UPD!!!
Рішення знайшов. Як виявилось. проблема була в тому, що перенесений на локальний сервер блоґ знаходився не в кореневому каталозі, а в підкаталозі “/fireonblog” (що при переносі на реальний хостинг не повинно відбутися). Отже треба було видозмінити файл .htaccess наступним чином:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /fireonblog/index.php [L]
# END WordPress
(Підглянув на Perishable Press)









Налаштуй структуру посилань і глянь чи є в тебе файл .htaccess з необхідними правами.. В мене ця проблема вирішувалась після того як я заливав .htaccess в корінь блогу та давав йому чмоди 777..
Да, я кстати также заметил проблему с кодировками при переносе. Полезно!
Додай у файл .htaccess текст, який ти можеш знайти в розділі Settings>Permalinks.
Теж саме що просто дати чмоди.. Майже те саме..)
Дякую всім, хто допомагав
То помилку виправлено?
Так))
так ти вже здійснив переїзд?
бо я теж хочу переїхати але ніяк не можу змінити днси в акаунті по емейлу
Ні, поки-що я тестував переїзд тільки на локальному веб-сервері (для того, щоб розібратись у проблемі з кодуваннями).
А куди будеш переходити і чому?
це ти в кого спитав?
У FireON’a
При переносі сайту користувався Sypex Dumper Lite 1.0.8, проблеми з кодуванням самі вирішились…
Все так складно. В мене взагалі ніяких проблем не було. Експортував базу через контрол панель на новому хості імпортував через пшпмініадмін
Нагуглил эту статью каким-то невероятным образом, а понять почти ничего не смог. Все-таки мы друг для друга давно же заграница. Всем удачи в блоговедении!