We are happy to announce that Vesta is back under active development as of 25 February 2024. We are working on v1 candidate and expect to engage more with the community over the coming months. We are committed to open source, and we encourage contributors to help us build the future of Vesta.
Не могу разобраться с редиректом с HTTPS на HTTP
-
- Posts: 33
- Joined: Sat Apr 18, 2015 7:08 pm
Не могу разобраться с редиректом с HTTPS на HTTP
Доброго времени суток!
Проблема следующая:
На одном IP несколько сайтов, на некоторых из них есть SSL сертификаты, а на некоторых нет. Если пытаюсь зайти на любой из сайтов без сертификата используя протокол HTTPS, попадаю на самый первый домен который был добавлен. Казалось бы проблем нет, не заходи через https если у тебя его нет и всё будет ОК, но не тут то было. Поисковики, например Яндекс, индексируют сразу оба протокола и ко всем сайтам без SSL добавляет страницы того самого домена который доступен по IP.
Вроде тут -> viewtopic.php?t=11369 всё не плохо расписано, даже помогло человеку. Но у меня осталось пара вопросов, надеюсь поможете.
1. По методу который помог. Я снес default.domain, теперь когда пытаюсь его снова сделать и сгенерировать ему SSL сертификат LetsEncrypt, то вылезает ошибка "LetsEncrypt account registration 400". Можно на такой домен как-то сделать сертификат или о каком сертификате шла речь?
2. По второму методу. Какие сертификаты указывать если речь идёт о домене на котором нет SSL сертификата. Можно поподробнее расписать какой из доменов указывать в моем случае?
Проблема следующая:
На одном IP несколько сайтов, на некоторых из них есть SSL сертификаты, а на некоторых нет. Если пытаюсь зайти на любой из сайтов без сертификата используя протокол HTTPS, попадаю на самый первый домен который был добавлен. Казалось бы проблем нет, не заходи через https если у тебя его нет и всё будет ОК, но не тут то было. Поисковики, например Яндекс, индексируют сразу оба протокола и ко всем сайтам без SSL добавляет страницы того самого домена который доступен по IP.
Вроде тут -> viewtopic.php?t=11369 всё не плохо расписано, даже помогло человеку. Но у меня осталось пара вопросов, надеюсь поможете.
1. По методу который помог. Я снес default.domain, теперь когда пытаюсь его снова сделать и сгенерировать ему SSL сертификат LetsEncrypt, то вылезает ошибка "LetsEncrypt account registration 400". Можно на такой домен как-то сделать сертификат или о каком сертификате шла речь?
2. По второму методу. Какие сертификаты указывать если речь идёт о домене на котором нет SSL сертификата. Можно поподробнее расписать какой из доменов указывать в моем случае?
Re: Не могу разобраться с редиректом с HTTPS на HTTP
редирект на https
чтобы не лезть в основные конфиги и не менять шаблоны
conf/web/nginx.<ваш домен>.conf
для тупого яндекса:
robots.txt
ЗЫ: .htaccess в фтопку, nginx быстрее отрабатывает чем apache
чтобы не лезть в основные конфиги и не менять шаблоны
conf/web/nginx.<ваш домен>.conf
Code: Select all
if ($scheme = http) {return 301 https://$server_name$request_uri;}
robots.txt
Code: Select all
Host: https://<ваш домен>
-
- Posts: 33
- Joined: Sat Apr 18, 2015 7:08 pm
Re: Не могу разобраться с редиректом с HTTPS на HTTP
1. Мне нужно наоборот на http.
2. Для яндекса и так всё прописано, но он не склеит сайты если на них разный контент, а тут получается как раз разный, поэтому у него в индексе болтаются страницы с 2х сайтов.
2. Для яндекса и так всё прописано, но он не склеит сайты если на них разный контент, а тут получается как раз разный, поэтому у него в индексе болтаются страницы с 2х сайтов.
Re: Не могу разобраться с редиректом с HTTPS на HTTP
наоборот
доп конфиг
рототс
доп конфиг
Code: Select all
if ($scheme != http) {return 301 http://$server_name$request_uri;}
Code: Select all
Host: http://<ваш домен>
-
- Posts: 33
- Joined: Sat Apr 18, 2015 7:08 pm
Re: Не могу разобраться с редиректом с HTTPS на HTTP
Так а в nginx это в какой секции писать? Server?
И сейчас у меня нет конфига с укаанием домена, его тупо создать? И нужно ли его инклюдить в основной?
И сейчас у меня нет конфига с укаанием домена, его тупо создать? И нужно ли его инклюдить в основной?
Re: Не могу разобраться с редиректом с HTTPS на HTTP
в дополнительном файле
во всех шаблонах для nginx прописаны дополнительные файлы. которые можно просто положить в папку и они будут изменяться при пересоздании виртуального хоста...
инклуды в шаблонах уже есть
для шаблона
include %home%/%user%/conf/web/nginx.%domain_idn%.conf*;
для шаблона https
include %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
в вашем случае нужен файл include %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
нашел ошибку в шаблоне caching.stpl
указан файл
include %home%/%user%/conf/web/nginx.%domain_idn%.conf*;
должено быть
include %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
чтобы уточнить какой файл необходимо создать посмотрите %home%/%user%/conf/web/snginx.conf;
создайте файл и добавьте строчку.
во всех шаблонах для nginx прописаны дополнительные файлы. которые можно просто положить в папку и они будут изменяться при пересоздании виртуального хоста...
инклуды в шаблонах уже есть
для шаблона
include %home%/%user%/conf/web/nginx.%domain_idn%.conf*;
для шаблона https
include %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
в вашем случае нужен файл include %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
нашел ошибку в шаблоне caching.stpl
указан файл
include %home%/%user%/conf/web/nginx.%domain_idn%.conf*;
должено быть
include %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
чтобы уточнить какой файл необходимо создать посмотрите %home%/%user%/conf/web/snginx.conf;
создайте файл и добавьте строчку.
-
- Posts: 33
- Joined: Sat Apr 18, 2015 7:08 pm
Re: Не могу разобраться с редиректом с HTTPS на HTTP
Так) Сразу прошу прощения за тупёжку, я реально в этом всё не силен.
Я зашёл сюда %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
Там прописано 2 блок для доменов у которых есть SSL. В каждом блоке есть строчка include /home/admin/conf/web/snginx.%domain.ru%.conf*; (самих этих файлов в папке, кстати, нету). Кроме этого прописаны пути к сертификатам, напомню что у интересующего меня домена нет сертификата и мне нечего в такие пути записывать.
Что мне получается сейчас с этим делать?
Я зашёл сюда %home%/%user%/conf/web/snginx.%domain_idn%.conf*;
Там прописано 2 блок для доменов у которых есть SSL. В каждом блоке есть строчка include /home/admin/conf/web/snginx.%domain.ru%.conf*; (самих этих файлов в папке, кстати, нету). Кроме этого прописаны пути к сертификатам, напомню что у интересующего меня домена нет сертификата и мне нечего в такие пути записывать.
Что мне получается сейчас с этим делать?
Re: Не могу разобраться с редиректом с HTTPS на HTTP
если для домена нет сертификата, то виртуального хоста в конфиге snignx.conf не может быть. WEB UI не даст сохранить домен.
файл /home/admin/conf/web/snginx.%domain.ru%.conf надо создать.
файл /home/admin/conf/web/snginx.%domain.ru%.conf надо создать.
Code: Select all
echo 'if ($scheme != http) {return 301 http://$server_name$request_uri;}' > home/admin/conf/web/snginx.%domain.ru%.conf
sudo systemctl reload nginx
-
- Posts: 33
- Joined: Sat Apr 18, 2015 7:08 pm
Re: Не могу разобраться с редиректом с HTTPS на HTTP
Создал файлик в папке /home/admin/conf/web с названием snginx.%тут_мой_домен%.org.conf, вписал туда то что вы сказали, сделал это даже командой как у вас. Рестартанул nginx командой service nginx restart. Строчка в файле появилась.
Редиректа по прежнему не происходит. Нужно где-то инклудить этот файл?
Редиректа по прежнему не происходит. Нужно где-то инклудить этот файл?