[해결됨] err_http2_protocol_error
err_http2_protocol_error는 Ng를 사용하면서 여러 가지 이유로 발생하는데 크롬, 파이어폭스 등 브라우저에서 갑자기 나타나는 가장 짜증나는 오류 중 하나입니다. react를 사용하여 코드에서 HTTP 호출을 할 때 발생할 수 있습니다. .net, node.js 등
솔루션 err_http2_protocol_error
일반적인 사용 사례와 각 사용 사례에 대한 솔루션을 살펴보겠습니다.
시나리오 1: 디스크 공간 부족
웹 서버가 매우 적은 디스크 공간에서 실행되는 경우 HTTP 호출을 수행하는 동안
err_http2_protocol_error
가 발생합니다. 디스크에 남은 공간이 없기 때문에 때때로 오류가 기록되지 않습니다.Nginx, Apache 웹 서버와 같은 웹 서버는 모든 응답을 보낼 수 없으며 일반적으로 첫 번째 청크가 전송된 후 요청을 삭제합니다. 이로 인해 콘텐츠 길이 헤더가 수신된 실제 콘텐츠와 일치하지 않아
err_http2_protocol_error
가 됩니다.해결 방법: 웹 서버의 디스크 공간을 확인하고 여유 공간을 확보한 후 문제가 해결되는지 확인하십시오.
시나리오 2: Gzip 이중 압축
Nginx 서버에서 Node.JS를 실행하는 경우 CSS, js 등과 같은 파일이 이중으로 압축되어 err_http2_protocol_error가 발생할 가능성이 높습니다.
정적 파일에 대한 첫 번째 압축은 Node.JS 서버에서 발생하고 Ngxinx도 Gzip 변환을 수행합니다.
솔루션 : 아래와 같이 Nginx 구성에서 gzip 압축을 끕니다. gzip 압축이 서버 측에서 한 번만 발생하는지 항상 확인하십시오.
server {
...
...
gzip off;
proxy_max_temp_file_size 0;
location / {
proxy_pass http://127.0.0.1:3000/;
....
또한 헤더 크기 문제로 인해 발생할 수 있습니다. 문제를 해결하려면 http2_max_field_size 및 http2_max_header_size 값을 늘리십시오.
http2_max_field_size 64k;
http2_max_header_size 512k;
시나리오 3: 리소스 로드 실패: VS 2019 16.10.0(및 16.10.1)으로 업그레이드한 후 net::ERR_HTTP2_PROTOCOL_ERROR
Windows 업데이트 후 ASP.Net 3.1 + React JS 앱을 실행 중인 경우 이 문제가 발생할 수 있습니다.
Microsoft Windows의 공식 버그이며 Microsoft에서 확인했습니다officially.
솔루션 : 최신 Windows 패치인 *KB5003637 *을 제거하면 문제가 해결되거나 최신 버전의 Windows 패치로 업그레이드할 수 있습니다.
게시물 [Solved] err_http2_protocol_error이 ItsMyCode에 처음 나타났습니다.
Reference
이 문제에 관하여([해결됨] err_http2_protocol_error), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/fluentprogramming/solved-errhttp2protocolerror-1a7c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)