Как сделать 301-редирект в файле .htaccess?
Зачем я переношу проекты на субдомены и как настроил 301-редирект
Ведение блога — не моя сильная сторона, но идея иметь единую площадку для аккумуляции всего, что я публикую в интернете, мне всегда нравилась. Изначально для этих целей я завел отдельный домен refdev.ru. Однако спустя полгода я пришел к выводу, что это излишне. Гораздо рациональнее располагать новые проекты на субдоменах основного хаба https://assetsfirst.ru/. Такой подход проще в поддержке и логичнее с финансовой точки зрения: новый проект — новый субдомен, а если проект взлетает, всегда можно раскошелиться на отдельный домен за счет его же выручки.
Настраиваем 301-редирект
Поскольку refdev.ru уже проиндексирован поисковиками, а домен еще оплачен на полгода вперед, я решил настроить постоянный (301) редирект со старого домена на новый. Это позволит передать накопленный вес страниц и не потерять читателей. Мой хостинг-провайдер использует Apache, где такое перенаправление легко реализуется через файл .htaccess.
После небольшого исследования я остановился на этом решении:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^refdev\.ru$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.refdev\.ru$ [NC]
RewriteRule ^(.*)$ https://blog.assetsfirst.ru/$1 [R=301,L]
</IfModule>Что делает этот код?
RewriteEngine On — активирует механизм перезаписи URL.
RewriteCond — проверяет условие. В нашем случае, совпадает ли имя запрашиваемого домена с refdev.ru (с флагом NC для игнорирования регистра) ИЛИ (директива OR) с www.refdev.ru.
RewriteRule — если условие выполнено, правило перенаправляет (R=301) любой запрос (^(.*)$) на тот же путь на новом домене https://blog.assetsfirst.ru/$1. Флаг L означает, что это последнее правило, которое должно обрабатываться.
Важные моменты:
- Редирект сработает для любой страницы старого сайта (например, refdev.ru/post-1 станет blog.assetsfirst.ru/post-1).
- После внесения изменений стоит проверить редирект с помощью онлайн-сервисов или браузера в режиме инкогнито.
Итог: теперь весь трафик со старого домена плавно и правильно перетекает на новый, а я могу спокойно развивать свои проекты под единым крылом assetsfirst.ru. Надеюсь, мой скромный опыт окажется полезным и для вас.