Welcome! Log In Create A New Profile

Advanced

[proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov
March 05, 2023 10:42AM
Приветствую!

Разбираясь с cgi-скриптом обслуживающим многочисленные доменные имена
столкнулся со следующей проблемой:

В /etc/nginx/fastcgi_params написано

fastcgi_param SERVER_NAME $server_name;

При этом в самом конфиге сайта server_name не указан, сервер обслуживает все
доменные имена (фильтрация по имени осуществляется на фронтэнде).

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

А в этой переменной пусто. Потому что в $server_name тоже пусто. Я подозреваю
что это как-то завязано на пустой server_name в конфиге.

RFC же требует чтобы SERVER_NAME был корректно установлен всегда:
https://tools.ietf.org/html/rfc3875#section-4.1.14

Я локально решил эту проблему использовав $http_host в качестве источника
доменного имени. На практике он определен всегда (хотя в теории может быть
только для http >= 1.1 это я не проверял):

fastcgi_param SERVER_NAME $http_host;

Но это некоторые полумеры которые не решают проблему глобально...
Надо либо починить $server_name чтобы он был установлен всегда, либо
использовать $http_host для задания переменной окружения SERVER_NAME, либо
какая-то более сложная комбинация.

Если авторы заинтересованы в решении этой проблемы, я могу провести
дополнительные исследования, подготовить тестовые примеры демонстрирующиее это
поведение и т.п. (В исходный код nignx наверное глубоко лезть не готов, хотя
квалификация позволяет, не знаком я с ним совсем).

Если авторы не заинтересованы... Значит придется везде в инструкциях тащить за
собой эту уродливую конструкцию с $http_host...

--
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
Subject Author Posted

[proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 05, 2023 10:42AM

Re: [proposal] SERVER_NAME в fastcgi_params

Evgeniy Berdnikov March 05, 2023 10:50AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 05, 2023 11:00AM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 05, 2023 02:06PM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 06, 2023 01:44AM

Re: [proposal] SERVER_NAME в fastcgi_params

Andrey Kopeyko March 06, 2023 06:00AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 06, 2023 06:08AM

Re: [proposal] SERVER_NAME в fastcgi_params

Andrey Kopeyko March 06, 2023 06:24AM

Re: [proposal] SERVER_NAME в fastcgi_params

Evgeniy Berdnikov March 06, 2023 09:18AM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 06, 2023 01:36PM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 06, 2023 01:38PM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 06, 2023 01:42PM

Re: [proposal] SERVER_NAME в fastcgi_params

Evgeniy Berdnikov March 06, 2023 01:52PM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 06, 2023 01:56PM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 06, 2023 03:02PM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 06, 2023 03:14PM

Re: [proposal] SERVER_NAME в fastcgi_params

Andrey Kopeyko March 06, 2023 03:26PM

Re: [proposal] SERVER_NAME в fastcgi_params

Evgeniy Berdnikov March 06, 2023 05:20PM

Re: [proposal] SERVER_NAME в fastcgi_params

Maxim Dounin March 06, 2023 07:24PM

Re: [proposal] SERVER_NAME в fastcgi_params

Maxim Dounin March 06, 2023 05:54PM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 06, 2023 10:18AM

Re: [proposal] SERVER_NAME в fastcgi_params

Dmitry Ivanov March 13, 2023 02:18AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 13, 2023 02:22AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maxim Dounin March 13, 2023 03:28AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 13, 2023 03:34AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maksim Kulik March 13, 2023 03:48AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 13, 2023 03:52AM

Re: [proposal] SERVER_NAME в fastcgi_params

Evgeniy Berdnikov March 13, 2023 04:38AM

Re: [proposal] SERVER_NAME в fastcgi_params

Evgeniy Berdnikov March 13, 2023 04:52AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maxim Dounin March 13, 2023 04:58AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 13, 2023 05:10AM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 13, 2023 05:42AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 13, 2023 06:14AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maksim Kulik March 13, 2023 06:18AM

Re: [proposal] SERVER_NAME в fastcgi_params

Nikolay Shaplov March 13, 2023 06:22AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maksim Kulik March 13, 2023 06:28AM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 13, 2023 06:52AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maksim Kulik March 13, 2023 06:54AM

Re: [proposal] SERVER_NAME в fastcgi_params

Илья Шипицин March 13, 2023 07:10AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maksim Kulik March 13, 2023 07:20AM

Re: [proposal] SERVER_NAME в fastcgi_params

Maxim Dounin March 13, 2023 04:28AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 154
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready