Re: Аналог ProxyPassReverse
Igor Sysoev
igor на sysoev.ru
Ср Ноя 4 11:46:29 UTC 2015
On 04 Nov 2015, at 13:45, Alex Domoradov <alex.hha at gmail.com> wrote:
> Столкнулся с проблемой необходимости перевести apache на nginx. На данный момент в apache в настройках виртуалхоста есть директивы
>
> ProxyPassReverse / http://javaclr.example.net/
> ProxyPassReverse / http://imagesclr.example.net/
> ProxyPassReverse / http://aspclr.example.net/
> ProxyPassReverse / http://vsclr.example.net/
>
> В офф документации nginx - https://www.nginx.com/resources/wiki/start/topics/examples/likeapache/ говорится, что достаточно использовать proxy_pass и передавать соотв хедеры.
>
> Но тут возникает вопрос, а как мне в одном location использовать несколько директив proxy_pass. Или единственный выход использовать map, что то вида
>
> map $host $proxy_host {
> default "";
> "~(javaclr|imagesclr|aspclr|vsclr)\.example\.net" "$host";
> }
>
> server {
> listen 80;
> server_name javaclr.example.net imagesclr.example.net aspclr.example.net vsclr.example.net;
>
> location / {
> proxy_pass http://$proxy_host;
> proxy_set_header X-Forwarded-Host $host;
> proxy_set_header X-Forwarded-Server $host;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> }
> }
>
Аналог ProxyPassReverse - proxy_redirect:
http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_redirect
Но, возможно, правильнее не валить всё в одну кучу, а сделать несколько серверов.
--
Igor Sysoev
http://nginx.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20151104/1133483f/attachment.html>
Подробная информация о списке рассылки nginx-ru