Контакти

Htaccess редирект на інший домен 301. Налаштування послуги «Перенаправлення домену. Редирект на нову сторінку

Періодично, до нас звертаються наші клієнти, з питанням, як зробити переадресацію сайту з одного домену на інший. Як правило, це питання задають в двох варіантах:

    сайт відкривається по 2 адресами:www.mysite.ua іmysite.ua (Для пошукових машин це істотна різниця і вони сприймають 2 адреси, як 2 різних сайту), тому необхідно зробити щоб при зверненні до сторінок сайту зwww,йшла переадресація на такі ж сторінки сайт безwww,наприклад з http: // mysite.ua/ News / наhttp://www.mysite.ua/news/ ( або навпаки).

    у вас є кілька доменів, основний mysite.ua і альтернативний my-site.ua і / або кириличний мойсайт.укр. Необхідно, щоб при наборі в браузері адреси my-site.ua і / або мойсайт.укр відвідувач автоматично перенаправляти на сайт mysite.ua.

1. Перенаправлення доменуу файлі.htaccess .

1.1. З www-домена на основний домен

Якщо на вашому сервері включений модульmod_rewrite , То того, чоб налаштувати переадресацію з адрес, що починаються з www на аналогічні без www, потрібно в файлі .htaccess, в кореневій папці www вашого сайту прописати наступні рядки:

RewriteEngine On RewriteCond% (HTTP_HOST) ^www .(.+)$ RewriteRule ^ (. *) $ Http: //% 1 / $ 1

1.2. З основного домену на www-домен

RewriteEngine On RewriteCond% (HTTP_HOST)! ^ (www .) RewriteRule ^ (. *) $ Http: //www .% (HTTP_HOST) / $ 1

1.3. З одного домену на інший

Завдання може бути вирішена так само як і перша, для настройки перенаправлення відвідувачів з одного доменного domain1.ua імені на іншеdomain2.ua ви можете використовувати відповідні директиви у файлі.htaccess .

Зробити на старому доменіdomain1.ua файл.htaccess, з вмістом:

RewriteEngine On RewriteCond% (HTTP_HOST)domain1. ua RewriteRule (. *) Http: //domain2. ua /$1

1.4. Перенаправлення з декількох доменів

Необхідно зробити переадресацію з доменів domain1.ua і www.domain1.ua на новий домен domain2.ua, Для це впишіть:

RewriteCond% (HTTP_HOST) ^ domaim1 \. ua RewriteRule ^ (. *) $ Http: / / domain2.ua /$1 RewriteCond% (HTTP_HOST) ^ www. domain1 \. ua RewriteRule ^ (. *) $ http: // domain2.ua /$1

Аналогічно можна робити перенапрвленіе з domain.ua на domain.com і т.п.

Однак якщо ви розміщуєте на тарифному плані з обмеженим числом доменів, включених в тариф, то настройка сайту з одним тільки файлом.htaccess позбавить вас ще одного домену в квотою по тарифу, що не завжди прийнятно. В цьому випадку можна скористатися спеціальним сервісом панелі управління хостингом.

2. перенаправлення домену в панелі управління хостингом

На прикладі панелі управління «cPanel»

Ви можете вибрати варіанти перенаправлення - 301 або 302.

301 редирект - це постійне перенаправлення. Тобто при установці 301 редиректу всім, в тому числі пошуковим машинам, буде повідомлено, що запитувана сторінка назавжди «переїхала» на нову адресу. Таке перенаправлення необхідно, наприклад, при переїзді з одного доменного імені на інше. Таким чином, ви не втратите пошуковий трафік, а пошукові машини будуть сповіщені про зміну адреси.

302 редирект - це тимчасове перенаправлення. Таким чином, користувачі, викликаючи сторінку, на яку встановлено 302 редирект, отримуватимуть відповідь з зазначеного в редирект адреси. Однак в пошукових машинах колишній адреса залишиться і буде утримувати свої позиції.

Також, можна вибрати опції перенаправлення, пов'язані з синонімом сайту з www. Зверніть увагу, що переадресацію з домену http://www.site.ua/ на http://site.ua/ засобами cPanel зробити не вдасться. Подібний редирект створюється за допомогою файлу .htaccess.

