Re: передать в Fastcgi адрес бэкенда

Maxim Dounin mdounin на mdounin.ru
Ср Фев 15 15:12:58 UTC 2017


Hello!

On Wed, Feb 15, 2017 at 08:34:00AM -0500, neomaq wrote:

> Здравствуйте,
> 
> имеется nginx + php-fpm и несколько бэкендов,
> 
> появилась потребность в собственном обрабочтике сессий в php,  для чего
> нужно знать адрес бэкенда,  на котором происходит дело
> 
> можно дописать в response header с помощью директивы add_header,
> но к этому моменту сессия уже сформирована.
> 
> в связи с этим ищу способ передать в fastcgi значение переменной
> $upstream_addr
> 
> пробовал добавлять: 
> location ~ \.php$ {
> fastcgi_param   HTTP-X_UPSTREAM    $upstream_addr;
> 
> но до fastcgi этот заголовок долетает пустым
> 
> как быть?

Формирование запроса происходит до того, как будет 
выбран конкретный бекенд, и один и тот же единожды сформированный 
запрос может быть отправлен на несколько бекендов в рамках 
fastcgi_next_upstream.  Так что задача в озвученном виде - не 
решается.  Попробуйте вернуться на шаг назад и решить исходную 
проблему по другому.

-- 
Maxim Dounin
http://nginx.org/


Подробная информация о списке рассылки nginx-ru