우수한 소프트웨어와 실용적인 튜토리얼
504 게이트웨이 시간 초과
엔진엑스갑작스러운 오류504 게이트웨이 시간 초과, php를 사용하여데이터 베이스대량의 쿼리 작업을 수행할 때 504 게이트웨이 시간 초과 오류가 발생할 수 있습니다. 504 게이트웨이 시간 초과는 개별 작업에서만 발생할 수 있으므로 504 게이트웨이 시간 초과가 발생하더라도 걱정하지 마세요. 시간 초과 페이지를 새로 고치거나 데이터베이스에 계속 연결해 보세요. 하지만 더 번거로울 수 있습니다. Nginx 504 게이트웨이 시간 초과 문제를 해결하는 방법을 살펴보겠습니다.
일반적으로 다음과 같은 상황에서 504 게이트웨이 시간 초과가 발생합니다.
- 웹사이트 프로그램이 대량의 데이터를 처리하기 때문에 대기 시간이 길어지고, 504 게이트웨이 타임아웃이 발생합니다.
- 웹 프로그램에서 외부 요청이 호출되면 외부 요청 응답의 시간 초과로 인해 504 게이트웨이 시간 초과가 발생합니다.
- SQL 데이터베이스에 연결하지 못한 후, 프로그램이 제때 중지되지 않아 무한 루프와 504 게이트웨이 시간 초과가 발생했습니다.
504 게이트웨이 시간 초과 문제는 Nginx 구성으로 인해 발생합니다.섬기는 사람nginx 설정 파일을 엽니다. 다음을 사용할 수 있습니다.엑스쉘또는엑스피피티피서버에 로그인하기 위한 도구는 다음과 같습니다.리눅스후자는 SSH의 SFTP 방법을 통해 파일을 수정하는 것입니다.
nginx 설정 수정
/etc/nginx/ 수정nginx.conf 문서.
http {} 블록에 매개변수를 추가합니다.
fastcgi_connect_timeout 6000;
fastcgi_send_timeout 6000;
fastcgi_read_timeout 6000;
이러한 매개변수가 무엇을 하는지 살펴보겠습니다.
fastcgi_connect_timeout
Fastcgi 연결 시간 초과, 기본값은 60초입니다.
fastcgi_send_timeout
nginx 프로세스가 fastcgi 프로세스에 요청을 보내는 데 걸리는 시간 제한입니다. 기본값은 60초입니다.
fastcgi_read_timeout
fastcgi 프로세스가 nginx 프로세스로 출력을 전송하는 데 걸리는 시간 제한입니다. 기본값은 60초입니다.
또한 nginx에는 다음이 있습니다.연기시간 초과 매개변수 설정.
프록시_연결_시간 초과 20000;
프록시_전송_시간 초과 20000;
프록시_읽기_시간 초과 20000;
프록시_연결_시간 초과
백엔드 서버와의 Nginx 연결 시간 초과(프록시 연결 시간 초과)
프록시 전송 시간 초과
백엔드 서버 데이터 전송 시간(에이전트 전송 타임아웃)
프록시_읽기_시간 초과
연결이 성공한 후 백엔드 서버 응답 시간(프록시 수신 시간 초과)
프록시 타임아웃에 대하여매개변수 구성이 부분에서 Nginx가 외부 프록시 서비스를 제공하지 않으면 여기의 구성을 무시할 수 있습니다.
Nginx를 수정한 후 nginx -t를 사용하여 다음 설정 파일이 올바른지 확인한 다음 nginx 서비스를 다시 시작합니다.
systemctl nginx 재시작
PHP 구성 수정
1. /etc/php.ini 파일을 수정하고 php.ini 파일에서 max_execution_time을 초 단위로 검색합니다.
최대 실행 시간
max_execution_time은 PHP 스크립트의 최대 실행 시간입니다. 기본값은 30초입니다. 이 값을 300초로 변경하는 것이 좋습니다.
2. /etc/php-fpm.d에서 에서 수정하다 http://www.conf 파일. request_terminate_timeout을 초 단위로 검색하세요.
요청_종료_시간 초과
단일 요청에 대한 시간 제한을 설정합니다. 6000으로 설정하는 것이 좋습니다.
3. PHP 프로그램에 추가할 수 있습니다. 시간 제한 설정(초) 최대 실행 시간 설정
예를 들어: set_time_limit(0)은 시간 초과가 없음을 의미합니다.
PHP의 매개변수를 수정한 후 PHP 서비스를 다시 시작합니다.
systemctl 재시작 php-fpm
요약하다
위는 nginx 504 게이트웨이 타임아웃을 수정하는 방법입니다. 일반적으로게이트웨이 시간 초과위의 해결책을 통해 시간 초과 기간을 연장함으로써 504 게이트웨이 시간 초과 문제는 일시적으로 해결됩니다. 마지막으로, 웹사이트 프로그램과 데이터베이스를 최적화하여 최종적인 해결책을 마련해야 합니다.