Управління перенаправленням виглядає досить стандартно. Ви можете видалити створений параметр:

3. Перенапрвленеі кіріллічнскій доменів

Переадресацію кірііліческіх доменів нічим не відрізняється від звичайного (на латиниці). Просто необхідно використовувати конвертер punycode.

Punycode - це метод перетворення символів, що відносяться до стандарту Unicode, в послідовність символів, що містять тільки символи в кодуванні ASCII, а саме 26 букв латинського алфавіту (a-z), цифри (0-9) і символ дефіса (всього 37 символів).

Домени, що містять символи національних алфавітів називають IDN-доменами. Деякі сервіси не підтримують IDN уявлення доменів. Тому не працює домен УКР або інші IDN-домени. В такому випадку необхідно використовувати ім'я домену після Punycode-конвертації.

Наприклад, домен http: //мойсайт.укр/ після кодування (можнаскористатися сервісом http://wwhois.ru/punycode.php)стає , Його-то ми і вписуємо в уже знайомий код

RewriteEngine On RewriteCond% (HTTP_HOST)http: //xn--80arbjktj.xn--j1amh/ RewriteRule (. *) Http: //domain2. ua /$1

або до відповідного рядка в панелі управління.

Першою причиною зміна адреси сайту може бути, якщо старий домен потрапив під фільтр або погано індексується, то можливо зміна адреси сайту вирішить цю проблему. Другою причиною може банальне прагнення і бажання змінити домен на більш привабливий. У цій статті ми розглянемо алгоритм зміни адреси домену. Як це зробити правильно, щоб не втратити трафік і позиції.

Покрокова інструкція по зміна адреси сайту

1. Скопіюйте повністю всі файли сайту на новий домен (при цьому зі старого домену поки нічого не видаляйте). Бажано зберігши всю структуру сайту, інакше позиції можуть змінитися досить сильно.

2. Пропишіть в обох robots.txt директиву host з адресою нового домену:

User-agent: * Host: newdomen.ru

Це треба зробити як на старому домені, так і на новому:

olddomen.ru/robots.txt newdomen.ru/robots.txt

3. В Яндекс Вебмайстер зайдіть в розділ "Налаштування індексування" "Переїзд сайту" і вкажіть адресу нового домену.

В Google Веб-майстер також є опція "зміна адреси сайту".

4. Після зміни бажано дочекатися поки пошукові системи склеять ці домени.

5. Потрібно зробити 301 редирект зі старого домену на новий. Як це зробити читайте далі.

301 редирект зі старого домену на новий

Правильніше і найпростіше це робити через файл.htaccess (розташовується в корені сайту). Цей код потрібно розмістити на старому сайті, на новому домені розміщувати його не потрібно!

Options + FollowSymLinks RewriteEngine On RewriteCond% (REQUEST_FILENAME) robots.txt $ RewriteRule ^ ([^ /] +) $ 1 [L] RewriteCond% (HTTP_HOST) ^ oldomen \\ .ru RewriteRule ^ (. *) $ Http: // newdomen. ru / $ 1 RewriteCond% (HTTP_HOST) ^ www.olddomen \\ .ua RewriteRule ^ (. *) $ http://newdomen.ru/$1

Або другий варіант

Options + FollowSymLinks RewriteEngine On RewriteCond% (REQUEST_FILENAME) robots.txt $ RewriteRule ^ ([^ /] +) $ 1 [L] RewriteRule (. *) Http://newdomen.ru/$1

Редирект 301 або 301 Permanent Redirect - це правило, яке автоматично переадресовує користувача на іншу адресу сторінки. З його допомогою ви можете склеїти старі сторінки з новими або перенести сайт на інший домен, прибрати багато дублі з сайту і багато іншого. Вкрай корисна річ - тому потрібно навчитися робити його правильно!

Так само при 301 редирект відбувається склеювання тИЦ (читаємо) і PR - тобто ви можете зберегти старе значення на нову адресу. Ви можете анітрохи не втратити в очах пошукових систем. Давайте перейдемо від теорії до практики.

Як налаштувати 301 редирект в htaccess

Файл під названіем.htaccess знаходиться в головній категорії вашого сайту. Це службовий файл, в якому ми будемо вказувати правила склеювання. Відкриваємо файл блокнотом (рекомендую notepad ++, Щоб не було проблем з кодуванням). Не забувайте, що це один з важливих пунктів в.

