Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[Решено] Как правильно настроить 301 редирект


FLworker
 Share

Recommended Posts

13 минут назад, velichkone сказал:

Вот бы и самому так понимать, что прописывать) Может, подскажите, где почитать про команды, а то мне еще нужно 

Комплексного учебника не встречал. Все мои знания - это Гугл (исключительно на английском) и опыт.

 

 

15 минут назад, velichkone сказал:

Поставить 301 редирект с https://zybik.kiev.ua/?route\= и https://zybik.kiev.ua/?route\=home на основной домен

В ОК нет таких ссылок.

  • +1 1
Link to comment
Share on other sites


9 часов назад, velichkone сказал:

у меня вот такие ссылки отображаются при открытии в браузере https://zybik.kiev.ua/?route%5С=home ,https://zybik.kiev.ua/?route%5С= 

При открытии чего? При беглом просмотре я не смог увидеть у вас на странице таких ссылок. То, что они не выдают 404, не значит, что для них нужно ставить редиректы! В ОК можно придумать довольно много бредовых ссылок вручную и все они будут открываться. Редиректить нужно только те ссылки, которые где-либо могут найти поисковики.

 

Кстати, у вас ссылка на страницу контактов в меню без https.

Link to comment
Share on other sites


Мне эти ссылки сеошник указал, как он анализировал сайт, к сожалению, не знаю(( Но, спасибо Вам, может их и не стоит редиректить...А может Вы знаете еще, я менял вложенность категорий на сайте, удаляя один уровень категорий, и, соответственно, изменились ссылки. То есть было типа https://zybik.kiev.ua/ortop-stom/slepochnye-materialy/ , а стало https://zybik.kiev.ua/slepochnye-materialy/ , и теперь первая ссылка не ведет на страницу. Но ведь она уже есть в индексе. Я нашел такой редирект 

Удаляем «category» из URL

Для изменения ссылки site.com/category/blue на site.com/blue, просто добавьте следующий код в конце вашего .htaccess файла.

RewriteRule ^category/(.+)$ http://www.site.com/$1 [R=301,L]

но, у меня не работает((

Спасибо!

Link to comment
Share on other sites


11 часов назад, velichkone сказал:

Мне эти ссылки сеошник указал, как он анализировал сайт, к сожалению, не знаю((

Сеошники всегда пихают в аудит несуществующие ссылки, которых нет на сайте.

 

11 часов назад, velichkone сказал:

Для изменения ссылки site.com/category/blue на site.com/blue, просто добавьте следующий код в конце вашего .htaccess файла.

RewriteRule ^category/(.+)$ http://www.site.com/$1 [R=301,L]

но, у меня не работает((

Во-первых, место неправильное - в конец файла ничего добавлять нельзя, все редиректы должны быть сразу после строки:

RewriteBase /

Иначе в зависимости от стечения обстоятельств редирект или просто не будет работать или будет работать совсем не так, как вы ожидаете и вызывать лишние проблемы. И это справедливо не только для ОК, но и для других движков с ЧПУ: редиректы должны быть до директив, отвечающих за работу ЧПУ.

 

А во-вторых, вы эту строку адаптировали под свой случай?

Link to comment
Share on other sites


  • 1 month later...

Подскажите, пожалуйста, в чем проблема. Настроил переадресацию со страниц старого сайта на соответствующие страницы нового (Опенкарт 2.3). В основном редирект работает верно, кроме двух ссылок.

 

Вопрос решился) Это по всей видимости Гугл чудил. Сейчас ссылки заработали нормально.

Edited by michael11
Link to comment
Share on other sites


6 часов назад, michael11 сказал:

В основном редирект работает верно, кроме двух ссылок:

с www.мой сайт/nakonechnik-logan2.html  вместо http://мой сайт/logan2-logan-mcv2-sandero2/rulevoe-logan2/nakonechnik-logan2 выдает http://мой сайт/logan-logan-mcv-sandero/rulevoe/nakonechnik-logan2

 

А вас вот это правило не смущает:

RewriteRule ^nakonechnik(.*)$ /logan-logan-mcv-sandero/rulevoe/nakonechnik$1 [L,R=301]

?

 

 

6 часов назад, michael11 сказал:

Вопрос решился) Это по всей видимости Гугл чудил. Сейчас ссылки заработали нормально.

Какое отношение к этому имеет Гугл?

Link to comment
Share on other sites


В 22.09.2017 в 17:41, Dotrox сказал:

 

А вас вот это правило не смущает:

RewriteRule ^nakonechnik(.*)$ /logan-logan-mcv-sandero/rulevoe/nakonechnik$1 [L,R=301]

?

 

 

Какое отношение к этому имеет Гугл?

Да, с Гуглом я ошибся. Ничего не исправилось.

Подскажите, пожалуйста, в чем ошибка?

Link to comment
Share on other sites


4 часа назад, michael11 сказал:

Подскажите, пожалуйста, в чем ошибка?

Ну, ошибки то нет: есть редирект (на который я указал) и он отлично работает.

Если вы хотите, чтоб редиректы не срабатывали налево и направо, указывайте в исходной ссылке максимально полный путь!

Link to comment
Share on other sites


8 часов назад, Dotrox сказал:

Ну, ошибки то нет: есть редирект (на который я указал) и он отлично работает.

Если вы хотите, чтоб редиректы не срабатывали налево и направо, указывайте в исходной ссылке максимально полный путь!

Спасибо. Правильно ли я Вас понял? После RewriteBase / указываю полный исходный путь: www.мой сайт/nakonechnik.html 

Т.е редирект должен быть: 

RewriteRule ^www.мой сайт/nakonechnik(.*)$ /logan-logan-mcv-sandero/rulevoe/nakonechnik$1 [L,R=301]

Или и во второй части тоже нужно полный путь? И правильно ли исходный путь прописывать полностью с www (если старый сайт был с www)?

Link to comment
Share on other sites


10 часов назад, michael11 сказал:

Правильно ли я Вас понял? После RewriteBase / указываю полный исходный путь: www.мой сайт/nakonechnik.html 

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

Если у вас полный путь - это /nakonechnik.html, то у вас только один вариант редиректа, который не будет лишний раз срабатывать:

RewriteRule ^nakonechnik.html$ /logan-logan-mcv-sandero/rulevoe/nakonechnik [L,R=301]

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

Link to comment
Share on other sites


15 минут назад, Dotrox сказал:

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

Если у вас полный путь - это /nakonechnik.html, то у вас только один вариант редиректа, который не будет лишний раз срабатывать:

RewriteRule ^nakonechnik.html$ /logan-logan-mcv-sandero/rulevoe/nakonechnik [L,R=301]

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

Спасибо большое, теперь работает корректно! Я пробовал так прописывать, только $1 в конце оставлял. А что $1 здесь означает?

Link to comment
Share on other sites


1 час назад, michael11 сказал:

А что $1 здесь означает?

Это переменная, в которую сохраняется содержимое выдранное регуляркой (.*).

Если нет регулярки, то и переменной быть не должно.

Link to comment
Share on other sites


14 минут назад, Dotrox сказал:

Это переменная, в которую сохраняется содержимое выдранное регуляркой (.*).

Если нет регулярки, то и переменной быть не должно.

Спасибо большое! Теперь все ясно.

Link to comment
Share on other sites


13 часов назад, Dotrox сказал:

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

Если у вас полный путь - это /nakonechnik.html, то у вас только один вариант редиректа, который не будет лишний раз срабатывать:

RewriteRule ^nakonechnik.html$ /logan-logan-mcv-sandero/rulevoe/nakonechnik [L,R=301]

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

Все-таки не все ссылки работали как бы мне хотелось, на некоторых почему-то срабатывал реврайт без редиректа. Попробовал так:

RewriteRule ^nakonechnik.*$ /logan-logan-mcv-sandero/rulevoe/nakonechnik [L,R=301]

Теперь, вроде, на всех ссылках редирект работает верно.

Link to comment
Share on other sites


11 часов назад, michael11 сказал:

RewriteRule ^nakonechnik-logan2$ /logan2-logan-mcv2-sandero2/rulevoe-logan2/nakonechnik-logan2 [L,R=301]

Работает почему-то  реврайт без редиректа.

Ссылка в гугле: мой сайт/nakonechnik-logan2 

открывает фактически нужную страницу нового сайта: мой сайт/logan2-logan-mcv2-sandero2/rulevoe-logan2/nakonechnik-logan2  

но в адресной строке остается: мой сайт/nakonechnik-logan2  

Link to comment
Share on other sites


Что-то я окончательно запутался. Старые ссылки были с www и html. Новые ссылки идут без www и html.

Гугл начал выдавать в поиске некоторые старые ссылки но без www и html. И вот на них работает реврайт без редиректа.

Link to comment
Share on other sites


 

3 часа назад, michael11 сказал:

Работает почему-то  реврайт без редиректа.

Чтоб всегда был редирект, надо в конечном пути писать полный адрес начиная с http/https.

Link to comment
Share on other sites


6 часов назад, Dotrox сказал:

 

Чтоб всегда был редирект, надо в конечном пути писать полный адрес начиная с http/https.

Прописал полностью, все-равно, если поиск в гугле выдает ссылку со старым адресом, но без www, то идет реврайт без редиректа. Открывается нужная страница нового сайта, но в адресе выпадают подкатегории, например правильный адрес: мой сайт/logan2-logan-mcv2-sandero2/rulevoe-logan2/nakonechnik-logan2  

но в адресной строке остается: мой сайт/nakonechnik-logan2. И если на этой странице открыть товар (который есть только в новом сайте), то товар откроется, но так же в адресе будет только: мой сайт/nakonechnik-logan2/товар.  

Link to comment
Share on other sites


Думал проблема в редиректе но, похоже, это не имеет отношения к редиректу. Создал новую подкатегорию, на нее не прописывал редирект (на старом сайте такой не было): мой сайт/logan-logan-mcv-sandero/akkumulyatory,

В запрос на индексирование гугл отправлял этот же адрес: /logan-logan-mcv-sandero/akkumulyatory

а в поиске в гугле выдается эта ссылка под адресом: мой сайт/akkumulyatory

т.е. выпадает из адреса категория /logan-logan-mcv-sandero/

Может кто знает почему так?    

Edited by michael11
Link to comment
Share on other sites


В 01.10.2017 в 22:07, michael11 сказал:

В запрос на индексирование гугл отправлял этот же адрес: /logan-logan-mcv-sandero/akkumulyatory

а в поиске в гугле выдается эта ссылка под адресом: мой сайт/akkumulyatory

т.е. выпадает из адреса категория /logan-logan-mcv-sandero/

Может кто знает почему так?    

Поставьте SeoPro.

И самое важное: не проверяйте редиректы через Гугл! Берёте старую ссылку, вводите в адресную строку браузера и переходите по ней - если редирект сработал, значит с ним всё отлично и всё остальное к нему не относится.

Link to comment
Share on other sites


13 часов назад, Dotrox сказал:

Поставьте SeoPro.

И самое важное: не проверяйте редиректы через Гугл! Берёте старую ссылку, вводите в адресную строку браузера и переходите по ней - если редирект сработал, значит с ним всё отлично и всё остальное к нему не относится.

С SeoPro что-то не получилось. После установки открывается только главная страница, все остальные страницы сайта перестают открываться. Может с каким-то модулем конфликтует?

Если вводить в адресную строку, то редиректы работают.

У меня еще вопрос, может не совсем по редиректам.

Например есть страница:  

мой сайт/logan2-logan-mcv2-sandero2/rulevoe-logan2/nakonechnik-logan2

так же она открывается и если ввести в адресную строку "сокращенный" адрес:

мой сайт/nakonechnik-logan2 

Правильно ли это?

Edited by michael11
Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.