nginx 불안정 오류 "111: 비디오 파일을 제공하는 동안 연결이 거부되었습니다"

nginx 불안정 오류 "111: 비디오 파일을 제공하는 동안 연결이 거부되었습니다"

나는 asp 코어 3.1 비디오 스트리밍 웹사이트를 호스팅하는 데비안 10 arm64 머신인 이 서버를 가지고 있습니다.

전반적으로 비디오를 재생할 때를 제외하고는 훌륭하게 작동합니다. 어떤 이유로 nginx는 다음을 많이 생성합니다.

*258 connect() failed (111: Connection refused) while connecting to upstream

일부 비디오 파일을 제공할 때.

이제 이것은 다음과 같은 이유로 특히 이상합니다.

  • 비디오가 성공적으로 로드되고 재생되는데도 이 오류가 기록됩니다.
  • 때때로 내 시스템이 충돌하는 것처럼 보입니다. 아마도 이 동작으로 인해(nginx 서비스가 중지되면 이 충돌이 발생하지 않기 때문에) 완전히 읽기 전용이 됩니다. 그런 다음 복구하려면 다시 시작해야 합니다.

내 구성은 다음과 같습니다.

server {

    listen 443;
    server_name videocloud.my-domain.com;
    ssl_certificate /etc/letsencrypt/live/videocloud.my-domain.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/videocloud.my-domain.com/privkey.pem; # managed by Certbot

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    auth_basic            "Restricted Area";
    auth_basic_user_file      /etc/apache2/.htpasswd;

    add_header Access-Control-Expose-Headers Accept-Ranges;
    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Origin [http://localhost:5002];
    add_header Access-Control-Expose-Headers Accept-Ranges;
    add_header Access-Control-Expose-Headers Content-Encoding;
    add_header Access-Control-Expose-Headers Content-Length;
    add_header Access-Control-Expose-Headers Content-Range;
    add_header accept_ranges bytes;

    proxy_force_ranges on;

    location / {

      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-Forwarded-Proto $scheme;

      # Fix the It appears that your reverse proxy set up is broken" error.
      proxy_pass          http://localhost:5002;
      proxy_read_timeout  90;

      proxy_redirect      http://localhost:5002 https://videocloud.my-domain.com;
    }

}

답변1

위의 설명에서 제안한 대로 localhost를 127.0.0.1로 바꾸고 ipv6을 비활성화하면 문제가 해결되었습니다.

관련 정보