Загальний шаблон для.htaccess, яким ми будемо користуватися:

Options + FollowSymLinks RewriteEngine On # Тут вказуємо правила

Всі правила записуються у вигляді:

RewriteCond [Рейтинг] [Умова] [Прапори] RewriteCond [Рейтинг] [Умова] [Прапори] RewriteRule [Шаблон] [Підстановка] [Прапори]

Тепер безпосередньо займемося переадресацією і розберемо конкретні приклади.

Я вже писав статтю про, але про всяк випадок тут узагальню, щоб вам було зручніше користуватися сторінкою.

Приклади використання 301 редіректу

Редирект з index.php на головну

Щоб налаштувати його вам потрібно прописати в вашому файлі наступний код, який буде перенаправляти відвідувачів з адреси site.ru/index.php на site.ru:

RewriteCond% (THE_REQUEST) ^ (3,9) \\ / index \\ .php \\ HTTP RewriteRule ^ index \\ .php $ http://site.ru/

Якщо вам так само потрібно зробити переадресацію з index.html, то просто в коді вище замініть .php на .html

Склеюємо аліаси сайту

Якщо у вас кілька доменів і ви хочете все їх перенаправляти на основний сайт, то використовуємо:

RewriteCond% (HTTP_HOST) ^ vash-sait.com $ RewriteCond% (HTTP_HOST) ^ www.vash-sait.com $ RewriteCond% (REQUEST_URI)! ^ / Robots. * RewriteRule ^ (. *) $ Http: // vash- sait.ru/$1

Зверніть увагу на перші 2 рядки, там зазначено дзеркало в зоне.com, якщо у вас інша або кілька зон, то додаємо правила.

Редирект з www на без www

Цей спосіб я вже описував раніше, але повторюся. Для того, щоб склеїти дзеркала і вибрати основним домен без www прописуємо:

RewriteCond% (HTTP_HOST) ^ www.site \\ .ru $ RewriteRule ^ (. *) $ Http://site.ru/$1

Редирект з домена без www на домен з www

Ця дія протилежне попередньому, тільки основне дзеркало тут www.site.ru:

RewriteCond% (HTTP_HOST) ^ site \\ .ru $ RewriteRule ^ (. *) $ Http://www.site.ru/$1

301 редирект сторінок зі слешем і без

Це ще один вид дублів, тут ми склеим сторінки site.ru/category/ і site.ru/category, як бачите, в кінці другого урла не варто слеша:

RewriteCond% (REQUEST_FILENAME)! -D RewriteCond% (REQUEST_URI) ^ (. +) / $ RewriteRule ^ (. +) / $ / $ 1

Якщо вам потрібно навпаки залишити слеш в кінці урла, то вам потрібен цей варіант:

RewriteBase / RewriteCond% (REQUEST_FILENAME)! -F RewriteCond% (REQUEST_URI)! (. *) / $ RewriteRule ^ (. * [^ /]) $ $ 1 /

Якщо у вас з якоїсь причини з'явилися урли типу site.ru/category//article.html, то юзаем код:

RewriteCond% (REQUEST_URI) ^ (. *) // (. *) $ RewriteRule. % 1 /% 2

де, «//» можна замінити на «-» або будь-які здвоєні символи в урле.

Масова заміна категорії

Буває, що ви перейменували категорію, а за нею закріплені тисячі урлов. Щоб не постаріє під час написання тисяч однакових перенаправлень юзаем:

RewriteRule ^ (. *) / Old-category /(.*)$ $ 1 / new-category / $ 2

RewriteRule old-category /(.*) / old-category / $ 1

Редирект на нову сторінку

Найпростіший редирект зі сторінки на сторінку, для це просто пропишіть так:

Redirect 301 /old-post.html http://new-site.ru/new-post.html

Де old-post.html - це ваша стара сторінка, А new-site.ru/new-post.html - це нова сторінка і вона може бути на будь-якому домені (включаючи ваш поточний домен).

Редирект для url з параметрами

Сторінки з параметрами редирект складніше, візьмемо приклад http://site.ru/page.php?sort\u003darticles. Параметр тут «sort \u003d articles». Код буде наступним:

