ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Переменное имя для pro xy_pass



Добрый день.

  Есть следующая ситуация.

  Есть куча несколько бакэндов (серверов):
    srv1.company-internal.com
    ...
    srvN.company-internal.com

  Есть 1 кэширующий прокси, который обслуживает домены:
    srv1.company.com
    ...
    srvN.company.com

  Смысл такой, что прокси кэширует запросы к бакэндам (proxy_store) по куче 
разных location'ов.
  Проблема в том, что бакэнды имеют разные IP и каждый запрос на публичный 
домен надо отправлять на
  соответствующий private домен. То есть хочется на прокси сделать что-то вроде:
  server {
    server_name       srv1.company.com .. srvN.company.com;
    location1 {
       ...
       error_page 404 = @fetch;
    }
    ...
    locationN {
       ...
       error_page 404 = @fetch;
    }
    location @fetch {
       internal;
       if ($host ~ "^(.*).company.com$") {
          set     $h      $1.company-internal.com;
       }
       proxy_pass                      http://$h;
       # 
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
       proxy_store                     /path/$host$request_uri;
       proxy_store_access              user:rw  group:rw  all:r;
    }
  }

  Вопрос - как это лучше сделать? Делать "server {}" для каждого домена очень 
не хочется...

-- 
Best regards,
 Sukhachev Andrew




 




Copyright © Lexa Software, 1996-2009.