<div dir="ltr">Здравствуйте.<div><br></div><div>Модули не нужны.</div><div><br></div><div>location / {</div><div> <span style="color:rgb(0,0,0);line-height:16px">auth_request /router;</span></div><div><span style="line-height:16px;color:rgb(0,0,0)"> auth_request_set $proxy_uri $upstream_http_x_uri;</span></div><div><span style="line-height:16px;color:rgb(0,0,0)"><br></span></div><div><span style="line-height:16px;color:rgb(0,0,0)"> proxy_pass <a href="http://your_hostname">http://your_hostname</a>$proxy_uri;</span></div><div><span style="line-height:16px;color:rgb(0,0,0)"> ...</span></div><div>}</div><div><br></div><div>location = /router {</div><div> proxy_pass <a href="http://your_router_backend">http://your_router_backend</a>;</div><div> <span style="color:rgb(0,0,0);line-height:16px">proxy_set_header X-Original-URI $request_uri;</span></div><div>}</div><div><br></div><div>Роутер должен анализировать <span style="color:rgb(0,0,0);line-height:16px">X-Original-URI и выдавать заголовок X-Proxy-URI.</span></div><div><span style="color:rgb(0,0,0);line-height:16px">Как-то так.</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">19 февраля 2016 г., 14:46 пользователь sirakuzi <span dir="ltr"><<a href="mailto:nginx-forum@forum.nginx.org" target="_blank">nginx-forum@forum.nginx.org</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Добрый день,<br>
<br>
Большого опыта общения с Nginx не имею, но потребовалось написать Nginx<br>
модуль который должен иметь возможность проксировать входящий запрос на<br>
заранее не определенные места (к примеру url куда производить проксирование<br>
будут браться из запроса к другому веб-сервису или из БД, запросы к которым<br>
будут происходить в модуле).<br>
Пока придумал структуру через задание переменной и изменения ее значения в<br>
зависимости от приходящего url, а затем передачи управления прокси модулю на<br>
эту переменную:<br>
proxy_pass $variable_name<br>
Как вы оцениваете такую реализацию? Жизнеспособна либо она при нагрузке?<br>
Может есть более правильные решения такого вопроса?<br>
<br>
Так же есть вопрос про обращениям к сторонним вебсервисам в теле модуля,<br>
лучше использовать связку subrequest+proxy_pass или же вполне можно<br>
воспользоваться сторонней библиотекой, к примеру libcurl?<br>
<br>
Posted at Nginx Forum: <a href="https://forum.nginx.org/read.php?21,264622,264622#msg-264622" rel="noreferrer" target="_blank">https://forum.nginx.org/read.php?21,264622,264622#msg-264622</a><br>
<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">WBR,<br><div>Vadim Lazovskiy</div></div></div>
</div>