Здравейте приятели,
В този пост ще ви представя ръчният начин за преместване (мигриране) на WordPress уебсайт на нов хостинг.
Тази процедура не се препоръчва на начинаещите потребители, независимо от факта, че не представлява нещо сложно. Все пак според мен е по-добре да не се опитвате да я прилагате, ако сте наистина начинаещ.
За да се справите с цялата процедура по преместване на вашия WordPress уебсайт на нов хостинг, вие ще се нуждате от следното:
- Генериран ръчен бекъп на WordPress, който задължително да включва директории и файлове + експорт на базата данни. Това е най-добрият вариант, независимо, че е допустимо и архив, който сте получили от плъгин за бекъп или от автоматизираните резервни копия на стария (текущия) хостинг. Можете да се запознаете с темата за създаване на бекъп на WordPress от тази статия в Optibg.com. Изгледайте и видео урок № 34 – Ръчен бекъп на WordPress.
- FTP клиент като FileZilla (или подобен).
- Текстов редактор – Notepad++ или аналогичен.
- Достъп до настройките на текущия домейн.
- Опционално: достъп до настройките на новия домейн (в случай, че сайтът ще бъде преместен на нов хостинг и с ново домейн име).
- SSH и FTP достъп до новия хостинг
- Опционално: инсталация на XAMPP, ако ще премествате сайта на локален хостинг за тестови цели.
- Достъп до phpMyAdmin на новия хостинг (реален или локален).
А сега нека да преминем към стъпките по ръчното преместване (мигриране) на WordPress на нов хостинг:
Warning!
Стъпка 1: Преместване на файловете и директориите на WordPress на новия хостинг
След като разполагате с генерирания бекъп, сега е време да го използвате с цел мигриране. Ако бекъпът е под формата на архив, то можете да постъпите по един от двата начина:
- Ъплоуд на архива на новия хостинг чрез FTP (за локален хостинг просто копиране в новата поддиректория в htdocs) и разархивирането му чрез SSH достъп (за реален хостинг) или чрез архиватора, който използвате (за локален XAMPP хостинг);
- Предварително разархивиране на файловете локално и качването им чрез FTP (на новия хостинг) или копирането им в новата поддиректория в htdocs (при локален XAMPP хостинг);
Без значение какво сте избрали файловете и директориите вече следва да са успешно поставени на новия хостинг.
Стъпка 2: Коригиране на правата и ролите на качените файлове (приложимо за реален хостинг)
Достъпете хостинга чрез FTP програмата и се погрижете всички WordPress директории да бъдат с права: 755 или 750. Всички WordPress файлове следва да са с права: 644 или 640 (с изключение на wp-config.php, който е добре да е 440 или 400). В повечето случаи това ще е достатъчна дейност по тази стъпка.

Настройка на права за четене, запис и изпълнение чрез FileZilla
При определени обстоятелства ще е необходимо да работите с SSH (приемаме, че хостинга е на Линукс базирана ОС) за задаване на правата. В такъв случай проследете и кой потребител и коя група от потребители следва да бъде зададена. Можете да видите текущите настройки за тези елементи чрез командата:
ls -all
След това с помощта на chown (повече инфо ще откриете в нейния manual) следва да зададете за всички директории файлове принадлежност към този потребител и група.
Промяната на правата за директориите и файловете става с помощта на chmod (линк към manual). А в тази статия ще откриете как с една команда да промените правата на всички файлове в дадена директория (и нейните поддиректории) както и правата само на всички директории и поддиректории.
Отново с ls -all проверете дали те успели да направите всички настройки за chown и chmod.
Стъпка 3: Задаване на настройки към доймена за новия хостинг
Ако ще запазвате стария си домейн то тук следва да влезете в неговите настройки и да смените всички A записи и MX записи. Следва да знаете че е възможно да отнеме до 48 часа преди този домейн изцяло да насочва към новия хостинг.
Ако няма да ползвате същия домейн, а ще заложите на нов, тогава насочете неговите настройки към хостинга (освен, ако не сте го закупили от същия хостинг доставчик, тогава тези настройки вече са приложени).
За локален XAMPP хостинг тази стъпка не е приложима.
Стъпка 4: Импортиране на базата данни в phpAdmin на нови хостинг
Преди да продължите се убедете, че в php.ini е позволено да качвате по-големи по размер файлове. Вашата база данни може да надхвърля размера по подразбиране, затова поставете някаква стойност от порядъка на 100-150 мб. При реален хостинг ще имате възможност да редактирате тези опции чрез админ панела или cPanel.
При XAMPP следва да откриете php.ini в инсталационната директория и да с помощта на текстовия редактор да промените upload_max_filesize по следния начин:
upload_max_filesize=150M
След това трябва да запазите файла и да рестартирате модулите на XAMPP.

