Рубрики
База знаний SEO

301 редирект: лучшее руководство по настройке

301 код ошибки (Moved Permanently) означает, что данная страница или весь сайт перемещены на новый постоянный URL навсегда. Используется для передачи ссылочного веса. Обязательно проверяйте какой код ошибки отдает сервер, когда настроите данный редирект. Я использую для этого, например, замечательный плагин Firebug для Firefox.

Схема работы 301 редиректа
Схема работы 301 редиректа

Настройка 301 редиректов, если у Вас веб-сервер linux Apache, происходит в файле .htaccess. А в случае windows веб-сервера IIS — это будет файл web.config.

301 редирект на различных CMS, таких как wordpress, битрикс, друпал, dle, modx, joomla, opencart и других, настраивается с помощью специальных плагинов, а также обычным способом через htaccess или web config.

Основные операторы регулярных выражений

Перед тем, как настраивать правильные 301 редиректы в файле .htaccess нужно чётко различать основные операторы регулярных выражений (спецсимволы, модификаторы, флаги):

спецсимволы:

  • ^ — ограничение слева (начало строки);
  • $ — ограничение справа (конец строки);
  • . — любой символ;
  • () — переменная;
  • \ — экранирование (символ после \ считается обычным, а не спецсимволом);
  • [] — диапазон значений;
  • ! — спецсимвол отрицания;

модификаторы:

  • ? — символ повторяется 0 или 1 раз;
  • + — 1 и более символов (до 65536);
  • * — 0 и более символов (до 65536);

Настройка 301 редиректов в файлах htaccess и web.config

Я публикую здесь только проверенные и технически законченные рабочие варианты 301 редиректов. База рабочих вариантов 301 редиректов будет пополняться.
Редирект со старой статической (чпу) страницы на новую страницу:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.seowind\.ru$ [NC]
RewriteRule ^baza-znanij-seo/nastrojka-301-redirekta/$ https://www.seowind.ru/newpage/ [R=301,L]

Редирект на главную страницу:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.seowind\.ru$ [NC]
RewriteRule ^baza-znanij-seo/nastrojka-301-redirekta/$ https://www.seowind.ru/ [R=301,L]

Редирект с главной на внутреннюю страницу:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.seowind\.ru$ [NC]
RewriteRule ^$ https://www.seowind.ru/baza-znanij-seo/nastrojka-301-redirekta/ [R=301,L]

Редирект со страниц сайта с WWW на страницы без WWW:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.seowind\.ru$ [NC]
RewriteCond %{REQUEST_URI} !^/robots.*
RewriteRule ^(.*)$ http://seowind.ru/$1 [R=301,L]

Редирект со страниц сайта без WWW на страницы с WWW:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^seowind\.ru$ [NC]
RewriteCond %{REQUEST_URI} !^/robots.*
RewriteRule ^(.*)$ https://www.seowind.ru/$1 [R=301,L]

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

Редирект 301 со страниц со слешем на конце на страницы без него:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]

А здесь добавляем слеш в конец урла:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

301 редирект с index.php на главную:

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ https://www.seowind.ru/ [R=301,L]

Редирект всех внутренних страниц на главную:

RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule !(^$|.*\.(css|jpg|gif)) / [R=301,L]

