Как сделать редирект (301, 302). Общая тема

Sapega
На сайте с 09.02.2009
Offline
68
#101

Спасибо, конечно, большое.

Тем не менее, почему-то не редиректится, т.е. остается на той же странице, где есть "-rus.html"

A
На сайте с 04.11.2007
Offline
134
#102

Sapega, получается, что не доходит до редиректа. Если есть другие условия, то они могут перекрывать его.

Sapega
На сайте с 09.02.2009
Offline
68
#103

Вот и я о том же. Целый день ковыряю разными способами. Вроде УРЛ есть, правило нормально прописано, а редиректа нет.

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

medclick
На сайте с 08.09.2010
Offline
120
#104

Задача: проставлять слэш - / на случай если его нет в конце раздела и подразделов selection, но не ставить его на страницах http://www.site.com/selection/print/12.html (где print - постоянна)

Сейчас стоит так:

RewriteRule ^selection$ http://www.site.com/selection/ [R=301,L]

И он разделы http://www.site.com/selection/about перенаправляет на http://www.site.com/selection/about/ (как и надо)

а вот такую страницу http://www.site.com/selection/print/12.html перенаправляет на http://www.site.com/selection/print/12.html/ (так не надо)

Помогите пожалуйста, гуглил безуспешно, мои познания в этом нулевые.

medclick
На сайте с 08.09.2010
Offline
120
#105
medclick:
Задача: проставлять слэш - / на случай если его нет в конце раздела и подразделов selection, но не ставить его на страницах http://www.site.com/selection/print/12.html (где print - постоянна)

Сейчас стоит так:

RewriteRule ^selection$ http://www.site.com/selection/ [R=301,L]


И он разделы http://www.site.com/selection/about перенаправляет на http://www.site.com/selection/about/ (как и надо)

а вот такую страницу http://www.site.com/selection/print/12.html перенаправляет на http://www.site.com/selection/print/12.html/ (так не надо)

Помогите пожалуйста, гуглил безуспешно, мои познания в этом нулевые.

Сам нашел решение, может кому-то пригодится:

RewriteRule ^selection\/(.*)(?<!\/|html)$ http://www.site.com/selection/$1/ [R=301,L]

C2
На сайте с 28.03.2009
Offline
74
#106
medclick:
Сам нашел решение, может кому-то пригодится:

RewriteRule ^selection\/(.*)(?<!\/|html)$ http://www.site.com/selection/$1/ [R=301,L]

а смысл щас клеить домены не пойму?

Обменяю мои Сбербанк рубли, на Ваши WMZ, по курсу +1% в мою пользу за перевод, Icq 230128. КуПиТь ДоМеНы - с ТиЦ 30+ дёшего! (http://u.to/b372Cg) КуПиТь УнИк 100% оТ 7 РуБ/1000 ЗнАкОв (http://u.to/EZ10CA)
A
На сайте с 24.02.2008
Offline
96
#107

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

Есть проблемы с настройкой 301 редиректов.

1. Необходимо, чтобы сайт открывался:

а) https://www.site.ru/robots.txt

б) Настроить редирект с https://www.site.ru/url/? на https://www.site.ru/url/ (и аналогичные, т.е. убирание ? на конце, если дальше параметров нет)

в) Добавление слеша в конце, если его нет в url;

Подскажите с данными пунктами. Все испробовал.

Виртуальная АТС для бизнеса - омниканальная платформа (https://neirika.ru).
siv1987
На сайте с 02.04.2009
Offline
427
#108
Avalanch:
Добавление слеша в конце, если его нет в url;

/ru/forum/928578

Z
На сайте с 05.01.2016
Offline
1
#109

Добрый день, друзья!

Возникла, небольшая сложность по 301 редиректу.

Мы имеем сайт доступный по адресам:

http://site.com

http://www.site.com

https://site.com

https://www.site.com

Задача, сделать основным только https://site.com, а со всех остальных 301 редирект на главный.

Пробовал через htaccess, различные варианты:

Redirect 301 / https://site.com


ERR_TOO_MANY_REDIRECTS

RewriteEngine On

RewriteCond %{HTTPS} !on

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}


ERR_TOO_MANY_REDIRECTS

RewriteEngine On

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

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

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]


ERR_TOO_MANY_REDIRECTS

Прошу помощи,кто силен в htaccess, подсказать, спасибо.

J
На сайте с 20.02.2014
Offline
120
jkm
#110
Zenks:
Добрый день, друзья!

Возникла, небольшая сложность по 301 редиректу.
Мы имеем сайт доступный по адресам:
http://site.com
http://www.site.com
https://site.com
https://www.site.com

Задача, сделать основным только https://site.com, а со всех остальных 301 редирект на главный.

Пробовал через htaccess, различные варианты:

Redirect 301 / https://site.com

ERR_TOO_MANY_REDIRECTS


RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

ERR_TOO_MANY_REDIRECTS


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

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

ERR_TOO_MANY_REDIRECTS


Прошу помощи,кто силен в htaccess, подсказать, спасибо.

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

Тогда обычно добавляется заголовок X-Forwarded-Proto или X-Forwarded-SSL


RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.site\.com$ [NC,OR]
RewriteCond %{HTTP:X-Forwarded-Proto} !https [NC]
RewriteRule ^(.*)$ https://site.com/$1 [R=301,L]

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий