Как перенести сайт с Юкоза (Ucoz) на свой хостинг

Перенести сайт с ЮкозаДавно назревала эта тема, и я уже неоднократно писал о самом Юкозе и о том, какие проблемы он создает своим пользователям. Не так давно я затрагивал эту тему в своей заметке об агрессии Юкоза против своих пользователей. Поэтому перенос своих сайтов с этого сервиса на другой (платный) хостинг для меня вопрос актуальный.

Также знаю, что вопрос, как перенести свой сайт с Юкоза, волнует и других веб-мастеров. Поэтому и решил поделиться своим опытом переноса сайта с Ucoz на свой хостинг.

Сразу скажу о некоторых исходных данных, чтобы не возникало лишних вопросов.

Сайт был создан в системе Ucoz в феврале 2011 года и к нему сразу же был прикреплен домен, зарегистрированный в зоне in.ua.

Почему я пошел на то, что прикрепил к сайту, созданному на Юкозе, свой домен, вместо того, чтобы сразу же создать сайт с помощью того же бесплатного движка Вордпресс и хостить его на своем хостинге? Соблазнился сервисом и тем, что на тот момент Ucoz был действительно бесплатным сервисом, а предоставляемые им возможности были (они и сейчас остаются) хорошими.

За эти четыре с половиной года сайт наделялся несколько раз ТИЦем и лишался его. Посещаемость сайта также колебалась – доходила до 250 человек в сутки и падала до 100 и меньше. Сейчас она держится около сотни посетителей в сутки.

Терять посетителей и показатели при переносе сайта с Юкоза мне не хотелось. Поэтому нужно было произвести перенос без ущерба для сайта.

Плюсом в моей ситуации было то, что сайт индексировался изначально по прикрепленному домену. Поэтому при правильных действиях проблем с индексацией сайта возникнуть не должно было.

Далее предстояло выбрать, будет ли мой сайт работать на каком-то движке или же это будет простой сайт на php с инклудами. Второй вариант меня всегда больше привлекает при создании не слишком объемных сайтов (не более одной-двух тысяч страниц). Поэтому я его и выбрал.

Можно, конечно, было перенести сайт, созданные на Юкозе, и на Вордпресс или другой бесплатный движок. В принципе, здесь тоже особых проблем нет. Однако я сделал свой сайт на php с инклудами.

Почему я сделал такой выбор? Здесь есть несколько причин. Во-первых, простота организации такого сайта. Во-вторых, сайт работает быстро и не грузит хостинг, так как не требует обращений к базе данных. В-третьих, его невозможно взломать, кроме как получить доступ к ftp, что исключает хакерские атаки и не приводит к внезапным перегрузкам сервера.

При этом, конечно, создание новых страниц для сайта занимает немного больше времени, чем размещение новой статьи на том же Вордпресс.

Итак, ход работы по переносу сайта с Юкоза.

Во-первых, был сделан бэк-ап сайта и скачана база на локальный компьютер. Затем на локальном компьютере были созданы страницы сайта в виде php-файлов, которым были даны новые названия (ЧПУ). Дело в том, что на Юкозе адреса страниц имели не очень пристойный вид – набор цифр, обозначающий дату публикации и порядковый номер страницы. Лично мне такие адреса не слишком нравятся.

Далее, страницы сайта на локальном компе нужно было наполнить контентом – скопировать с существующего сайта. Проще всего для меня было сделать эту процедуру, копируя из файла бэк-апа и вставляя сразу же в код вновь созданных страниц с помощью программы Дримвивер.

Файл бэк-апа лучше открывать с помощью Notepad++, а не с помощью стандартного блокнота, так как блокнот просто не справляется с объемным текстовым файлом. У меня он просто очень долго открывался. А вот ноутпад++ легко справляется с таким объемом текста. Да к тому же эта программа имеет побольше возможностей по сравнению с примитивным блокнотом.

С помощью ноутпад++ были сделаны некоторые корректировки в бэк-апе. Дело в том, что на Юкозе страницы в разное время по-разному форматировались. В одно время все тексты форматировались дивами, в другое время – тегами переноса строки. И лишь в последнее время страницы сайта стали форматироваться правильно – с помощью тега <p></p>.

Поэтому, чтобы не делать лишних действий, сразу же с помощью функции замены текста заменил теги <div></div> и <br><br> на <p></p>. Кроме того, таким же образом пришлось заменить устаревшие теги <b></b> и <i></i> на <strong></strong> и <em></em> соответственно, так как Юкоз по-прежнему грешит устаревшими тегами.