Кликнете тук, за да започнете редакция на PHP.ini
Отворете phpMyAdmin. Създайте нова база данни и я кръстете по избран от вас начин. След това я изберете и кликнете на таба Import. Изберете експортирания файл от старата база данни и го импортирайте. В зависимост от файла и скоростта на връзката това може да отнеме известно време.
След като импортът приключи отворете wp-config.php с помощта на текстовия редактор и FTP. Възможно е да използвате и nano / vi чрез SSH.
Проверете данните за DB_NAME, DB_USER и DB_PASSWORD. Коригирайте ги спрямо настройките на новия хостинг. За XAMPP DB_USER трябва да е root и да няма парола. Запазете файла и излезте от текстовия редактор.
Стъпка 5: Стартиране на WordPress на новия хостинг (приложимо само при запазване на домейна и употреба на реален хостинг)
След като домейнът е насочен към новия сървър следва да можете да го достъпвате чрез него. Ако това не е възможно поради периода на мигриране на DNS записите, то следва да редактирате hosts файла на вашия компютър, с цел достъпване на сайта от ваша страна.
За Windows следва да редактирате като админ: C:\Windows\System32\drivers\etc\hosts
За Linux трябва да промените като root: /etc/hosts
Промяната се състои в един кратък запис на нов ред, който представлява:
XXX.XXX.XXX.XXX primeren_domain.com
На мястото на XXX поставете цифрите от IP адреса на новия сървър, а на мястото на primeren_domain.com напишете вашето домейн име.
Запазете файла и пуснете ping към домейна. Ако видите отговор от настроеното от вас IP, то имате достъп.
Notice
След като сайтът вече може да бъде достъпен, сега следва да промените още няколко неща преди да го достъпите:
- Изтрийте или преименувайте директорията за плъгина за кеширане, който ползвате. В противен случай може да имате проблеми. След това го инсталирайте и конфигурирайте наново.
- Изтрийте директорията за плъгина за промяна на wp-login.php (ако използвате такъв). Отново ще можете да го инсталирате и конфигурате повторно на по-късен етап.
- Изтрийте .htaccess. След стартиране на WordPress ще имате възможност да генерирате нов файл, както и да го редактирате с цел оптимизация на скоростта.
Горните стъпки биха могли и да бъдат считани като опционални, особено частта с .htaccess. Това обаче е приложимо само, ако сте сигурни, че хостингите са аналогични като настройки.
Вече можете да пробвате да достъпите началната страница на сайта и съответно админ панела чрез wp-login.php. Поздравления! Във вашия случай миграцията приключи!
Стъпка 6: Стартиране на WordPress на новия хостинг и с нов домейн (или стартиране от XAMPP локален хостинг)
Ако новият домейн не е автоматично насочен към новия сървър приложете информацията в стъпка 5, свързана с hosts файла. Задължително приложете и премахването на описаните в нея директории и файлове.
Сега следва да се въоръжите с търпение! Без значение дали ще боравите с XAMPP или с реален домейн и хостинг следва да преминете през няколко потенциално проблематични стъпки:
- Отворете wp-config.php и добавете следните два реда в него:
define('WP_HOME', 'http://localhost/dir'); define('WP_SITEURL', 'http://localhost/dir');
Където на мястото на http://localhost/dir следва да поставите новият домейн, а ако ще ползвате XAMPP на мястото на dir трябва да напишете името на директорията, в която сте поставили файловете на WordPress. Запазете файла.
- В phpMyAdmin отидете на таблица wp_options направете аналогични промени (чрез двоен клик върху името на стария домейн) спрямо описание по-горе адреси:
- siteurl
- home
Когато приключите с редакцията просто кликнете един път извън кутията със записа и промените ще бъдат запазени автоматично.
- Изтеглете плъгина Search & Replace от WordPress.org. Разахивирайте го и качете/поставете директорията му в wp-content/plugins.
След тези стъпки можете да достъпите сайта и да влезете в админ панела. От там активирайте плъгина Search & Replace и отидете в Tools- > Search & Replace. Изберете табът Search & Replace и направете следните настройки:
- В полето Search for изпишете стария домейн (с http:// или https://)
- В полето Replace with изпишете новия домейн или пълния път към директорията на XAMPP (вижте примера от wp-config.php). Отновo използвате http:// или https:// за новия домейн (за XAMPP е само с http://)
- По-долу ще видите списък с таблиците в базата данни. Под това поле има отметка за избор на всички тях – кликнете на нея.
- Махнете отметката от Dry run.
- Изберете радиобутона Save changes to Database
Започнете процедурата и се заредете с търпение – това може да отнеме известно време.

Визуално представяне на по-горните стъпки, с цел подготвяне на базата данни на WordPress за работа с нов домейн на нов или съществуващ хостинг.
Когато всички записи в базата данни са презаписани с новия домейн/локална директория, следва да отидете на Settings -> Permalinks и да запазите повторно структурата на URL адресите.
След това проверете дали всичко по сайта е коректно и инсталирайте плъгините за кеширане и промяна на wp-login.php. Също така създайте и редактирате .htaccess файла.
С това миграцията следва да е успешна! Поздравления!
Имайте предвид, че част от тези стъпки могат да ви бъдат от полза и само при смяна на домейна, без да е наложително преместване на друг сървър.
Ако имате въпроси, за мен ще е удоволствие да се опитам да ви помогна. Можете да ги отправите в една от формите за коменатар по-долу или по един от начините, описани на страницата ми за контакти.
До нови срещи, приятели!