Re: непонятное поведение
Maxim Dounin
mdounin на mdounin.ru
Пн Июн 10 12:34:42 UTC 2019
Hello!
On Mon, Jun 10, 2019 at 09:16:40AM +0300, Aln Kapa wrote:
> server {
> server_name xx.xxxx.xxxx;
> listen 443 http2;
>
> .............................
>
> location / {
> proxy_pass http://127.0.0.1:10080;
> ..................................................
> }
> }
>
> server {
> listen 80;
> server_name xx.xxxx.xxxx;
> return 302 https://xx.xxxx.xxxx/$request_uri;
> }
> Да у меня в конфигурации есть редирект, но разве "listen 80" означает любой
> в интернете IP адрес, по идеи тут должно быть любой мой?
> и потом указано же "server_name xx.xxxx.xxxx;" как с этим быть?
"listen 80" означает - отвечать на любые запросы, поступающие по
IPv4 на порт 80. Что при этом написано в запросе - не важно,
важно - куда было установлено TCP-соединение. А оно, очевидно,
было на 80-й порт.
Что до "server_name", то для выбора блока server это важно тогда и
только тогда, когда в конфигурации есть другие блоки server,
использующие тот же listen-сокет. В данном случае блок server
для 80-го порта - единственный, он же сервер по умолчанию, и
запрос будет обработан именно в этом блоке server.
Как я уже писал, подробнее обо всём этом можно прочитать тут:
http://nginx.org/ru/docs/http/request_processing.html
--
Maxim Dounin
http://mdounin.ru/
Подробная информация о списке рассылки nginx-ru