Re[2]: Настройка распределения по серверам.

Markes marquez at bk.ru
Thu Jun 4 00:01:07 MSD 2009


Когда клиент набирает адрес http://мой_домен.ру/webservice/blablabla
Вот это /webservice/blablabla клиент получает не с
web-сервера(nginx/apache), а от web сервиса с другого сервера. Что и
настроено в апаче.

nginx пока никак не участвует в переключение. Я делаю это вручную в
апаче, что неудобно.

upstream backend {
    server 127.0.0.1:8080;
    server IP2:8080        backup;

Мне этот блок в дополнении к своему конфигу добавить?
А конфиг апача как?

> On Wed, Jun 03, 2009 at 04:01:51PM +0400, Markes wrote:

>> Приветствую.
>> 
>> Используется связка apache + nginx (0.5.35).
>> 
>> В apache настроено "проксирование адреса", вот блок из конфига:
>> 
>> NameVirtualHost *:8080
>> <VirtualHost *:8080>
>>     DocumentRoot "/usr/local/www/data"
>> 
>>     AccelPass /webservice/ http://IP1/webservice/ [MC=10,MW=20,PH]
>> #    AccelPass /webservice/ http://IP2/webservice/ [MC=10,MW=20,PH]
>>     AccelPass / http://127.0.0.1:8081/ [MC=10,MW=20,PH]
>>       <Location       /cachemgr>
>>         SetHandler  "accel-cachemgr"
>>       </Location>
>> 
>> Т.е. если при обращении к серверу в адресной строке есть /webservice/,
>> ответ отдается с адреса http://IP1/webservice/.
>> Если  http://IP1/webservice/  падает,  я  руками  меняю  адрес  на
>> http://IP2/webservice/ и перезапускаю apache.
>> 
>> Вот кусок из конфига nginx:
>> 
>>         location = /cgi-bin/main.pl {
>>           proxy_pass http://127.0.0.1:8080;
>>           proxy_connect_timeout 10;
>>           proxy_intercept_errors on;
>>           error_page 502 503 504 = @fallback;
>>         }
>> 
>>         location  @backend {
>>           proxy_pass http://127.0.0.1:8080;
>>           proxy_connect_timeout 10;
>>           proxy_intercept_errors on;
>>           error_page 502 503 504 = @fallback;
>> 
>>         }
>> 
>>         location @fallback {
>>           proxy_pass http://IP3(резерный сайт);
>>         }
>> 
>> 
>> Хочется автоматического   переключения,   конечно.
>> Опыта   мало, подскажите, пожалуйста, как правильней настроить подобную функцию?

> Я не понял, что куда переключается, но возможно, нужен:

> upstream backend {
>     server 127.0.0.1:8080;
>     server IP2:8080        backup;
> }





-- 
С уважением,
 Markes                          mailto:marquez at bk.ru






More information about the nginx-ru mailing list