php-fpm에서 시간 제한을 설정하는 방법: 1. "request_terminate_timeout = 30" 콘텐츠를 설정합니다. 2. "max_execution_time = 30" 콘텐츠를 설정합니다.
이 기사의 운영 환경: nginx1.0.4 시스템, PHP 버전 7.1, DELL G3 컴퓨터
php-fpm nginx 시간 제한 매개 변수 설정
php-fpm: request_terminate_timeout = 30 php.ini: max_execution_time = 30
request_terminate_timeout은 max_execution_time이 어떤 이유로 스크립트를 종료할 수 없는 경우에 적용됩니다. , 이 php-fpm 요청을 종료합니다.
웹 요청 PHP의 실행 시간은 두 가지 측면에 의해 제어됩니다. 하나는 php.ini의 max_execution_time입니다(휴면, http 요청이 응답을 기다리는 시간은 계산되지 않으며 여기에 실제 실행 시간이 있습니다). , 다른 하나는 php-fpm request_terminate_timeout 설정으로, 요청이 시작된 후 n초를 계산합니다.
이 시간을 초과하면 PHP-FPM은 스크립트 실행을 종료할 뿐만 아니라
스크립트를 실행하는 Worker 프로세스도 종료합니다. 따라서 Nginx는 자신과 통신하기 위한 연결이 끊어진 것을 발견하고 클라이언트에 502 오류를 반환합니다.
nginx의 주요 매개변수는 fastcgi 관련 시간 제한, 즉 fastcgi_connect_timeout, fastcgi_read_timeout, fastcgi_send_timeout입니다.
이 nginx 매개변수의 주제는 모두 nginx이므로 fastcgi_connect_timeout은 nginx가 fastcgi에 연결하는 시간 초과를 의미하고, fastcgi_read_timeout은 nginx가 fastcgi의 콘텐츠를 읽는 시간 초과를 의미하며, fastcgi_send_timeout은 nginx가 fastcgi에 콘텐츠를 보내는 시간 초과를 의미합니다.
Nginx 504 게이트웨이 시간 초과는 실행 가능한 PHP-CGI가 요청되지 않았음을 의미합니다.
Nginx 502 Bad Gateway는 요청한 PHP-CGI가 실행되었으나 리소스 읽기가 완료되지 않아 PHP-CGI 프로세스가 종료되었음을 의미합니다.
추천 학습: "PHP 비디오 튜토리얼"
위 내용은 php-fpm에서 시간 초과를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!