Все же понимают, что отсутствующий server_name - это просто способ "упрощения" минимально необходимого конфига и на самом деле имя сервера все равно присутствует (дефолтное значение - пустая строка). Что именно попадет в этом случае в SERVER_NAME - не совсем понятно. Но исходя из всей вышеописанной логики - туда должна попасть пустая строка.
пн, 13 мар. 2023 г. в 14:09, Илья Шипицин <chipits...@gmail.com>: > и да и нет. > в конфиге сервера, приведенным топикстартером server_name отсутствует, а > запрос смаршрутизировался, потому что указан default_server в listen. > > а как интерпретировать MUST в случае отсутствующего server_name RFC не > говорит )) > > пн, 13 мар. 2023 г. в 11:53, Maksim Kulik <kulm...@gmail.com>: > >> В RFC на эту тему есть вполне четкое мнение: >> >> The SERVER_NAME variable MUST be set to the name of the server host >> to which the client request is directed. >> >> Там должно быть имя сервера, который обслуживает этот запрос. Из >> документации nginx: Первое имя становится основным именем сервера. Всё >> вполне однозначно при внимательном прочтении. >> >> пн, 13 мар. 2023 г. в 13:50, Илья Шипицин <chipits...@gmail.com>: >> >>> >>> >>> пн, 13 мар. 2023 г. в 11:12, Nikolay Shaplov <dh...@nataraj.su>: >>> >>>> В письме от понедельник, 13 марта 2023 г. 12:40:14 MSK пользователь >>>> Илья >>>> Шипицин написал: >>>> > > A deployed server can have more than one possible value for this >>>> > > variable, where several HTTP virtual hosts share the same IP >>>> address. >>>> > > In that case, the server would use the contents of the request's >>>> Host >>>> > > header field to select the correct virtual host. >>>> > > >>>> > > Мой вольный перевод "В случае если есть несколько кандидатов на >>>> заполнение >>>> > > переменной окружения SERVER_NAME, например несколько виртальных >>>> хостов >>>> > > использует один и тот же IP-адрес, серверу следует изучить >>>> содержимое >>>> > > заголовка Host пришедшего в http-запросе и использовать его >>>> значение для >>>> > > того >>>> > > чтобы выбрать корректный virtual host" >>>> > >>>> > все верно. но это про другое же речь. >>>> > в цитируемом фрагменте речь про то, что если у вас несколько >>>> виртуальных >>>> > хостов, но выбрать правильный можно и нужно исходя из Host. >>>> > >>>> > но если по факту вы попали в дефолт, то выбор, описанный выше, вы уже >>>> > сделали. >>>> >>>> хорошо, давайте совсем на примерах. >>>> В конфиге написано: >>>> >>>> server_name h1.example.com h2.example.com h3.example.com; >>>> include fastcgi_params; >>>> fastcgi_pass unix:/var/run/my-fastcgi; >>>> >>>> Я браузером захожу на h2.example.com >>>> >>>> Что должно оказаться в SERVER_NAME для cgi-скрипта который будет >>>> отвечать на >>>> этот запрос? >>>> >>> >>> процитированный Вами фрагмент RFC говорит, что, если у вас есть >>> несколько блоков server { ... }, то >>> выбрать надо данный конкретный, потому что в server_name у него >>> присутствует h2.example.com >>> >>> а что писать в SERVER_NAME для cgi-скрипта - тут нет четкого мнения, >>> скажем так, могут быть варианты. >>> >>> >>>> >>>> -- >>>> Nikolay Shaplov aka Nataraj >>>> Fuzzing Engineer at Postgres Professional >>>> Matrix IM: @dhyan:nataraj.su >>>> >>> _______________________________________________ >>> nginx-ru mailing list >>> nginx-ru@nginx.org >>> https://mailman.nginx.org/mailman/listinfo/nginx-ru >>> >> _______________________________________________ >> nginx-ru mailing list >> nginx-ru@nginx.org >> https://mailman.nginx.org/mailman/listinfo/nginx-ru >> > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > https://mailman.nginx.org/mailman/listinfo/nginx-ru >
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org https://mailman.nginx.org/mailman/listinfo/nginx-ru