nginx 499 ошибка vaadin 8, весенняя загрузка - PullRequest
0 голосов
/ 30 апреля 2018
  • Ваадин 8.4.0
  • @ Push (transport = Transport.WEBSOCKET_XHR)
  • Spring boot 2.0.1

Мы получили некоторые ошибки nginx начиная с vaadin 8.4.0. Мы тестируем нашу систему на разных устройствах и браузерах, но ошибок не было. В нашей системе регистрации мы нашли следующие ошибки

журнал ошибок ngix: / error только иногда, а не когда-либо /

499 | POST /vaadinServlet/HEARTBEAT/?v-uiId=0 HTTP/2.0

или

499 | POST /vaadinServlet/UIDL/?v-uiId=2 HTTP/2.0

или

18184#0: *266253 upstream prematurely closed connection while reading response header from upstream

Файл nginx.conf:

server {
    listen xxx.xxx.xxx.xxx:443 ssl http2;

    server_name tld.com;
    server_name www.tld.com;
    server_name ipv4.tld.com;

    ssl_certificate             /opt/psa/var/certificates/cert-xxxxxx;
    ssl_certificate_key         /opt/psa/var/certificates/cert-xxxxxx;
    ssl_client_certificate      /opt/psa/var/certificates/cert-xxxxxx;

    client_max_body_size 128m;

    # disable unsupported ciphers
    ssl_ciphers AESGCM:HIGH:!aNULL:!MD5;

    # ssl optimizations
    ssl_session_cache shared:SSL:60m;
    ssl_session_timeout 60m;
    add_header Strict-Transport-Security "max-age=31536000";

    root "/var/www/vhosts/tld.com/httpdocs";
    access_log "/var/www/vhosts/system/tld.com/logs/proxy_access_ssl_log";
    error_log "/var/www/vhosts/system/tld.com/logs/proxy_error_log";

    if ($host ~* ^www\.tld\.com$) {
            #rewrite ^(.*)$ https://tld.com$1 permanent;
            return 301 https://tld.com$request_uri;
    }


    location / {
            proxy_pass https://xxx.xxx.xxx.xxx:801; #7081 | 801
            proxy_set_header Host             $host;
            proxy_set_header X-Real-IP        $remote_addr;
            proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header X-Accel-Internal /internal-nginx-static-location;

            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";

            proxy_connect_timeout   3600;
            proxy_read_timeout      84600s;
            proxy_send_timeout      84600s;
    }

     location ~ ^/(vaadinServlet|VAADIN) {
           proxy_set_header          X-Forwarded-Host        $host;
           proxy_set_header          X-Forwarded-Server      $host;
           proxy_set_header          X-Real-IP               $remote_addr;
           proxy_set_header          X-Forwarded-For         $proxy_add_x_forwarded_for;
           proxy_set_header          Host                    $host;
           proxy_http_version        1.1;
           proxy_set_header          Upgrade                 $http_upgrade;
           proxy_set_header          Connection              "upgrade";
           proxy_buffering           off;
           proxy_ignore_client_abort off;
           proxy_pass                https://xxx.xxx.xxx.xxx:801;
           proxy_read_timeout 84600s;
           proxy_send_timeout 84600s;
           proxy_redirect off;
    }

    location /internal-nginx-static-location/ {
            alias /var/www/vhosts/tld.com/httpdocs/;
            internal;
    }

    location ~ ^/(plesk-stat|awstats-icon|webstat|webstat-ssl|ftpstat|anon_ftpstat) {
            proxy_pass https://xxx.xxx.xxx.xxx:7081;
            proxy_set_header Host             $host;
            proxy_set_header X-Real-IP        $remote_addr;
            proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header X-Accel-Internal /internal-nginx-static-location;
            access_log off;
    }

    add_header X-Powered-By PleskLin;

        include "/var/www/vhosts/system/tld.com/conf/vhost_nginx.conf";
}
# VAADIN PUSH
    map $http_upgrade $connection_upgrade {
            default upgrade;
            '' close;
    }


server {
        listen xxx.xxx.xxx.xxx:80;

        server_name tld.com;
        server_name www.tld.com;
        server_name ipv4.tld.com;

        client_max_body_size 128m;

        return 301 https://$host$request_uri;
}

Ответы [ 3 ]

0 голосов
/ 07 мая 2018

это ошибка vaadin 8.4.0 и исправленная в 8.4.1. / атмосфера 2.4.24 / https://github.com/vaadin/framework/issues/10861#issuecomment-386611465

0 голосов
/ 27 декабря 2018

vaadin 8.6.3, Spring boot 2.0.3 enter image description here

0 голосов
/ 30 апреля 2018

499 - NGX_HTTP_CLIENT_CLOSED_REQUEST - это код состояния для случая, когда клиент закрывает соединение.

Здесь вы можете узнать больше о кодах статуса Nginx здесь: https://www.nginx.com/resources/wiki/extending/api/http/

Вы можете проверить, используя curl и ctrl + c для прерывания запросов.

Другая возможная причина - тайм-аут на стороне клиента, обычно в балансировщике нагрузки, поэтому увеличение тайм-аута ( время простоя ) может помочь решить проблему

...