nginx 신문 504 Gateway Time - out 의 해결 방법

1296 단어 nginx기타
문제 설명: 큰 압축 패 키 지 를 시스템 에 업로드 하고 약 3 분 정도 기다 린 후 nginx 서버 가 504 Gateway Time - out 으로 돌아 갑 니 다.
해결 방법: nginx 가 504 Gateway Time - out 으로 돌아 가 는 것 은 백 엔 드 처리 시간 이 너무 길 어서 nginx 가 응답 을 기다 리 는 시간 을 초과 한 것 입 니 다. 예 를 들 어 nginx 가 설정 한 응답 시간 초과 시간 은 30s 이 고 백 엔 드 서비스 처리 시간 이 30s 를 초과 하면 nginx 는 504 로 돌아 갑 니 다.
해결 방법 은 다음 과 같 습 니 다. nginx. conf 파일 에 다음 세 줄 의 설정 을 추가 하면 됩 니 다. (수요 에 따라 자체 적 으로 timeout 시간 을 설정 할 수 있 습 니 다)
fastcgi_connect_timeout:60;  //fastcgi      ,  60 ,      75 
fastcgi_read_timeout:900;  //fastcgi     nginx              ,    
fastcgi_send_timeout:900;  //nginx     fastcgi              ,    

지식 확장: nginx 는 외부 동적 프로그램 에 대한 직접 호출 이나 해석 을 지원 하지 않 습 니 다. 모든 외부 프로그램 (예 를 들 어 JAVA, PHP 등) 은 FastCGI 인 터 페 이 스 를 통 해 호출 되 어야 합 니 다.FastCGI 인 터 페 이 스 는 Liux 아래 socket 입 니 다.CGI 프로그램 을 호출 하기 위해 서 는 포트 나 파일 socket 같은 고정 socket 에 wrapper 를 연결 해 야 합 니 다.Nginx 가 이 socket 에 CGI 요청 을 보 낼 때 FastCGI 인 터 페 이 스 를 통 해 warpper 가 요청 을 받 은 다음 새로운 스 레 드 를 보 냅 니 다. 이 스 레 드 는 해석 기 나 외부 프로그램 처리 스 크 립 트 를 호출 하고 데 이 터 를 읽 습 니 다. 이 어 wrapper 는 돌아 온 데 이 터 를 FastCGI 인 터 페 이 스 를 통 해 고정된 socket 을 따라 Nginx 에 전달 합 니 다.마지막 으로 nginx 는 돌아 온 데 이 터 를 클 라 이언 트 에 보 냅 니 다. 이것 이 바로 Nginx + fastcgi 의 전체 운행 과정 입 니 다.
fastcgi 참조:https://blog.51cto.com/runningyongboy/1722299

좋은 웹페이지 즐겨찾기