Подскажите, как заменить 307 на 301 редирект?

Magic Moment
На сайте с 23.08.2015
Offline
62
420

Проблема появилась после переезда с шареда на VPS. Все редиректы, что до этого были 301-ми, стали 307-ми.

На впс-ке стоит CentOS7 и BrainyCP. При чем, эта проблема уже была "из коробки".

Единственное что понял перешерстив весь интернет, это что крутить нужно либо настройки апача либо nginx.

Как и что там крутить - не знаю. В открытом доступе информации об этом вообще нет. В самих файлах конфигов явного совпадения "307" тоже нет.

У кого руки прямые и знает куда смотреть?

baas
На сайте с 17.09.2012
Offline
118
#1

А если посмотреть на предмет редиректа в корне сайта файла .htaccess ?

Настройка BSD систем. (https://www.fryaha.ru) Знание сила, незнание Рабочая сила!
Magic Moment
На сайте с 23.08.2015
Offline
62
#2
baas:
А если посмотреть на предмет редиректа в корне сайта файла .htaccess ?

Так на шареде раньше все ок работало. С редиректами в хтацес все норм. Отвалились все и сразу именно после переезда.

На всякий вот пара примеров, которые 100% были 301 из .htaccess

# 301 http → https

RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# Проверяем, повторяется ли слеш (//) более двух раз.
RewriteCond %{THE_REQUEST} //
# Исключаем все лишние слеши.
RewriteRule .* /$0 [R=301,L]
baas
На сайте с 17.09.2012
Offline
118
#3
MeGGo:
Так на шареде раньше все ок работало. С редиректами в хтацес все норм. Отвалились все и сразу именно после переезда.
На всякий вот пара примеров, которые 100% были 301 из .htaccess

# 301 http → https

RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# Проверяем, повторяется ли слеш (//) более двух раз.
RewriteCond %{THE_REQUEST} //
# Исключаем все лишние слеши.
RewriteRule .* /$0 [R=301,L]

Значит нужно смотреть настройки виртуал хоста.

Magic Moment
На сайте с 23.08.2015
Offline
62
#4
baas:
Значит нужно смотреть настройки виртуал хоста.

Если я скину содержимое файлов apache или nginx, вам не трудно будет посмотреть?

D
На сайте с 31.12.2019
Offline
1
#5

htaccess для apache.

nginx.conf для nginx.

Вы бы написали, что куда редиректите, было бы более предметно. Например, для nginx редирект c http на https можно так попробовать


server {
#...
if ($scheme = http) {
return 301 https://$server_name$request_uri;
}
}

или


server {
#...
listen server_ip:80;
server_name www.site.com;
rewrite ^ https://www.site.com$request_uri? permanent;
}
baas
На сайте с 17.09.2012
Offline
118
#6
MeGGo:
Если я скину содержимое файлов apache или nginx, вам не трудно будет посмотреть?

Показывайте.

Magic Moment
На сайте с 23.08.2015
Offline
62
#7

Доброго времени. Удалось понять причину почему так происходило.

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

На VPS переносился старый проект у которого уже был установлен SSL сертификат, IP соответственно, тоже был другой. А после смены IP и сертификата не успела обновиться инфа на NS серверах. Вероятно поэтому при обходе лягушкой редиректы не соответствовали действительности. Сегодня обошел сайт с канадского VPN, и все нормально заработало.

Дополнительно, с толку сбил кеш браузера, а точнее то, что он как-то кеширует информацию о SSL сертификате.

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