Преместване на WordPress сайт на нов домейн или HTTPS без счупени връзки
Преместване на WordPress сайт стъпка по стъпка: копие, смяна на адреса, 301 пренасочвания и Search Console, за да запазите позициите си в търсачките.

Преместването на WordPress сайт на нов адрес запазва позициите Ви, ако всеки стар адрес води с trwaен (постоянен) сървърен 301 или 308 към точния нов адрес. (Google Search Central, MDN Web Docs (Mozilla)) Google препоръчва пренасочванията да остават поне една година. Работата отнема около два-три часа за малък сайт, а търсачките привикват към промяната за седмици.
Накратко: - Преди всичко направете резервно копие на файловете и на базата данни. (WordPress.org Developer Resources) - Адресът се сменя в Настройки › Общи (Settings > General), и в двете полета. - Смяната на домейн се обявява в Search Console с инструмента Change of Address, а преминаването към HTTPS не се обявява. (Google Search Console Help) - Пренасочванията се пазят поне 180 дни, а по-добре над година. (Google Search Central) - Верига от повече от 3 прехода е грешка в плана.
Какво е различното при смяна на домейн и при HTTPS
Смяна на домейн е преместване от един адрес към друг, например от стара-фирма.bg към нова-фирма.bg. Преминаването към HTTPS променя само началото на адреса, но за търсачката и то е нов адрес, затова се нуждае от същите пренасочвания. (Google Search Central)
Разликата е в една стъпка. Инструментът Change of Address в Search Console е за смяна на домейн или поддомейн, но не и за http към https, нито за www към без www. (Google Search Central, Google Search Console Help) Наш извод: при HTTPS няма какво да „съобщавате“ на Google, а грешките се правят в пренасочванията и в адресите вътре в съдържанието.
Ако местите само сървъра, а адресът остава същият, не е нужно нищо от това. Тогава е подходящо ръководството за прехвърляне на сайт на нов хостинг. Дори Change of Address не се използва при смяна само на хостинг. (Google Search Console Help)
Резервно копие и подготовка преди първата промяна
Копирайте всички файлове (качени файлове, добавки, теми) и изнесете базата данни. (WordPress.org Developer Resources) Запазете оригиналите, докато не проверите новия сайт.
Google съветва да променяте едно нещо наведнъж и да изберете период с малко посетители. (Google Search Central) Не съвпадайте смяната на домейна с нов дизайн или с нова структура на адресите.
Добавете и потвърдете в Search Console всички варианти на стария и на новия сайт, включително с www и без www. (Google Search Central, Google Search Console Help) Първите стъпки са описани в ръководството за Google Search Console.
Как се сменя адресът в WordPress и в базата данни
Отворете Настройки › Общи (Settings > General) и сменете „Адрес на WordPress“ и „Адрес на сайта“ с новия. (WordPress.org Developer Resources) След промяната старият сайт може да върне грешка 404, което е очаквано. Изтеглете файловете и базата отново, за да имате копие с новите адреси.
Старите адреси остават и в съдържанието. Обикновено замяната в базата не бива да е проста замяна на текст, защото темите и джаджите пазят дължината на низовете и промяната в дължината чупи тези записи. (WordPress.org Developer Resources) Ползвайте инструмент, който разпознава сериализирани данни: добавката Better Search Replace или командата search-replace на WP-CLI.
Не пипайте колоната guid в таблицата wp_posts, иначе четците на емисии ще броят старите публикации за нови. (WordPress.org Developer Resources) След замяната прегледайте менютата (Облик › Менюта) и джаджите (Облик › Джаджи) и потърсете в шаблоните на темата адреси, записани на ръка.
Пренасочвания 301 и 308 от стария към новия адрес
Сървърното пренасочване е най-надеждният начин търсачката да разбере преместването. (Google Search Central) Ползвайте 301 за обикновени страници, а 308 само когато има заявки, различни от GET. (MDN Web Docs (Mozilla))
На всеки стар адрес съответства точно един нов. Не пращайте стотици адреси към началната страница, защото това Google не препоръчва. (Google Search Central) Целта е пряко пренасочване без междинни спирки: Googlebot следва до 10 прехода, но при повече от 3 качеството пада. В Nginx правилото е return 301 https://новият-домейн$request_uri;, а в Apache се пише Redirect permanent. (MDN Web Docs (Mozilla)) Без думата permanent Apache праща 302, което е временно пренасочване, а Google препоръчва за преместване да се ползват постоянни. След смяна на .htaccess запазете отново постоянните връзки в Настройки › Постоянни връзки (Settings > Permalinks). (WordPress.org Developer Resources)
Преминаване към HTTPS на сайт на WordPress
Първо инсталирайте TLS/SSL сертификат на сървъра и настройте виртуален хост за защитения адрес. (WordPress.org Developer Resources) Едва след това сменяте адресите в WordPress, а старите http адреси трябва да пренасочват към новите по същите правила, както при смяна на домейн. (Google Search Central, WordPress.org Developer Resources) Как домейнът сочи към сървъра, е обяснено в материала за DNS.
След това сменете и двата адреса в Настройки › Общи на https://. (WordPress.org Developer Resources) За входа и администрацията добавете define( 'FORCE_SSL_ADMIN', true ); във wp-config.php. (WordPress.org Developer Resources) Старата константа FORCE_SSL_LOGIN е отхвърлена още от версия 4.0.
Ако сайтът е зад обратен прокси, който сам обслужва SSL, настройките могат да предизвикат безкрайно пренасочване. (WordPress.org Developer Resources) Решението е сървърът да разчита на заглавието X-Forwarded-Proto.
Как да проверите, че връзките не са счупени
Включете пренасочванията и проверете в браузъра няколко стари адреса, включително снимки и файлове за изтегляне. (Google Search Central) Канонични адреси, вътрешните връзки и картата на сайта (sitemap) трябва да сочат към новия адрес.
В Search Console изпратете новата карта на сайта и махнете старата. (Google Search Central) За смяна на домейн подайте Change of Address за всеки потвърден вариант на стария домейн, но едва след като пренасочванията работят. (Google Search Console Help) Инструментът проверява и 301 на няколко страници.
Следете броя индексирани страници, заявките и сървърните журнали. Трафикът на стария сайт трябва да пада, а на новия да расте. (Google Search Central) Колебания в позициите по време на преместването са нормални, както и предупреждения в картата на сайта за пренасочени адреси.
Срокове за пренасочванията и за стария домейн
Пренасочванията остават поне 180 дни, а Google препоръчва стария домейн да е регистриран най-малко година. (Google Search Console Help) След 180 дни Google третира стария сайт като несвързан с новия.
Малките и средните сайтове обикновено се местят изцяло за няколко седмици. (Google Search Central) Ако преместването се провали, може да го отмените в рамките на 180 дни чрез бутона Cancel Move на стария сайт. (Google Search Console Help)
Защитете и новия вход в администрацията с двуфакторна автентикация още в деня на преместването.
Не започвайте втора смяна на домейн преди изтичането на 180-дневния срок: Google не препоръчва вериги от премествания от А към Б към В. (Google Search Console Help)
Източници
- Site move with URL changes — Google Search Central
- Change of Address tool — Google Search Console Help
- Migrating WordPress — WordPress.org Developer Resources
- Administration Over SSL (HTTPS) — WordPress.org Developer Resources
- Redirections in HTTP — MDN Web Docs (Mozilla)
Вижте и това
Фактите са по източниците, посочени под материала. Текстът е на Редакцията на WebMaster.bg. Редакционна политика · Забелязахте грешка? Пишете ни на kontakt@webmaster.bg.