- Когда нужен редирект и какой выбрать
- Вариант 1. Редирект на уровне панели: если вы настраиваете сайт в Timeweb
- Вариант 2. Редирект через .htaccess на Apache в Timeweb
- Вариант 3. Редирект на уровне конфигурации для Nginx (если у вас Nginx)
- Вариант 4. Если редирект нужен из “регистратора доменов”, а не с сайта
- Как проверить, что редирект работает как нужно
- Типичные ошибки
- Итог
Когда нужен редирект и какой выбрать
Редирект делает так, чтобы посетитель и поисковые системы открывали новый адрес вместо старого.
Для переноса домена на другой чаще всего нужен 301 Redirect - постоянная переадресация. Она подходит, когда страница или домен больше не будут использоваться в прежнем виде (для сохранения SEO-истории и корректной склейки дублей). Это описано в материалах Timeweb про 301 редирект и в общих справках по этому статусу.
Источник: Timeweb, “Что такое 301 редирект и как его настроить” - https://timeweb.com/ru/blog/authors/aleksandr-grigorev/articles/chto-takoe-301-redirekt-i-kak-ego-nastroit/
Если редирект временный, используют 302, но это реже нужно при переносе домена.
Источник: там же, раздел “Альтернативные методы переадресации” - https://timeweb.com/ru/blog/authors/aleksandr-grigorev/articles/chto-takoe-301-redirekt-i-kak-ego-nastroit/
Вариант 1. Редирект на уровне панели: если вы настраиваете сайт в Timeweb
Если домены у вас подключены к Timeweb-хостингу (и редирект должен срабатывать на веб-сервере), обычно удобнее настроить его через панель.
В ispmanager (если используете этот контроль)
- Перейдите в раздел “Сайты”.
- Дважды кликните по нужному сайту.
- Откройте “Настройка редиректов”.
- Нажмите “Создать редирект”.
- Укажите:
- код (чаще 301),
- путь (начинается с
/), - URL назначения (например
http://domain2.comилиhttps://domain2.com).
Источник: Timeweb Cloud, “Setting up redirects” (ispmanager) - https://timeweb.cloud/docs/control-panels/ispmanager/setting-up-redirects
Вариант 2. Редирект через .htaccess на Apache в Timeweb
Этот способ подходит, если у вас Apache и вы хотите редирект для всего домена.
Подготовка: убедитесь, что .htaccess и mod_rewrite работают
Timeweb рекомендует:
- создать файл .htaccess в корне сайта (если его нет),
- прописывать правила в блоке <IfModule mod_rewrite.c> ,
- при необходимости включить mod_rewrite и убедиться в его наличии,
- помнить про punycode для кириллических доменов в директивах.
Источник: Timeweb, “Типовые перенаправления” - https://timeweb.com/ru/docs/virtualnyj-hosting/fajl-htaccess/tipovye-perenapravleniya/
Источник: Timeweb Cloud, “Setting up redirects” (Apache/.htaccess и mod_rewrite) - https://timeweb.cloud/docs/unix-guides/setting-up-redirects
Шаги
- Откройте файловый менеджер Timeweb или зайдите по FTP/SSH.
- Найдите файл .htaccess в корне сайта (часто это public_html).
- Если файла нет, создайте его.
- Добавьте правила для редиректа.
Редирект всего домена (все страницы) на другой домен
Добавьте в .htaccess:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain\.ru$ [NC]
RewriteRule ^(.*)$ http://www.new-domain.ru/$1 [R=301,L]
</IfModule>
Что это делает:
- любое обращение к старому домену редиректит на новый домен,
- сохраняется путь после домена.
Источник с примером “Перенаправление на другой домен” (Timeweb, .htaccess) - https://timeweb.com/ru/docs/virtualnyj-hosting/fajl-htaccess/tipovye-perenapravleniya/
Вариант 3. Редирект на уровне конфигурации для Nginx (если у вас Nginx)
Если ваш VDS или окружение использует Nginx, редирект задают в nginx.conf или в конфиге virtual host, в блоке server.
Пример на редирект на другой домен (Timeweb Cloud):
server {
#...
rewrite ^ $scheme://www.new-domain.ru;
#...
}
Источник: Timeweb Cloud, “Setting up redirects (nginx)” - https://timeweb.cloud/docs/unix-guides/setting-up-redirects-nginx
Вариант 4. Если редирект нужен из “регистратора доменов”, а не с сайта
Иногда требуется перенаправлять запросы с домена, не трогая ваш сайт (например, просто сделать форвардинг домена в Timeweb). Тогда редирект настраивают в панели домена как услугу форвардинга.
Общий принцип “редирект с домена на адрес” описан в примерах для других регистраторов, а также вам поможет логика: подключить услугу и указать “с какого домена” и “на какой адрес”.
Источник (пример механики услуг перенаправления домена): https://okoshki.me/articles/redirect
Если домен делегирован на NS не Timeweb, то настройки в панели Timeweb для домена могут не применяться - это относится именно к DNS-записям и зависит от делегирования. Timeweb отдельно отмечает, что редактирование DNS в их панели работает только для доменов на их NS.
Источник: Timeweb, “Настройка DNS-записей” - https://timeweb.com/ru/docs/domeny/resursnye-zapisi-domena-dns-zapisi/nastrojka-dns-zapisej/
Как проверить, что редирект работает как нужно
Сделайте короткую проверку:
1. Откройте старый домен в браузере в режиме инкогнито.
2. Убедитесь, что HTTP статус соответствует 301 (для постоянного редиректа).
3. Проверьте несколько страниц, чтобы убедиться, что путь после домена сохраняется.
4. Если меняете http на https или добавляете www, проверьте оба варианта адреса.
Timeweb прямо включает в свои материалы пункт “проверка корректности настроек” для 301 редиректа.
Источник: https://timeweb.com/ru/blog/authors/aleksandr-grigorev/articles/chto-takoe-301-redirekt-i-kak-ego-nastroit/
Типичные ошибки
| Ошибка | Как проявляется | Как исправить |
|---|---|---|
В .htaccess редирект сделан без сохранения /$1 |
редирект ведет, но теряются путь и параметры | в RewriteRule добавляйте /$1 и используйте RewriteCond для домена |
| Указали 302 вместо 301 при переносе домена | поисковики могут индексировать старые и новые версии параллельно | для переноса чаще используйте 301 - это описано у Timeweb про Permanent Redirect 301 |
| Нет .htaccess или mod_rewrite не включен | правило не применяется | создайте .htaccess и проверьте mod_rewrite (Timeweb приводит команды и логику) |
| Кириллические домены не в punycode | редирект не работает или дает ошибку | в директивах используйте punycode (Timeweb отмечает это отдельно) |
| Делегирование домена на NS не Timeweb и вы меняете то, что зависит от DNS | изменения “как будто не применились” | настройте DNS там, где управляются NS, либо редирект делайте там, где он поддерживается (панель сайта или форвардинг домена) |
Источники по ошибкам и базовым правилам:
- punycode и правила в .htaccess: https://timeweb.com/ru/docs/virtualnyj-hosting/fajl-htaccess/tipovye-perenapravleniya/
- подготовка .htaccess и mod_rewrite: https://timeweb.cloud/docs/unix-guides/setting-up-redirects
- 301 и смысл постоянного редиректа: https://timeweb.com/ru/blog/authors/aleksandr-grigorev/articles/chto-takoe-301-redirekt-i-kak-ego-nastroit/
- зависимость от NS для DNS-настроек: https://timeweb.com/ru/docs/domeny/resursnye-zapisi-domena-dns-zapisi/nastrojka-dns-zapisej/
Итог
Для редиректа “со всего домена на другой домен” обычно выбирают 301 и настраивают его либо:
- через настройки сайта в панели (если используете ispmanager),
- либо через .htaccess на Apache по примеру с RewriteCond и RewriteRule,
- либо через конфиг Nginx, если он используется.
Если напишете, какой у вас тип сервера (Apache или Nginx) и куда должен редиректить (весь домен или только конкретные страницы), я предложу точный вариант правил.