Nginx 30421#0: accept4() failed (24: Too many open files)
30421#0: accept4() failed (24: Too many open files)
1. 조사 결과 에 따 르 면 파일 연결 수가 너무 많다 는 것 을 쉽게 알 수 있 습 니 다. 인터넷 에서 많은 튜 토리 얼 은 문형 수 를 수정 하 라 고 했 지만 제 문형 수 는 6 만 여 명 이 고 저 는 단일 파일 에 만 접근 할 뿐 동시 다발 적 인 문제 가 존재 하지 않 습 니 다.
[root@izj6c3njvldcpf6rgj4srvz projects]# ulimit -n
65535
2. 파일 에 접근 할 수 있 게 되 었 으 니 제 nginx 설정 에 문제 가 있 는 것 이 아니 라 기본 설정 으로 다음 과 같 습 니 다.
server {
listen 80;
server_name www.superlei.cn;
#charset koi8-r;
#access_log logs/host.access.log main;
root /projects;
location / {
index index.php index.htm index.html;
# autoindex off;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /projects;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
location ~ \.php$ {
proxy_pass http://127.0.0.1;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#PHP FastCGI . FastCGI .
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
이때 제 리 버스 에이전트 가 켜 져 있 는 proxy 를 봤 어 요.pass, 문 제 를 자세히 보면 문제 가 발생 합 니 다. 프로 세 스 가 접근 할 때 역방향 에이전트 의 설정 은 127.0.0.0.1: 80 포트 에 버 려 서 처리 합 니 다. 그러면 순환 이 멈 추 었 습 니 다. 그래서 우리 가 처음에 겪 었 던 문제 가 발생 했 습 니 다. 이 때 는 역방향 처리 인 터 페 이 스 를 다른 것 으로 바 꾸 거나 주석 을 없 애 면 대리 문 제 를 해결 할 수 있 습 니 다.
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
location ~ \.php$ {
proxy_pass http://127.0.0.1:8084;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.