RewriteCond% (QUERY_STRING) sort \u003d articles RewriteRule. * Http://site.ru/page.php?

Працюємо з розширеннями

Убіраем.html з url (для удаленія.php не забудьте замінити $ 1.html на $ 1.php):

RewriteRule ^ (([^ /] + /) * [^.] +) $ /$1.html [L]

Меняем.php на.html в урлах і навпаки (не забуваємо поміняти місцями в коді):

RedirectMatch 301 (. *) \\. Php $ http: //www.site.com$1.html

Правильний 301 редирект на новий домен

Цей пункт я виділив окремо, тому що він більше пов'язаний з переносом на інший домен. Тут є важливий момент, Це не упустити директиву по виправленню Роботс - вона вказана на 3 рядку коду.

RewriteCond% (REQUEST_FILENAME) robots.txt $ RewriteRule ^ ([^ /] +) $ 1 [L] RewriteCond% (HTTP_HOST) ^ site \\ .ru RewriteRule ^ (. *) $ Http://new-site.ru/$1 RewriteCond% (HTTP_HOST) ^ www.site \\ .ru RewriteRule ^ (. *) $ http://new-site.ru/$1

За допомогою таких не хитра махінацій ми позбудемося дублів сторінок, тим самим покращивши нашу внутрішню оптимізацію і відповідно якість сайту.

Якщо у вас з'явилися якісь питання, пишіть в коментарі - будемо розбиратися 🙂

Добрий день мої дорогі слухачі / читачі / доглядачі

Сьогодні я розповім вам про правильну склейку доменів і 301 редирект через файл htaccess.

Зізнаюся чесно - давненько я вже не писав, вся справа в моєму особистому часу - на жаль, воно не гумове і його катастрофічно не вистачає в останнім часом. Дружина в пологовому будинку, так що син і все домашнє господарство лежить на мені, а якщо врахувати, що я ще проводжу тренінг і у мене є свої учні - самі можете уявити - скільки у мене часу.

Але давайте ближче до справи!

Чому так важливо, що б сайт був склеєний, точніше домен?

Справа в тому, що пошукові машини (на кшталт Яндекс і Google) бачать не один сайт, а два. пояснюю:

Припустимо, у мене є домен seregakolt.com, і пошукові системи бачать їх два.

перший seregakolt.com

другий www.seregakolt.com

Тобто один і той же сайт з www і без - пошуковими системами сприймається їх як два різних ресурсу.

Які у цього можуть бути наслідки? Так як там не є сумні!

Але що стосується пошукових систем - вони будуть сприймати їх як посилання на різні сайти і ви будете просто втрачати частину посилань! Тобто частина PR і ТИЦ будуть переходити на інший домен.

Виходить, що якщо ви будете розкручувати сайт без www - а пошукова система першим знайшла сайт з www, то сайт без www буде сприйматися як дублікат - і всі ваші старання будуть марними, так як він просто випаде з рейтингу !!!

Таким чином ви будете втрачати відвідувачів!

Природно, коли ви склеїти свій домен, всі посилання будуть приводити на один сайт, з www - або без. Як ви вже самі виберете. І пошукова система буде сприймати все як один сайт, зберігаючи його авторитет.

Я знаю, що це чистої води тупість, але вже так влаштовані наші пошукові системи, а раз вони призводять левову частку відвідувачів - значить, їх вибагливий характер і безглузді заскоки потрібно враховувати і ставитися до них серйозно!

Як працює 301 редирект і склейка доменів?

Все банально просто - пошукачам вказується головне дзеркало і вони вага посилань переводять на його!

Причому склеїти можна абсолютно різні домени! Тобто якщо у вас сайт був раніше на одному домені, і ви хочете його перевести на інший, але при цьому не втратити посилання, ТИЦ і PR - склейка доменів вам допоможе.

Приклад можете подивитися прямо на цьому тут. Спробуйте набрати і вас все-одно перекине на сайт

І www буде віддалятися з будь-яких посилань на мій сайт. І якщо хтось поставить посилання з www, пошуковик передасть весь її вага домену сайт

Робимо 301 редирект через файл.htaccess

Складного в цьому нічого немає! Все робиться простий правкою (створенням і редагуванням) файлу в звичайному блокноті.

