$upstream_addr contains name of upstream

Konstantin Svist fry.kun на gmail.com
Вт Дек 15 02:53:29 MSK 2009


On 12/14/2009 05:21 AM, Sergey A. Osokin wrote:
> Добрый день,
>
> On Sun, Dec 13, 2009 at 02:12:56PM -0800, Konstantin Svist wrote:
>    
>> upstream redisxxx {
>>    server unix:/tmp/redis-http-cache.sock;
>>    server localhost:6381;
>>    server localhost:1111;
>> }
>> server {
>>    location / {
>>      ...
>>      redis_pass redisxxx;
>>      error_page 404 500 502 504 = @real-backend;
>>    }
>>    location @real-backend {
>>      proxy_pass http://backend
>>      proxy_set_header lastcache $upstream_addr;
>>    }
>> }
>>
>> localhost:1111 порт закрыт; два других одинаковый сервер, всегда
>> возвращают 404
>>
>> 3 запроса на backend показывают header:
>> Lastcache: unix:/tmp/redis-http-cache.sock    ~правильно
>> Lastcache: 127.0.0.1:1111, 127.0.0.1:6381     ~правильно
>> Lastcache: redisxxx                           ~глюка
>>      
> есть возможность реализовать такую же конфигурацию, но на memcached?
> Будет ли проявлятся ошибка?
>
>    

Попробовал - memcached возвращает 404 когда ключ не найден 
($upstream_status), и имя upstream-а не появляется в $upstream_addr
redis отвечает 502 на случай когда ключ не найден




Подробная информация о списке рассылки nginx-ru