fbpx

Перенос сайта с VPS на VPS — проблемы с SSL сертификатом

У меня для нескольких сайтов есть один VPS сервер. Он расположен у Российского VPS провайдера ihor.ru, так как основной сайт был сделан именно под пользователей из России. Но проект стал сильно зависеть, от договоров с компаниями и мне его пришлось продать на бирже сайтов, человеку живущему рядом с заказчиками.

Еще у меня на этом VPS, есть сайт ddslook.com который ранее был личным блогом, но теперь он стал новостным сайтом по теме: электроника. Нацелен сайт на целевую аудиторию из США, поэтому было принято решение купить VPS у Digital Ocean для уменьшения отклика до сайта. Кстати если перейти по этой ссылке, то на баланс Digital Ocean  дадут 10 долларов, а это два месяца использования стартового VPS сервера. 

I - переноса сайт

Останавливаем (если это возможно) создание контента. В моем случае его генерирует бот, и мне всего нужно было нажать паузу. Потом нужно определиться с типом переноса, поскольку сайт на WordPress, можно перенести с помощью плагинов. Но в моем случае сайт больше 1 Гб и бесплатно это не проделать. Следовательно пришлось тащить по FTP следующие папки, предварительно сделав архив:  plugins.tar.gz, themes.tar.gz, uploads.tar.gz и сделать экспорт базы данных через phpmyadmin.

II - подготовка нового VPS

На Digital Ocean можно запускать VPS сразу с предустановленными программами. Там это капли, что ли называется. 

То есть можно выбрать LAMP или LEMP и не мучится, как это делали для другого сайта на VPS ihor. Можно кстати сразу выбрать с установленным WordPress, это если переносить через плагин. Но мне этот вариант не очень нравится, все равно. При ручном переносе отчищаешь сайт от мусора, который появляется за годы установки/переустановки плагинов. 

Установка WordPress

В моем случае был выбрана пред установка LAMP, 2 минуты и мы в консоли сервера. Сам процесс установки расписывать нет смысла, тем более он есть в доках Digital Ocean на русском языке. 

Импорт базы данных

Можно через консоль, можно phpmyadmin поставить, такая инструкция тоже есть в официальной документации. Не суть важно, главное импортируем БД сайта в созданную новую БД. Запоминаем логин и пароль. 

Копирование файлов

Отправляем на новую VPS, в папку var/www/ваш-сайт/wp-conten архивы созданные  ранее: plugins.tar.gz, themes.tar.gz, uploads.tar.gz Удаляем старые такие папки и распаковываем свои.

Активируем сайт на Web-сервере

Копируем дефолтный конфиг Web-сервера, изменяем его под свой сайт. Активируем сайт и как бы все готового для первого запуска. На своем компьютере в hosts фале делаем запись новый IP + домен. Чистим кеш в браузере, заходим. Открылся, по http, ой забыли про SSL сертификат. И вот тут меня понесло….

III - установка/перенос SSL сертификата

Для начала попробовал установить бесплатный SSL сертификат проверенным методом.  Не тут то было, появилась надпись следующего содержания:

Вылечилось это так:

Потом вроде все заработало, скрипт стал выполняться, но после введения домена и нажатия Enter появилась следующая надпись:

Ну да, логично, домен не резольвится еще по новому IP адресу. Только наш локальный компьютер знает его новый IP адрес. Попробовал просто взять сертификат со старого сервера. Закинул в папку, добавил руками настройки 443 порта в конфиг. Проверяю, ошибка сертификата. Не понятно почему. Дальше стал искать способы проверки без привязки к DNS записи. Убил весь день, но так ничего и не смог сделать. Тупо мозгов не хватило. Хотя вариантов на официальном сайте пруд пруди.

Но во время чтения инструкций, нарвался на информацию о том, что когда у тебя на VPS много других сайтов. Клиент Certboot пихает все сайты в  один файл сертификата.  Проверяю, точно:

На старом сервере делаю выпуск нового сертификата только для ddslook.com проверяю, все норм:

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

Когда летом буду переносить сайт dds.kz с ihor на oblako.kz, для того что бы стать ближе к Казахстанским пользователям. Эта памятка мне очень пригодится ))

Добавить комментарий

Ваш e-mail не будет опубликован.