Ті, у кого - можуть спокійно просто редагувати цей файл - він йде в комплекті системи!

Якщо у вас цього файлу немає - тоді ми його просто створюємо, назва файлу .htaccess - без будь-яких розширень!

Можливо, Windows буде випендрюватися і говорити, що треба задати ім'я - тоді створіть цей файл через Total Commander або створіть його в будь-якому редакторі (можна в звичайному блокноті).

У більшості випадків він йде разом з CMS і повинен бути у вас на хостингу в кореневому каталозі сайту.

Якщо його там немає - створюйте і розміщуйте.

Якщо є - просто редагуйте.

Тепер визначитеся - який домен ви хочете зробити головним і в шлях за інструкціями нижче!


Редірет 301 з www на без www:

Відкриваємо цей файл і додаємо в нього наступний код:

Options + FollowSymLinks RewriteEngine On RewriteCond% (HTTP_HOST) ^ www.domain.com RewriteRule ^ (. *) $ Http://domain.com/$1

Зверніть увагу, що останні два рядки повинні йти відразу за рядком RewriteEngine On - це важливо!


І навпаки з без www на з www: RewriteCond% (HTTP_HOST) ^ domain \\ .com $ RewriteRule ^ (. *) $ Http://www.domain.com/$1

Просто замість двох останніх рядків напишіть ці.

Якщо у вас є цей файл, і там містяться якісь з цих рядків, але перед ними стоїть знак # - це значить що рядок закоментований і сили не має.

Приберіть його!


301 редирект з одного домену на інший: RewriteRule (. *) Http://www.newdomain.com/$1

Цю рядок вставляємо замість тих двох.

ОБОВ'ЯЗКОВО:

1. Повинна бути рядок Options + FollowSymLinks

2. Повинна бути рядок RewriteEngine On

3. Рядки з перенаправленням повинні йти ВІДРАЗУ після рядка RewriteEngine On

4. Файл.htaccess називається так, і ніяк інакше!

5. Файл.htaccess повинен знаходитися в кореневому каталозі!

6. Domain.com - не забудьте поміняти на свій домен.

В принципі, це ніби все. Але 301 редирект добре розуміє Google, а ось для Яндекса треба редагувати / створювати інший файл. Так що крок нижче є - обов'язковим!


Склеювання доменів для Яндекса:

Знову ж йдемо в кореневий каталог сайту і шукаємо файл з назвою robots.txt, якщо його немає - створюємо в звичайному блокноті.

У цьому файлі розміщуємо наступний код:

User-agent: Yandex Disallow: Host: domain.com

Якщо у вас цей файл є, а цих рядків немає - значить додайте їх в кінці через абзац.

Вказуєте головне дзеркало в рядку Host - не забудьте поставити свій домен

Для тих, хто замовляє розкрутку у приватних осіб і компаній.

Звичайно, це дуже рідкісний випадок, але все ж ... Попереджений - значить озброєний!

Іноді злісні оптимізатори можуть склеїти свій домен з вашим і розкручувати себе.

І якщо ви через деякий час припиняєте співпрацю, він може спокійно прибрати редирект зі свого домену на ваш і вся розкрутка за ваші гроші дістанеться злодюг.

Причому у вас на сайті може залишитися файл robots.txt з головним дзеркалом на його сайт.

Будьте уважні! І вимагайте постійних звітів робіт.

Дякую за увагу, на зв'язку був Серьога!

Якщо будуть питання - задавайте в коментах.

Послуга «Переадресація домену» (звана також Web-forwarding, URL-forwarding, Web-redirect, HTTP-redirect) дозволяє налаштувати переадресацію з одного домену на інший, а також на веб-сторінку з іншою адресою.

Під час налаштування переадресації використовується 301 редирект.

приклади переадресаций

  • з домена mysite.ru на домен my-new-site.ru;
  • з домена mysite.ru на сторінку my-new-site.ru/shop.

Всі користувачі, які набрали адресу вашого домену (або прийшли на нього за посиланням), потраплять на веб-сторінку, адреса якої ви вкажете в налаштуваннях послуги «Переадресація домену». Використання послуги дозволить вам мати постійна адреса веб-сторінки, який не доведеться міняти при зміні провайдера.

Послуга «Переадресація домену» може також використовуватися при реєстрації додаткового доменного імені для вже існуючого веб-сайту.

Увага

  • Установка SSL-сертифікатів на послугу веб-форвардного неможлива. Тому перенаправлення з https: //Mysite.ru/ не проводиться.
  • Налаштувати перенаправлення з поддомена (наприклад, з subdomain.domain.ru) на будь-яку сторінку неможливо.

Навіщо потрібна переадресація домену?

Як приклад пропонуємо розглянути таку ситуацію:

У вас є домен mycompany.ru, На якому повноцінно працює сайт. На ньому є розділ продукції одного з ваших постачальників. Адреса цієї сторінки: www.mycompany.ru/mybrand/index.html або подібний.

Для кращого просування товару цього постачальника ви купуєте цільове доменне ім'я: mybrand.ru і замовляєте для нього на адресу вже існуючого розділу на вашому основному сайті: www.mycompany.ru/mybrand/index.html.

Тепер відвідувачі можуть набирати прямий адресу сайту бренду mybrand.ru, А ви використовувати цю адресу в прямій рекламі продукції цього бренду. Легше запам'ятати адресу - вище ефективність!

Види Переадресації домену

Одиночне перенаправлення запиту

При цьому способі відвідувачі відразу ж потрапляють на цільову веб-сторінку, яку ви вкажете в налаштуваннях. Фреймів при цьому не створюється, і ваш відвідувач бачить в рядку URL-адресу тієї сторінки, на яку була зроблена переадресація, замість імені переадресовувати домену.

приклад:
  • установлено переадресацію site1.rusite2.ru;
  • site2.ru.

Одиночне перенаправлення з маскуванням адреси у фреймі

В цьому випадку відвідувачі бачать адресу тієї сторінки, з якої відбувається перенаправлення. Веб-сторінка буде знаходитися всередині фрейму, і при всіх переходах по посиланнях усередині цього фрейму в адресі URL відвідувачі будуть бачити доменне ім'я, з якого відбувається переадресація.

приклад:
  • установлено переадресацію site1.rusite2.ru;
  • відвідувачі бачать в рядку браузера: site1.ru.

Технічна довідка

Необхідно пам'ятати, що якщо ви вибираєте «маскування адреси у фреймі», і хочете встановити на вашій веб-сторінці посилання на інші ресурси, в тезі посилання необхідно вказати target \u003d _top. В іншому випадку чужа веб-сторінка також буде відкрита всередині вашого фрейму, і відвідувач буде бачити в рядку браузера URL-адресу вашого домену. Також необхідно мати на увазі, що істинний адресу веб-сторінки, на яку здійснюється перенаправлення, хоча і не відображається в рядку браузера, все ж може бути легко обчислений будь-яким відвідувачем.

Масове перенаправлення всіх сторінок

Всі запити з однієї адреси (наприклад, http: // faq-сайт) будуть перенаправлені на відповідні сторінки іншої адреси. Ви зможете налаштовувати безліч перенаправлень з вашого домену (з різних адрес на базі домену).

приклад

Ви зареєстрували домен newdomain.ru і ваш сайт знаходиться за адресою http://mysite.narod.ru. Послуга дозволить вам перенаправити запити: з newdomain.ru, newdomain.ru/news, newdomain.ru/info і всіх інших сторінок сайту на http://mysite.narod.ru.

Як замовити Переадресацію домену?


Готово! Тепер послуга доступна в вашому Особистому кабінеті.

Як налаштувати Переадресацію домену?

За допомогою послуги «Переадресація домену» ви можете встановити такі види переадресації:

  • одиночне перенаправлення конкретної адреси;
  • одиночне перенаправлення з маскуванням адреси у фреймі;
  • масове перенаправлення всіх сторінок.

Для коректної роботи послуги, для домену повинні бути прописані безкоштовні DNS-сервери ( ns1.сайт і ns2.сайт). Якщо для домену прописані інші DNS-сервери, скористайтеся інструкцією:

Як змінити DNS-сервери?


Готово, ви змінили DNS-сервери. Якщо раніше ви використовували інші DNS-сервери, зміни вступлять в силу в протягом 24 годин.



Сподобалася стаття? поділіться їй