>  기사  >  운영 및 유지보수  >  nginx에서 500, 502, 503, 504 오류를 해결하는 방법

nginx에서 500, 502, 503, 504 오류를 해결하는 방법

王林
王林앞으로
2020-07-15 17:39:5911227검색

nginx에서 500, 502, 503, 504 오류를 해결하는 방법

해결책:

(권장 튜토리얼: nginx 튜토리얼)

1. 500 오류 해결

1 500 오류는 내부 서버 오류를 나타냅니다. 즉, 서버에 예상치 못한 상황이 발생하여 작동할 수 없습니다. 요청을 이행합니다.

2. 일반적으로 500 오류에는 여러 가지 상황이 있습니다.

(1) PHP 구문 오류, Lua 구문 오류 등과 같은 웹 스크립트 오류.

(2) 방문 횟수가 많은 경우 시스템 리소스 제한으로 인해 너무 많은 파일을 열 수 없습니다.

3. 일반적인 분석 아이디어:

(1) nginx 오류 로그 확인, php 오류 로그 확인

(2) 열린 파일이 너무 많으면 nginx의 Worker_rlimit_nofile 매개 변수를 수정하고 ulimit를 사용하여 시스템 열린 파일을 확인합니다. 제한, 수정 /etc/security/limits.conf

(3) 스크립트 문제라면 스크립트 오류를 ​​수정하고 코드를 최적화해야 합니다

(4) 온갖 최적화를 다 해보았지만 너무 열려 있는 파일이 여전히 많이 나타나면 로드 밸런싱을 고려하고 트래픽을 다른 서버로 분산해야 합니다.

2. 502 및 504 오류 해결

1. nginx 프록시를 사용하지만 백엔드 서버가 실패하거나 php-cgi 프로세스 수가 충분하지 않거나 php-cgi 프로세스입니다. fastCGI 사용 등으로 인해 502, 504가 발생합니다.

2, 502는 요청한 php-fpm이 실행되었지만 어떤 이유로 완료되지 않았음을 의미하며, 이로 인해 결국 php-fpm 프로세스가 종료됩니다.

일반적으로 php-fpm.conf의 설정 및 php 실행 프로그램의 성능과 관련이 있습니다. 웹 사이트의 방문 수는 많지만 php-cgi 프로세스 수는 상대적으로 적습니다. 이 상황에서 502 오류가 발생하면 php-cgi 프로세스 수를 늘리십시오.

구체적으로 /usr/local/php/etc/php-fpm.conf 파일을 수정하고 max_children 값을 적절하게 늘리세요.

이 데이터는 VPS 또는 전용 서버의 구성에 따라 설정되어야 합니다. 일반적으로 php-cgi 프로세스는 20M의 메모리를 차지하며 이를 직접 계산하여 적절하게 늘릴 수 있습니다.
/usr/local/php/sbin/php-fpm 다시 시작한 다음 다시 시작하세요.

3, 504는 시간 초과를 의미합니다. 즉, 클라이언트가 보낸 요청이 게이트웨이에 도달하지 못하고 요청이 실행 가능한 php-fpm을 가져오지 않음을 의미합니다.

3. 503 오류 해결

503 서비스를 일시적으로 사용할 수 없는 오류

단일 IP 동시성 설정이 너무 작으면 503 오류가 발생합니다.

위 내용은 nginx에서 500, 502, 503, 504 오류를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제