<div dir="ltr">Nginx, это пассивные проверки.</div><div class="gmail_extra"><br><div class="gmail_quote">20 марта 2017 г., 18:40 пользователь BieZax <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>
<br>
        location = /abc/auth {<br>
                internal;<br>
                proxy_set_header X-CAuth-Realm "Registration";<br>
                proxy_set_header X-CAuth-Base "access";<br>
                proxy_set_header X-CAuth-Table "users";<br>
                proxy_set_header X-CAuth-GField "_S_abc";<br>
                proxy_set_header X-CAuth-PassF "password";<br>
                client_max_body_size 0;<br>
                proxy_pass_request_body off;<br>
                proxy_set_header X-Real-IP       $remote_addr;<br>
                proxy_set_header Host $host;<br>
                proxy_set_header Content-Length "";<br>
                proxy_set_header X-Original-URI $request_uri;<br>
                proxy_pass <a href="http://127.0.0.1:8079" rel="noreferrer" target="_blank">http://127.0.0.1:8079</a>; # тут   висит perl демон и<br>
   авторизует<br>
        }<br>
<br>
        location /abc/ {<br>
                auth_request /abc/auth;<br>
                proxy_set_header Host <a href="http://abc-i1.balhblah.ru" rel="noreferrer" target="_blank">abc-i1.balhblah.ru</a>;<br>
                proxy_pass  <a href="http://abc" rel="noreferrer" target="_blank">http://abc</a>;<br>
                proxy_redirect  <a href="http://abc-i1.blahblah.ru/" rel="noreferrer" target="_blank">http://abc-i1.blahblah.ru/</a> /;<br>
                proxy_redirect  <a href="http://abc-i2.blahblah.ru/" rel="noreferrer" target="_blank">http://abc-i2.blahblah.ru/</a> /;<br>
                proxy_next_upstream error timeout invalid_header http_500<br>
http_503 http_502 http_504;<br>
        }<br>
<br>
...<br>
upstream abc {<br>
        ip_hash;<br>
        server  <a href="http://abc-i1.blahblah.ru" rel="noreferrer" target="_blank">abc-i1.blahblah.ru</a>;<br>
        server  <a href="http://abc-i2.blahblah.ru" rel="noreferrer" target="_blank">abc-i2.blahblah.ru</a>;<br>
}<br>
<br>
Все   работает   нормально, пока    один  из  бэкендов не    начинает<br>
отдавать 502<br>
<br>
Вот   пример  лога:<br>
<br>
logformat '$remote_addr - $remote_user [$time_local] "$request" ' '$status<br>
$bytes_sent "$http_referer" ' '"$http_user_agent" "$cookie_CID"<br>
"$request_time" "$upstream_response_time" "$upstream_addr"<br>
"$upstream_status" "$upstream_http_server"'<br>
<br>
2 строчки  из лога, идущие подряд:<br>
10.105.5.152 - vasya [20/Mar/2017:17:03:15 +0300] "GET<br>
/abc/Account/Login?ReturnUrl=%<wbr>2Fabc%2F HTTP/1.0" 200 3295 "-" "Mozilla/5.0<br>
(Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87<br>
Safari/537.36" "wmmDEljC0bF6XGXtCV9/Ag==" "10.105.5.152" "0.136" "0.003,<br>
0.113" "<a href="http://10.10.11.72:80" rel="noreferrer" target="_blank">10.10.11.72:80</a>, <a href="http://10.10.11.71:80" rel="noreferrer" target="_blank">10.10.11.71:80</a>" "502, 200" "Microsoft-IIS/8.5"<br>
10.105.5.152 - vasya  [20/Mar/2017:17:03:16 +0300] "POST<br>
/abc/ru-RU/Account/Login?<wbr>ReturnUrl=%2Fabc%2F HTTP/1.0" 502 713<br>
"<a href="https://blahblah.ru/abc/Account/Login?ReturnUrl=%2Fabc%2F" rel="noreferrer" target="_blank">https://blahblah.ru/abc/<wbr>Account/Login?ReturnUrl=%<wbr>2Fabc%2F</a>" "Mozilla/5.0<br>
(Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87<br>
Safari/537.36" "wmmDEljC0bF6XGXtCV9/Ag==" "0.024" "0.004" "<a href="http://10.10.11.72:80" rel="noreferrer" target="_blank">10.10.11.72:80</a>"<br>
"502" "Microsoft-IIS/8.5"<br>
В  error логе  при этом  пусто.<br>
<br>
Разве    при такой  конфигурации   фронтенд не должен всегда  спрашивать<br>
второй  сервер,  если   один  из них не отвечает? Почему   при одной и тоже<br>
 конфигурации  получается  2   разных  реакции?<br>
<br>
Posted at Nginx Forum: <a href="https://forum.nginx.org/read.php?21,273046,273046#msg-273046" rel="noreferrer" target="_blank">https://forum.nginx.org/read.<wbr>php?21,273046,273046#msg-<wbr>273046</a><br>
<br>
______________________________<wbr>_________________<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/<wbr>mailman/listinfo/nginx-ru</a></blockquote></div><br></div>