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

S
На сайте с 30.09.2016
Offline
469
#61
Max Demian:
Как сделать редирект для сайт.ru на сайт.ru/lp/lending и при этом, чтобы редирект не касался основного домена - сайт.ua?

Не очень понятно, что там у вас с доменами, но по-видимому, нужно что-то такое

RewriteCond %{HTTP_HOST} сайт\.ru [NC]
RewriteRule ^$ /lp/lending [R=301,L]
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
L7
На сайте с 27.06.2010
Offline
70
#62

Доброго времени суток!

как сделать редирект на https://www.goagetaway.com/ с данных запросов:

https://goagetaway.com/

http://goagetaway.com/

http://www.goagetaway.com/

J
На сайте с 20.02.2014
Offline
120
jkm
#63

RewriteCond %{HTTPS} !=on [OR]

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) https://www.goagetaway.com/$1 [R=301,L]

В зависимости от настроек сервера вместо RewriteCond %{HTTPS} !=on могут быть другие варианты проверки https.

RewriteCond %{ENV:HTTPS} !on

RewriteCond %{HTTP:X-Forwarded-Proto} !https

L7
На сайте с 27.06.2010
Offline
70
#64
jkm:
RewriteCond %{HTTPS} !=on [OR]

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) https://www.goagetaway.com/$1 [R=301,L]


В зависимости от настроек сервера вместо RewriteCond %{HTTPS} !=on могут быть другие варианты проверки https.

RewriteCond %{ENV:HTTPS} !on

RewriteCond %{HTTP:X-Forwarded-Proto} !https

без www - на www ни один из трех способов не подходит

J
На сайте с 20.02.2014
Offline
120
jkm
#65
lcc7:
без www - на www ни один из трех способов не подходит

А если ставить редирект в начало файла?

Как настраивать редирект на https обычно можно найти в справке на сайте своего хостера.

L7
На сайте с 27.06.2010
Offline
70
#66
jkm:
А если ставить редирект в начало файла?
Как настраивать редирект на https обычно можно найти в справке на сайте своего хостера.

Так для общего образования....

Заработало с изменением CNAME в настройках домена с помощью тех поддержки goddady. Сказали что редирект не делается с помощью .htaccess, то ли это ко мне относится, то ли ко всем, я уже не понял, главное заработало. Иногда проще обратиься в тех поддержку и они сами все правильно настроят

S
На сайте с 30.09.2016
Offline
469
#67
lcc7:
Заработало с изменением CNAME в настройках домена

Возможно и такое, если настройки кривые были.

lcc7:
Сказали что редирект не делается с помощью .htaccess
Если там не апач, а энджинкс.
Васо Вчеразаши
На сайте с 20.05.2018
Offline
66
#68

Всех с наступившим!

Нужно было сделать, чтобы по ссылке с параметрами сервер отдавал 404. В поддержке хостинга посоветовали прописать в .htaccess так:

RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} ^(.+) [NC]
RewriteRule ^ - [R=404,L,NC]

Все работает, но... Нужно чтобы GET запрос типа https://site.ru/razdel/skript.php?j=параметры проходил. То есть как добавить в исключения вышеприведенного кода шаблон типа https://site.ru/razdel/skript.php.* где .* - любое количество любых символов?

J
На сайте с 20.02.2014
Offline
120
jkm
#69
Васо Вчеразаши:
Всех с наступившим!
Нужно было сделать, чтобы по ссылке с параметрами сервер отдавал 404. В поддержке хостинга посоветовали прописать в .htaccess так:
RewriteCond %{REQUEST_METHOD} GET

RewriteCond %{QUERY_STRING} ^(.+) [NC]
RewriteRule ^ - [R=404,L,NC]

Все работает, но... Нужно чтобы GET запрос типа https://site.ru/razdel/skript.php?j=параметры проходил. То есть как добавить в исключения вышеприведенного кода шаблон типа https://site.ru/razdel/skript.php.* где .* - любое количество любых символов?


RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} ^.
RewriteCond %{REQUEST_URI} !^/razdel/skript\.php
RewriteRule ^ - [R=404,L]

Или

RewriteCond %{THE_REQUEST} "GET \S+\?"

RewriteRule !^razdel/skript\.php - [R=404,L]
Васо Вчеразаши
На сайте с 20.05.2018
Offline
66
#70

Попробовал оба варианта кода, вариант

RewriteCond %{REQUEST_METHOD} GET

RewriteCond %{QUERY_STRING} ^.
RewriteCond %{REQUEST_URI} !^/razdel/skript\.php
RewriteRule ^ - [R=404,L]

интереснее, так как 404 страница отдается собственная.

Большущее спасибо!

А можно еще сделать, чтобы данное правило работало на запрос без параметров, но с символом "?" на конце? Например site.ru/? или site.ru/razdel/ctranica?

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