nginx 오류 499 문제

2476 단어 nginx
순서.
본 고 는 주로 nginx 의 access log 에 나타 난 499 문 제 를 이야기 하고 자 한다.
문제 설명
499 CLIENT CLOSED REQUEST
A non-standard status code introduced by nginx for the case when a client closes the connection while nginx is processing the request.
원인.
서버 가 http 헤드 로 돌아 가기 전에 클 라 이언 트 는 http 연결 을 미리 닫 았 습 니 다. 배경 인터페이스 처리 시간 이 비교적 길 고 전단 요청 은 시간 초과 가 있 습 니 다.
재현
요청 실례





$(document).ready(function(){
  $("button").click(function(){
      $.ajax({
    url : '/demo/test',
    timeout : 10000,
    type : 'get',
    dataType : 'json',
    success : function(data){
        alert('success');
    }
   });
  });
});








백 스테이지 인터페이스
    @GetMapping("/test")
    public String test(HttpServletResponse response) throws InterruptedException {
        Thread.sleep(100*1000);
        return "hello";
    }

nginx
        location /demo/ {
            access_log  /usr/local/var/log/nginx/host.access.log  main;
            proxy_pass http://localhost:8080/demo/ ;
        }

log format 에 대해 서 는 다음 과 같 습 니 다.
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

로그 인 스 턴 스
127.0.0.1 - - [04/Nov/2017:01:11:29 +0800] "GET /demo/test HTTP/1.1" 499 0 "http://localhost:8888/demo.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" "-"
127.0.0.1 - - [04/Nov/2017:01:11:42 +0800] "GET /demo/test HTTP/1.1" 499 0 "http://localhost:8888/demo.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" "-"
127.0.0.1 - - [04/Nov/2017:01:11:58 +0800] "GET /demo/test HTTP/1.1" 499 0 "http://localhost:8888/demo.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" "-"

doc
  • 499 CLIENT CLOSED REQUEST

  • 서버 장벽 의 nginx 499 오류 해결

    좋은 웹페이지 즐겨찾기