После такой подготовки оставалось только копировать из бэк-апа готовый код и вставлять в страницы сайта с помощью Дримвивера.

Когда сайт был готов, оставалось перенести домен на хостинг, где у меня хостятся другие сайты, и загрузить туда файлы самого сайта.

Однако, чтобы такой перенос оказался безболезненным для сайта, нужно было перенаправить посетителей и поисковых роботов со старых адресов страниц на новый. Для этого пришлось повозиться, прописывая в файле .htaccess 301-й редирект для каждой страницы.

Для этого в отдельном текстовом файле я выписал названия страниц, их адреса на Юкозе и вновь присвоенные адреса. Оставалось скопировать это все в файл .htaccess и вместо названий записать директиву Redirect 301.

При этом нужно быть очень внимательным, потому что любой лишний пробел или недописанная буква в адресе делают полностью неработоспособным файл .htaccess. Так, непонятно откуда взявшийся пробел вместо нижнего подчеркивания в адресе страницы, испортил первоначальный эффект от переноса моего сайта.

Когда я перенес домен с Юкоза на другой сервис, куда загрузил файлы своего сайта и файл с редиректом, то вместо того, чтобы увидеть свой преображенный сайт, я увидел сообщение об ошибке 500. Ни одна страница сайта по старому адресу не хотела открываться, хотя при обращении по старым адресам я должен был перенаправляться на новые.

Пришлось внимательно проверять файл .htaccess. Нашел три ошибки: в одном месте вместо нижнего подчеркивания был пробел; в другом – просто ненужный пробел; в третьем – не хватало одной буквы. При том, что на моем сайте всего-то чуть более двух с половиной сотен страниц.

Тем не менее, исправив ошибки, я получил ожидаемый результат – мой сайт начал работать на новом месте и при этом все посетители, направляемые поисковиками по старым адресам, отныне должны перенаправляться на новые. Что и подтвердил счетчик от Ливинтернет.

Да, работа не очень быстрая – у меня ушла почти неделя на эту работу (уделял полтора-два часа каждый день). Зато теперь я свободен от прихотей Юкоза и не должен платить лишних 6 баксов в месяц за отсутствие чужой рекламы на моем сайте.

Вот этот трудный путь с редиректом при переносе сайта с Юкоза нужен только в том случае, если сайт уже имеет какие-то позиции в поисковых системах и какое-то количество ссылок с внешних ресурсов.

Если же сайт не раскручен и не имеет должных позиций, то вряд ли имеет смысл возиться с этим всем. В таком случае проще при переносе домена перенести контент на любой подходящий движок и начинать раскрутку сайта, не заморачиваясь с редиректом.

Предвижу вопрос: а как быть с сайтами, которые используют бесплатный домен от Юкоз? Можно ли перенести такой сайт с Юкоза на другой хостинг?

Я пока такого опыта не имею. Думаю, что можно. Для этого понадобятся деньги и время. Деньги – на регистрацию своего домена, который нужно прикрепить к сайту на Юкозе. А время – на то, чтобы поисковики начали индексировать сайт по новому домену. Сколько уйдет на это времени? Думаю, что не меньше, чем полгода. А то и больше.

Я начал такой эксперимент. К двум своим сайтам, когда-то еще созданным на Народе, а ныне перенесенным на Юкоз, месяц назад я прикрепил домены, приобретенные в зоне .ru . В настройках сайта указал, что поисковики должны индексировать сайт только по новому домену, а с юкозовского домена посетители автоматически перенаправляются на домен второго уровня.

При такой настройке Юкоз автоматом перенаправляет со старых адресов на новые. Но… Есть большое НО в этом деле. Юкоз перенаправляет только на динамические страницы. А вот статические страницы, которые создавались еще на Народе, под перенаправление не подпадают. И это есть очень нехорошо со стороны Юкоза. Лично мне это не нравится.

Получается, если посетитель приходит по старой ссылке на страницу, созданную в системе Юкоз, то он автоматом перенаправляется на эту страницу уже в новом домене. А вот если тот же посетитель приходит по старой ссылке на html страницу, то он так и попадает на нее по старому адресу – то есть в домене, который бесплатно дал Юкоз (или еще ранее этот домен дал Народ или Яндекс).

Итак, стоит задача: дождаться, когда поисковики прекратят индексировать мои сайты по “народным” доменам и начнут полностью индексировать по моим доменам второго уровня. Когда это произойдет (если вообще такое произойдет), останется проделать работу, аналогичную описанной выше.

Остается ждать. Что из этого получится, обязательно расскажу.