<HTML><BODY>Добрый вечер!<br><br>До сих пор не нашли решение.<br><br>В целом задача такова:<br><br>Для клиентов, чьи запросы пришли с определенных подсетей (разрешенных) - все пришедшие в запросе заголовки с названием X-Custom-Header (или все, или последний из пришедших) передать дальше в proxy_pass запросе.<br><br>Для остальных (запрещенных) - не передавать дальше в proxy_pass заголовки с таким названием.<br><br>proxy_set_header недопустим в контексте if, а все другие варианты требуют замены содержимого заголовка на $http_x_custom_header, где хранится только значение из первого заголовка.<br><br>---<br>С Уважением, Александр<br><br><blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;">
Четверг, 12 ноября 2015, 20:06 +03:00 от Александр Попков <voodoo_alex@mail.ru>:<br>
<br>
<div id="">
<div class="js-helper js-readmsg-msg">
<style type="text/css"></style>
<div>
<base target="_self" href="https://e.mail.ru/">
<div id="style_14473480170000000879_BODY">
Здравствуйте!<br><br>Как ни странно не смог нагуглить ничего по этому вопросу.<br><br>Есть клиент, который шлет в HTTP-запросе кастомный заголовок, иногда дублирующийся.<br><br>Например<br><br>X-Custom-Header: value1<br>X-Custom-Header: value2<br><br>Нам в конфиге nginx нужно получить значение этого заголовка, для чего мы используем переменную $http_x_custom_header.<br>В случае дублирования заголовков в эту переменную попадает только первое значение.<br>Конкретно в примере выше - переменная $http_x_custom_header будет равна "value1".<br><br>Не нашли никаких настроек этого поведения.<br>Есть ли штатные способы получить на уровне конфига nginx второе (на самом деле последнее) значение?<br><br>Если это важно:<br> - версия nginx 1.8.0<br> - значение последнего заголовка с таким названием нужно дальше использовать в таком блоке:<br> map $is_case_success $fixed_custom_header {<br> 0 "";<br> 1 $http_x_custom_header; # хотим тут "value2" а не "value1"<br> }<br><br>Заранее большое спасибо за помощь!<br><br>-- <br>С Уважением, Александр.<br>
</div>
<div>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="/compose?To=nginx%2dru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br data-mce-bogus="1"></div>
<base target="_self" href="https://e.mail.ru/">
</div>
</div>
</div>
</blockquote>
<br></BODY></HTML>