Редирект урла с параметром на любую внутреннюю страницу сайта: (Например, со страницы http://www.site.ru/news.php?category=1 на http://www.site.ru/news.php?category=2 (здесь параметр category=)):

RewriteEngine On
RewriteCond %{QUERY_STRING} category=1
RewriteRule ^news.php http://www.site.ru/news.php?category=2 [R=301,L]

Редирект урла с параметром на главную страницу сайта: (Например, http://site.ru/index.php?show_section=12 на главную страницу http://site.ru/ (здесь параметр show_section=12)):

RewriteEngine On
RewriteCond %{QUERY_STRING} show_section=12
RewriteRule ^index.php http://site.ru/? [R=301,L]

Редирект со старого домена на новый (прописываем в htaccess старого сайта):

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.siteold\.ru$ [NC]
RewriteRule ^(.*)$ http://sitenew.ru/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^siteold\.ru$ [NC]
RewriteRule ^(.*)$ http://sitenew.ru/$1 [L,R=301]

Редирект с домена РФ на домен RU. Здесь важно знать, что РФ зона преобразуется в .xn--p1ai, а само название кириллического домена в соответствующий код (punycode) на латинице xn-….

RewriteCond %{HTTP_HOST} ^xn-...\.xn--p1ai$ [NC]
RewriteRule ^(.*)$ https://www.seowind.ru/$1 [R=301,L]

301 редирект каталога:

RewriteRule ^(.*)/old-catalog/(.*)$ $1/new-catalog/$2 [R=301,L]

Вы наверное в своей практике встречали случай, когда есть 2 сайта с одинаковой информацией, но в то же время доступные по разным адресам (сайты дубли). У этих сайтов одинаковый robots.txt, sitemap.xml и один на двоих .htaccess. Предлагаю вариант 301 редиректа с неосновного такого сайта (site2) на основной (site1):

RewriteEngine On
RewriteCond %{HTTP_HOST} ^site2.ru$ [OR,NC]
RewriteCond %{HTTP_HOST} ^www.site2.ru$ [NC]
RewriteCond %{REQUEST_URI} !^/robots.*
RewriteRule ^(.*)$ http://www.site1.ru/$1 [R=301,L]

Вставка включающая в себе все редиректы со страниц index|default с расширениями htm|html|php|asp|aspx на главную:

RewriteEngine On
RewriteCond %{THE_REQUEST} ^GET\ .*/(index|default)\.(htm|html|php|asp|aspx)\ HTTP
RewriteRule ^(.*)(index|default)\.(htm|html|php|asp|aspx)$ http://www.site.ru/$1 [R=301,L]

Пример редиректа со страниц без WWW на страницы с WWW в web.config для IIS:


<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to WWW" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^seowind.ru$" />
</conditions>
<action type="Redirect" url="https://www.seowind.ru/{R:0}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>

Пример редиректа со страницы default.aspx на главную в web.config для IIS:


<system.webServer>
<rewrite>
<rules>
<rule name="Imported Rule 1">
<match url="^default\.aspx" ignoreCase="false" />
<conditions>
<add input="{QUERY_STRING}" pattern="^$" ignoreCase="false" />
</conditions>
<action type="Redirect" redirectType="Permanent" url="https://www.seowind.ru/" />
</rule>
</rules>
</rewrite>

301 Редирект через PHP

<?php
header("Location: http://newdomain.ru/new/location/", true, 301);
?>

73 ответа к “301 редирект: лучшее руководство по настройке”

То есть, если я правильно поняла, при установке ЧПУ, если у меня до этого были адреса страниц вида /p1234? мне необходимо перенаправлять каждую страницу на новый адрес?!

вот эта строка:
RewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]

разве в ней не нужен слеш, экранирующий точку?

RewriteCond %{HTTP_HOST} ^www.site\.ru$ [NC]

Иначе… Конечно, работать будет, но …гм… точка означает любой символ, либо его отсутствие, и дальше часть «ru»

Добрый день, Марат!
Можно так как написали Вы, а можно так не делать — как это есть и в моих примерах.
Ошибкой не будут оба варианта. Они рабочие.

Работать-то конечно будут оба варианта.))) Но т.к. Вы мой коллега — не могу пройти мимо. Если бы теоретически существовал вот такой домен www(точка)sitea(точка)ru, то он бы проскочил этот фильтр, т.к. буква «a» подпадает под точку.

И, кстати, после www тоже точка стоит, и она требует экранирования.

Коллега, пожалуй соглашусь с Вами. Случай с экранированием — более общий случай и он учитывает и случай, который Вы показали для примера. Спасибо за дополнения по редиректам. Я внесу соответствующие изменения в статью.

Добрый день, администратор этого сайта. Отличная статья, но я не нашел примера моего редиректа. Подскажите пожалуйста как будет выглядить редирект 301 в этом случаи:

c site(точка)ru/good(точка)php на чпу ссылку site(точка)ru/good_page/

заранее спасибо.

Добрый вечер, Андрей!
Попробуйте, пожалуйста, так

RewriteEngine On
RewriteRule ^(.*)good.php$ http(двоеточие)//site(точка)ru/good_page/ [R=301,L]

RewriteEngine On
RewriteRule ^(.*)good.php$ http://site.ru/good_page/ [R=301,L]

спасибо за ответ, но вариант не работает. Ибо перебрасывает на http://site.ru/good_page/ — в итоге имеем не существующую страницу. Сервер пишет: страница не найдена. Так кстати я тоже пробовал, если просто переходить, то ссылка работает, а если редиректом не работает. Понять пока не могу почему так.

Андрей, будет лучше, если Вы напишите урлы живого своего сайта. Я вот тоже не могу понять почему так. Ведь вариант должен работать.

Подскажите, а если мне нужно сделать редирект.
как сделать редирект страниц с wordpress на страницы html.
Подскажите, буду очень благодарен

Добрый день. Как сделать редиректы со всех страниц, которые содержать цифры в конце.

site.ru/catalog/*/
на
site.ru/catalog/
где * цифры

Здравствуйте.
Проблема вот в чем: после вставки строк:

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.site.ru/ [R=301,L]

переадресация работает, но на сайте становится невозможно залогиниться. Почему так?

Движок Joomla 2.5.4.
В Основных настройках включил Перенаправление URL и нормально стало. А до этого вроде страницу кеширует, ни залогиниться ни вылогиниться.

Честно говоря такой редирект никогда не делал и более того скажу, что так делать неправильно! Это как оптимизатор говорю. Любая несуществующая страница должна отдавать 404 код ошибки, а редирект подразумевает 301 код.

Спасибо! Самый хороший, полный и понятный пост про редиректы на данный момент. Для полноты картины не хватает только редиректов со слешем и без на конце.

Например, такой код:

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

Есть и другие варианты, но почему-то работают не всегда. Этот вроде надёжный.

Добрый день. Подскажите, пожалуйста, как решить такую задачу.

Перенес сайт с джумлы на вордпресс. В джумле страницы вида:
site.com/category/zdorove-mamy-i-rebenka.html (на конце .html).

Мне нужно сделать 301 редирект на страницы без html на конце, вида
site.com/category/zdorove-mamy-i-rebenka/ (со слешем либо без на конце).

Спасибо (желательно не силами движка ВП, а именно .htaccess).

Помог друг. Вот решение. Добавить нужно к существующим записям:

RewriteBase /
RewriteRule ^(.*)\.html$ $1 [L,R=301]

Здравствуйте, нужна помощь, нигде не могу найти ответа. Сайт сделан на Ajax и имеет адрес типа http://www.site.ru/#!/page_1 . Символ #! яндекс преобразует в параметр ?_escaped_fragment_= . Как сделать, чтобы страницы типа http://www.site.ru/?_escaped_fragment_=/page_1#!/ (page_1 -разные страницы на сайте) переходили на страницы вида http://www.site.ru/#!/page_1

Насколько я понимаю, то задача состоит вовсе не в перенаправлении на страницу с AJAX ( /#!page1 ), а на версию этой страницы, но в html варианте, по этому нужен редирект на такую страницу с определенным адресом. Например можно просто отбрасывать ?_escaped_fragment_= и оставлять только страницу. Попробую реализовать, если получится дам знать.

Добрый день, помогите, не могу определиться! Есть сайт, который имеет около 20-ти страниц, типа http://www.sait.ru/produkt.html.

Все страницы находятся в корневом каталоге в формате HTML, но когда нужно что-то менять на сайте, например, номер телефона, то приходится редактировать все страницы сайта. Поэтому решил создать базу данных на PHP-mysql.

Страницы удается назвать в PHP-mysql только таком виде — http://www.sait.ru/produkt/. Версия php на хостинге PHP 5.2.10 и rewrite_module включен. Прошу вашей профессиональной помощи.

Как правильно настроить редирект со старых адресов типа produkt.html на новые адреса, типа /produkt/ при этом сохранить все возможные привилегии от поисковиков?.

Старые адреса типа produkt.html, будут удалены из корневого каталога, сразу после создании в базе данных новых адресов, типа /produkt/. Пожалуйста, еще вопрос: если будут меняться названия страницы таким образом, например:

  • — produkt.html превратится на /produkt/
  • — catalog.html превратится на /catalog/

Их 20 штук и все они разные.
Можно прописать редирект один раз для всех страниц? или же придется писать для всех страниц по отдельности?

Возник еще вопрос, тоже немало важный. Почему-то, когда открываешь в строке поиска любые страницы, которых нет в базе данных, открывается шаблон страницы без контента, пример:
типа http://www.sait.ru/pro/ или же типа http://www.sait.ru/drt/. В общем, если написать любое слово или несколько любых букв между слешами, открывается шаблон без контента.

Еще пример для динамических сайтов:
http://www.sait.ru/index.php?page=1000, если на место 1000 написать любые цифры, которых нет в базе данных, открывается также пустой шаблон сайта.

Вопросы:

  1. 1. Эти моменты на сколько негативно влияет на раскрутку сайта?
  2. 2. Можно ли настроить хтаксес так, чтобы при поиске этих страниц открывались 404 ошибка?
  3. 3. Или же эти проблемы не решается через файл хтаксес?

Заранее спасибо !

в шестом варианте добавьте вопросительный знак после index.php, иначе в адресной строке показывается старый параметр

Здравствуйте. у меня пара вопросов по редиректу: как правильно редактировать файл htaccess?? как я понял из него всё удаляется и вставляется один из ваших примеров? или как то ещё? я попробовал сделать так как написано в примерах, но при переходе на сайт редирект не срабатывает. и второй вопрос: какой метод мне больше подходит если сайты расположены на одном хост-аккаунте но в разных корневых папках?
Заранее благодарен!

Здравствуйте! Подскажите, пожалуйста, как сделать 301 редирект со страниц вида site.ru/page на страницы вида site.ru/page.html? Если в данной статье есть ответ, продублируйте если не сложно, сам не разобрался.
Заранее спасибо!

Добрый день!

Не могли бы Вы мне подсказать такую ситуацию:

Был сайт http://site.net сделанный на WP, и соответственно имел страницы такого вида

http://site.net/?page_id=450

теперь сайт переделали на Joomla и та же страница стала иметь такой вид

http://site.net/azbuka.html

Как правильно сделать 301, чтобы не потерять PR?

Так:

Redirect 301 /?page_id=450 http://site.net/azbuka.html

Или так:

RewriteCond %{QUERY_STRING} ^id=450$
RewriteRule ^/page.php$ http://site.net/azbuka.html%5BL,R=301%5D

Буду очень благодарна за ответ, а то шеф уволить обещал…)

Здравствуйте.
Подскажите, как правильно сделать:
есть сайт с адресами site.ru/catalog/item, надо сделать site.ru/item

Спасибо

Спасибо за полезные советы, но у меня вот какая проблема. Я сделал новый сайт для компании на движке Joomla, а старый был на Drupal. Да и доменное имя перенес на новый хостинг. Новый сайт Яндекс пока не индексирует и все ссылки только на старый. Главная страница совпадает и это хорошо, по ней посетители попадают на новый сайт, а вот остальные страницы — нет. При переходе по ним у меня показывает ошибку 404.

Можно ли, в данном случае, сделать редирект или что-то другое, чтобы люди проходя по старой ссылке http://site.ru/montajnoe переходили на новую http://site.ru/index.php/ru/o-kompanii/montazhnoe-upravlenie-mitol.html и т.д. по всем старым ссылкам. Если не сложно, ответьте на почту maycompani@gmail.com.

С уважением, Андрей.

Если запросить заведомо некорректный URL вида http://site.ru/?N, где N – любой численный или строковый параметр, например http://site.ru/?qwerty, сервер отдаёт 200 ОК. Хотя, по идее, правильно было бы 404 Not Found или 301 Moved Permanently. Что вроде как реализовывается при помощи модуля Mod_rewrite. Прав ли я? И если да, то, как можно исправить ситуацию?
Спасибо.

В таком случае правильно отдавать 404 Not Found. 301 в таком случае делать не надо.

А как мне со старых страниц, на новые сделать редирект? если там 3 параметра ?i= &add &pg

Автору огромный респект! Только здесь нашёл исчерпывающую информацию о всевозможных редиректах. Да ещё и с конкретными примерами, готовыми к использованию. Спасибо!

Но я так понимаю, что это не критично, т.к. сколько сайтов я не смотрел у всех такого рода конструкция http://site.ru/?qwerty, отдаёт 200 ок, хотя, как я уже писал выше, вроде как не должен сервер по правилам отдавать 200 ок, но по ходу никто не заморачивается. У вас тоже, кстати, 200 ок.

Да, Andrei — это распространенная проблема у многих. В идеале должна отдаваться 404 ошибка. Но если такое сделать не получается то хотя бы в robots.txt закрывается, например, как у меня: Disallow: /*?* — этого будет во многих случаях хватать.

здравствуйте, подскажите как в htaccess сделать несколько 301 редиректа по параметру:

RewriteCond %{QUERY_STRING} category=1
RewriteRule ^news.php http://www.site.ru/news.php?category=2 [R=301,L]

а то я когда прописываю такие же 2 строчки ниже с другими параметрами, ничего не выходит, а мне нужно 6 страниц перенаправить 301 редиректом.

Скажите а редирект 301 можно сделать с идентификатором «?sid=003acc58c948ea31227f87671154fc3f» в phpbb3, чтобы если в строке присуттвует «sid» то он автоматом перебрасывается на главную 301

Вот что у меня в htaccess. RewriteCond %{QUERY_STRING} id=5&Itemid=2
RewriteRule ^index.php http://www.mosdivecen.com/index.php?option=com_content&view=article&id=28&Itemid=118 [R=301,L]

но мне помимо этого редиректа нужно сделать еще 3-4 таких же
приведу их в порядке «откуда -> куда » :

http://www.mosdivecen.com/index.php?option=com_content&view=article&id=2&Itemid=25
->
http://www.mosdivecen.com/index.php?option=com_content&view=article&id=47&Itemid=159

http://www.mosdivecen.com/index.php?option=com_content&view=article&id=3&Itemid=4
->
http://www.mosdivecen.com/index.php?option=com_content&view=article&id=28&Itemid=145

вот так вот, помогите пожалуйста

День добрый уважаемый администратор, у меня вот в чем проблема: Я в адрес страниц добавил название категорий, до этого их небыло, было вида http://sait.ru/bro/ потом стало вида: http://sait.ru/category/bro/. Как мне настроить в данном случае редирект 301?

Добрый день!
Подскажите пожалуйста по ситуации.
Есть сайт, на главной странице разделение на два направления, реализованное через поддомены. Одно из направлений закрыли, осталось только другое.
Подскажите пожалуйста как грамотно прописать редирект, чтобы пользователей с главной страницы перенаправляло сразу в рабочее направление?
Пробовал сам по образцам через 301, получалось только сделать так, что поддомен в адресе почему то пропадал и прежняя страница направления начиналась с site.ru, а ранее было с поддоменом (podomen.site.ru). Оставлять этот вариант не стал, опасаясь потерять ТИЦ и PR сайта в поисковиках и нарушения работы контекстной рекламы. Оставил все по старому. Сижу ломаю голову.

Здравствуйте! У меня ситуация следующая: хочу полностью переделать свой сайт. Он у меня работает на Joomla 1.5, хочу посадить его на Joomla 2.5. Часть разделов полностью уберу, часть будет доступна по новому адресу. Те, которые будут доступны по новому адресу, я вручную перенаправлю, это понятно. Но что мне сделать, чтобы все остальные страницы, которые более не существуют, выдавали бы редирект на главную страницу?

Например: сейчас у меня есть раздел с новостями из мира компьютеров и прочего, но мне он больше не нужен, и я хочу от него избавиться. В то же время часть страниц из этого раздела проиндексированы и люди часто на них переходят. Когда раздел я ликвидирую, будет открываться 404, а хотелось бы, чтобы их просто перебрасывало на главную. Это возможно?

попробовал уже «десяток» способов! и не один не спасает меня от расширений страницы в конце урла. есть ссылки вида frfrfrf.in.ua/folder1/sssss.html и в корне сайта тоже такая же ерунда!

помогите пожалуйста!

Здравствуйте! Подскажите пожалуйста как сделать редирект с /index.php?section=services на /light.php . Заранее благодарю!

Здравствуйте, подскажите пожалуйста как можно сделать 301 редирект с параметром после /
Ситуация в том, что был адрес ввиде http://site.com/ru/Models/devushki-modeli-portfolio/Inna_V/
сайт был переделан и ЧПУ автоматом загнало ввиде http://site.com/portfolio/Inna-V/
по своей сути я могу сделать редирект на страницу портфолио, но вот как сделать так чтобы нижнее подчеркивание становилось дефисом
/Inna_V/ — генерировалось в /Inna-V/

Здравствуйте.
У меня зарегистрировано 2 домена: в зонах ORG и RU, которые физически смотрят на один сайт.
Написал вот так:
RewriteCond %{HTTP_HOST} ^site-soft.org$ [OR,NC]
RewriteCond %{HTTP_HOST} ^www.site-soft.org$ [NC]
RewriteRule ^(.*)$ http://www.site-soft.ru/$1 [R=301,L]
но что-то не вижу эффекта :((

Здравствуйте. Просьба помочь (редирект 301).

Вопрос такой. Как влияет на индексацию ситуация, когда исходный и целевой URL одинаковые? Такое может происходить в данной схеме:
есть страницы вида sait.com/product/12345/. На сайте ранее был настроен редирект 301 с этих на страницы с ЧПУ sait.com/product/12345/nazvanie-tovara.

Сделано, чтобы можно было произвольно менять название товара, не теряя страницу. Настройка такая, что если после слеша ничего нет, то идет редирект 301. Если есть хотя бы один знак, то ответ 200 OK.

Проблема в том, что при таком решении старые URL остаются в индексе. Если сделать 301 редирект без учета параметров, то возникают случаи, когда исходный и целевой URL одинаковые. Нигде не нашел информации о подобных случаях. Спасибо.

Добрый день! Помогите пожалуйста с 301 редиректом . Перенесла сайт на вордпресс и встал вопрос правильного редиректа.
для ссылок вида:
1. Redirect 301 /?pod=443&id=1442 http://mysait.com/kalendar-2013/
2. Redirect 301 /chelovek_i_medicina.php http:/mysait.com/?pod=44&id=188

Выражусь чуть яснее.

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

Старый путь: http://www.site.ru / OLDcategoty / *все другие последующие страницы*
Новый пусть: http://www.site.ru / NEWcategory / OLDcategory / *все другие последующие страницы*

Спасибо за статью!
Подскажите, пожалуйста, нужен вариант:
10. 301 редирект со старого домена на новый. Прописываем данный код в .htaccess старого сайта.

Но новый сайт у меня на рф, т.е. домен с кириллицей, не подскажите как в данном случае необходимо прописывать?

Здравствуйте. Можно ли комплексно решить проблему перехода?

На старом сайте страница товара выглядела так:
http://site.ru/product/kamkordery/sony-pmw-f5

На новом — такой вариант:
https://site.ru/product/sony-pmw-f5/

Можно ли прописать команду перенаправления, в которой игнорируется категория (в данном случае -/kamkordery/)?

Здравствуйте! Подскажите пожалуйста) Мне, простому смертному, можно в Ваши готовые редиректы адреса своего сайта навставлять и все?))) Сайт сама создала, сейчас до редиректа дошла… вообще ничего в этом не понимаю… или лучше обратиться к спецу, чтоб мне сделал?

Привет Всем!!!! Эта шпаргалка мне очень помогла. А то в одном посмотришь по одному, в другом по другому. Окончательный ответ нашел здесь. Думаю все правильно сделано. Спасибо автору.

Здравствуйте!

А как перенаправить например с http://mysite.ru/malina.html на http://mysite.ru/malina, то есть на ту же страницу, только без расширения?
Готовлю сайт на голом html к переезду на ВордПресс, где страницы у меня пишутся без расширений.

Помогли в одной веб-студии (немного небесплатно).

Вот какой код они дали, но я его пока не использовал потому что пока работаю на локальном сервере. Поэтому за работоспособность ничего сказать не могу.

Redirect 301 / http://mysite.ru/$1/
RedirectMatch 301 ^/([^.]+)\.html http://mysite.ru/$1/

Здравствуйте, Юрий!

У меня в ссылках на категории есть два параметра c и r выглядят так: http://mysite.ru//vac.php?r=6&c=17
Но Яндекс проиндексировал эти страницы поменяв параметры местами, что не очень хорошо.
Подскажите как написать редирект со страниц типа vac.php?c=17&r=6 на страницы где параметр r будет первым стоять? Значения параметров меняются, конечно.

Добрый день.
Извините мне мою непонятливость, но мне очень нужно понять, как прописать редирект.
У меня с сайта на сайт переезжает целый раздел, правильно ли я понимаю, что на старом сайте мне нужно прописать такие строчки:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.старыйсайт\.ru$ [NC]
RewriteRule ^/category/pricheski-sebe-video/$ http://новыйсайт.ru/category/pricheski-sebe-video/ [R=301,L]

И нужно ли мне прописывать редирект для каждой статьи в этом разделе?

Буду очень признательно за ответ, почему-то эта тема ни как не укладывается в голове.

Здравствуйте уважаемый автор! Помогите пожалуйста сделать редирект!
с nedvizhimost/arenda-komnat/103-www/index.php на nedvizhimost/arenda-komnat/103-www

То есть чтоб index.php автоматически всегда убирался при любой ссылке

301 редирект для мультиязычного сайта на Joomla 3 c 303 редиректом

Здравствуйте, уважаемые!

Прошу помочь решить следующую насущную для мультиязычного сайта на Joomla 3 и, думаю, многих других CMS, проблему:
При создании нескольких языковых версий сайта средствами мультиязычности самой CMS получается следующее:
http://domain.ru -с русским языком
http://domain.ru/ru/-русская версия сайта(является основным языком сайта)
http://domain.ru/en/-английская версия сайта
http://domain.ru/de/-немецкая версия сайта
и если средствами Joomla 3 удалять префикс /ru/ из адресной строки, то срабатывает 303 редирект, что есть нехорошо, т.к. для SEO нужен 301 редирект.
Если же не убирать префикс в настройках Joomla 3, то будет существовать domain.ru/ru/ и domain.ru с русским языком, т.е. дубли.
Как посредством .htaccess убрать префикс /ru/, т.е. сделать 301 редирект с domain.ru/ru/ -> domain.ru и чтобы в последующем переключение языков на сайте было корректным.

В течение 2-x недель поиска информации в интернете опробовал разные куски кода в htaccess, но рабочего варианта так и не нашел.
Распишите, пожалуйста, подробно как решить эту проблему, т.к. с этим вопросом не могут справится куча народа, как в русскоязычном сегменте интернета, так и за рубежом, либо опишите другие возможные варианты решения. Если вам несложно, то вышлите мне решение на почту myhelpers@mail.ru , чтобы быстрее смог его реализовать.
Если для кого-то это тривиально, то простите за незнание! 🙂

Здравствуйте!

Спасибо за статью.
У меня немного нестандартный вопрос.
Есть чужой site1.ru и мой site2.ru.
Мне надо сделать, чтобы при заходе на мой сайт, пользователь переадресовывался на определенную ссылку на site1.ru, например, site1.ru/mylink.
Таким образом, мне также надо, чтобы мой сайт выдавался в поиске, и чтобы пользователи попадали на site1 именно через мой site2.ru.
Как лучше сделать такое?

Заранее спасибо.

Огромное спасибо за статью. Переносила сайт клиента с длинными урлами на более короткие ЧПУ, очень переживала, что 301 работать не станет и позиции в поисковиках послетают т.к. был опыт подобного Redirect 301 /old-page http://site.by/new-page редиректа на другом сайте и ничего не заработало. Но, настроила так как Вы описали и всё работает. Аж камень с души упал.

Сайт установлен на суббдомене как мне прописать что бы перенаправлялся на основной домен

Добрый день.
Может подскажете как убрать дубль сайта через 301 редирект? Сейчас страницы сайта открываются как с 1 слешем в середине УРЛа, так и с 2-м слешем.
Пример: http://site.ru/Krovat-Murzilka_3053t.html и http://site.ru//Krovat-Murzilka_3053t.html
И есть ли возможность убрать _3053t.html путём добавления строк в .htaccess?
Спасибо.

Руководство подробней не бывает. Но в моем случае немножко не работает. Поясню. Перешел по счетчику ливинтернета, зашел в поисковые фразы, выбрал любую из фраз, перешел на страницу фразы из поиска, перешел на страницу с http://www... Думал надо поставить редирект с www на без www. Поставил. Обновил, перезагрузил, не срабатывает. То ли время какое-то должно пройти, то ли так и должно быть.. я не понял..

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *