PHP에서 502 오류가 발생하는 이유는 다음과 같습니다. 1. php.ini의 memory_limit가 너무 작습니다. 2. php-fpm.conf의 max_children 또는 max_requests 설정이 비합리적입니다. 3. PHP 프로그램의 실행 시간입니다. 시간이 너무 길어서 시간이 초과되었습니다.
일반적인 이유는 다음과 같습니다:
1. php.ini의 memory_limit가 너무 작습니다(많은 양의 메모리를 점유해야 하는 개별 PHP 프로그램 프로세스가 있는 경우 이에 주의해야 합니다).
2. php-fpm .conf의 max_children 또는 max_requests 설정이 비합리적입니다.
너무 작게 설정하면 요청을 처리할 CGI 프로세스가 충분하지 않게 됩니다. 잠시 동안은 정상적으로 작동하다가 오랜 시간 동안 응답을 기다립니다.
3. nginx 오류 로그를 확인하고 업스트림에서 응답 헤더를 읽는 동안 pstream이 너무 큰 헤더를 보냈는지 확인하세요. 그런 다음 클라이언트 헤드 버퍼와 fastcgi 버퍼 크기가 너무 작아서 32K로 설정할 수 있는지 확인하세요. 프로그램 실행 시간이 너무 길고 시간 초과입니다. nginx 및 fastcgi에서 다양한 시간 초과 설정을 확인하세요.
5. php-fpm에는 각 하위 항목이 닫히기 전에 처리할 수 있는 최대 요청 수를 지정하는 max_requests 매개변수가 있습니다. 이 값을 너무 작게 설정하면 아이들이 자주 자살을 하여 창작을 하게 되어 시간이 많이 낭비됩니다. 거의 이 시간에 모든 아이들이 자살한다면, 이에 응답할 아이들이 없을 것입니다. 재구성하기 전에 요청하면 502가 나타납니다. 이 값을 더 크게 또는 0[무한]으로 설정할 수 있습니다.
더 많은 관련 지식을 알고 싶으시면
php 중국어 홈페이지를 방문해주세요.
위 내용은 PHP에서 502 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!