Nginx 프로필 nginx. conf 중국어 상세 설명 (요약)

6743 단어
본 고 는 Nginx 설정 의 일부 매개 변수 설명 을 상세 하 게 소개 하여 향후 설정 에 일정한 도움 을 제공 합 니 다.이 신 호 를 통 해 Nginx 를 제어 하 는 두 가지 방법 이 있 습 니 다. 첫째, logs 디 렉 터 리 에 있 는 nginx. pid 를 통 해 현재 실행 중인 Nginx 의 프로 세 스 ID 를 보고 kill – XXX 를 통 해 Nginx 를 제어 합 니 다.
AD: WOT 2014 과정 추천: 실전 MSA: 오픈 소스 소프트웨어 로 마이크로 서비스 시스템 구축
nginx 프로필 이 올 바른 지 검사 합 니 다.
/usr/local/nginx/sbin/nginx -t -c nginx.conf

- c 프로필 경로
-g Set global directives. (version >=0.7.4)
- t 파일 이 올 바 르 게 실행 되 지 않 는 지 검사 합 니 다.
-v Print version.
-V Print nginx version, compiler version and configure parameters.
컴 파일 할 때 – with - debug 컴 파일 을 사용 하면 error 도 사용 할 수 있 습 니 다.log file [debug core | debug http | debug event...] 에서 debug 정 보 를 얻 을 수 있 습 니 다. 신 호 를 통 해 Nginx 를 제어 합 니 다.
Nginx 는 다음 표 의 신 호 를 지원 합 니 다:
신호 이름    역할 설명
TERM, INT  프로그램 을 빠르게 닫 고 현재 처리 중인 요청 을 중단 합 니 다.
QUIT           현재 요청 을 처리 한 후 프로그램 을 닫 습 니 다.
HUP            설정 을 다시 불 러 오고 새 작업 프로 세 스 를 시작 합 니 다. 프로 세 스 를 닫 으 면 요청 을 중단 하지 않 습 니 다.
USR1          로그 파일 을 다시 엽 니 다. 로 그 를 전환 하 는 데 사 용 됩 니 다. 예 를 들 어 매일 새로운 로그 파일 을 만 듭 니 다.
USR2          부 드 러 운 업그레이드 실행 가능 프로그램
WINCH        작업 프로 세 스 를 여 유 롭 게 닫 습 니 다.
이 신 호 를 통 해 Nginx 를 제어 하 는 두 가지 방법 이 있 습 니 다. 첫 번 째 는 logs 디 렉 터 리 에 있 는 nginx. pid 를 통 해 현재 실행 중인 Nginx 의 프로 세 스 ID 를 보고 kill – XXX < pid > 를 통 해 Nginx 를 제어 하 는 것 입 니 다. 그 중에서 XXX 는 위 표 에 열 거 된 신호 이름 입 니 다.시스템 에 Nginx 프로 세 스 가 하나 밖 에 없다 면, 예 를 들 어 killall – s HUP nginx 를 실행 해서 Nginx 설정 을 다시 불 러 올 수 있 습 니 다.
설정:
use [ kqueue | rtsig | epoll | /dev/poll | select | poll ];

FreeBSD 는 kqueue, Linux 는 epoll 을 선택 합 니 다.
worker_connections number    모든 워 커 의 최대 연결 수
Maxclient = work_processes * worker_connections
nginx 의 upstream 은 현재 4 가지 방식 의 분 배 를 지원 합 니 다.
1. 폴 링 (기본 값)
모든 요청 은 시간 순서에 따라 서로 다른 백 엔 드 서버 에 하나씩 배정 되 며, 백 엔 드 서버 다운 이 떨 어 지면 자동 으로 제거 할 수 있 습 니 다.
2、weight
폴 링 확률 을 지정 하고 weight 와 방문 비율 이 정비례 하여 백 엔 드 서버 의 성능 이 고 르 지 않 은 경우 에 사용 합 니 다.
2、ip_hash
모든 요청 은 ip 에 접근 하 는 hash 결과 에 따라 분 배 됩 니 다. 모든 방문객 이 백 엔 드 서버 에 고정 적 으로 접근 하면 session 문 제 를 해결 할 수 있 습 니 다.
3. fair (제3자)
백 엔 드 서버 의 응답 시간 에 따라 요청 을 분배 하고 응답 시간 이 짧 은 우선 분 배 를 합 니 다.
4、url_hash (제3자)
url 에 접근 한 hash 결과 에 따라 요청 을 할당 합 니 다. 모든 url 을 같은 백 엔 드 서버 로 지정 하고 백 엔 드 서버 가 캐 시 일 때 유효 합 니 다.
대리
nginx 설정 파일 에 가상 호스트 를 추가 하고 가입 하기 만 하면 됩 니 다.
\proxy_pass http://localhost:8000;

부하 균형:
http 에 만 추가
upstream tgcluster {\ # 부하 균형 장치 의 Ip 및 장치 상 태 를 정의 합 니 다.
ip_hash;
server 127.0.0.1:9090 down;
server 127.0.0.1:8080 weight=2;
server 127.0.0.1:6060;
server 127.0.0.1:7070 backup;
}
부하 균형 을 사용 해 야 하 는 server 에 추가
proxy_pass http://tgcluster/;
모든 장치 의 상태 설정:
1. 다운 은 목록 앞의 server 가 부하 에 잠시 참여 하지 않 음 을 표시 합 니 다.
2. weight 는 기본적으로 1. weight 가 클 수록 부하 의 가중치 가 커진다.
3.max_fails: 요청 실패 횟수 를 기본 으로 1. 최대 횟수 를 초과 하면 proxy 로 되 돌려 줍 니 다.next_upstream 모듈 정의 오류
4.fail_timeout:max_fails 회 실패 후 일시 정지 시간 입 니 다.
5. backup: 다른 모든 비 backup 기기 다운 이나 바 쁠 때 backup 기 계 를 요청 합 니 다.그래서 이 기계 의 압력 이 가장 가 벼 울 것 이다.
nginx 는 여러 그룹의 부하 균형 을 동시에 설정 하여 사용 하지 않 는 server 에 사용 할 수 있 도록 지원 합 니 다.
client_body_in_file_only 는 On 으로 설정 되 어 있 습 니 다. client post 에서 온 데 이 터 를 파일 에 기록 하여 debug 로 사용 할 수 있 습 니 다.
client_body_temp_path 기록 파일 의 디 렉 터 리 를 최대 3 층 까지 설정 할 수 있 습 니 다.
location 에서 URL 을 일치 시 킵 니 다. 방향 을 바 꾸 거나 새로운 프 록 시 부하 균형 을 이 룰 수 있 습 니 다.
FASTCGI 설정:
다음 내용 을 fastcgi 로 저장 하 십시오.params 파일 은 / usr / local / nginx / conf 에 저 장 됩 니 다. (Ubuntu 는 / etc / nginx 에 저장 가능) 그 는 우리 의 FastCGI 모듈 에 기본 환경 변 수 를 설정 합 니 다.
#fastcgi_params
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;
# PHP only, required if PHP was built with –enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;
특히 두 꺼 운 줄 에 주의 하 십시오. PHP - CGI 는 이 줄 의 정 보 를 통 해 PHP 파일 의 위 치 를 확인 해 야 합 니 다.
또한 PHP - CGI 설정 파일 (Ubuntu 에서 이 설정 파일 은 / etc / phop 5 / cgi / phop. ini) 에서 cgi. fix 를 열 어야 합 니 다.pathinfo 옵션:
cgi.fix_pathinfo=1;
이렇게 php - cgi 를 사용 해 야 SCRIPT 를 정상적으로 사용 할 수 있 습 니 다.FILENAME 변수 입 니 다.
다음 nginx 설정 에서 php 파일 설정 을 FastCGI 프로 세 스 로 실행 합 니 다.
server {
index index.php;
root  /usr/local/nginx/html;
location ~ .*.php$ {
include /usr/local/nginx/conf/fastcgi_params;  #저장 한 경로 에 따라 설정 하 십시오.
fastcgi_index index.php;
fastcgi_pass  127.0.0.1: 9000; \ # 자신의 FastCGI 로 연 결 된 주소 와 포트 에 따라 설정 하 십시오.
}
}
설정 을 다시 불 러 오 라 고 Nginx 에 알 립 니 다:
kill -HUP `cat /usr/local/nginx/logs/nginx.pid`
Ubuntu 사용 자 는 init 스 크 립 트 를 사용 할 수 있 습 니 다: sudo / etc / init. d / nginx reload
그리고 php - cgi - b 127.0.0.1: 9000 을 시작 합 니 다.
No input file 이 나타 나 면 SCRIPTFILENAME 설정 에 문제 가 있 습 니 다.
lighttpd 의 spawn - fcgi 사용 하기
get http://www.lighttpd.net/download/lighttpd-1.4.18.tar.bz2 \ # Lighttpd 의 원본 패키지 가 져 오기
tar -xvjf lighttpd-1.4.18.tar.bz2
cd lighttpd-1.4.18
./configure  #컴 파일
make
cp src / spawn - fcgi / usr / local / bin / spawn - fcgi \ # spawn - fcgi 를 꺼 내 는 프로그램
php - cgi 의 FastCGI 프로 세 스 를 spawn - fcgi 로 제어 할 수 있 습 니 다.
/usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php-cgi
매개 변수 의 미 는 다음 과 같다.
- f < fcgiapp > FastCGI 를 호출 하 는 프로 세 스 의 실행 프로그램 위 치 를 지정 하고 시스템 에 설 치 된 PHP 의 상황 에 따라 구체 적 으로 설정 합 니 다.
- a < addr > 주소 addr 에 연결
- p < port > 포트 포트 포트 에 연결
- s < path > 유 닉 스 socket 에 연 결 된 경로 path
- C < childs > 에서 생 성 된 FastCGI 의 프로 세 스 수 를 지정 합 니 다. 기본 값 은 5 입 니 다 (PHP 에 만 사용)
- P < path > 프로 세 스 의 PID 파일 경 로 를 지정 합 니 다.
- u 와 - g FastCGI 는 어떤 신분 (- u 사용자 - g 사용자 그룹) 으로 실행 되 며, Ubuntu 에 서 는 www - data 를 사용 할 수 있 으 며, 다른 상황 에 따라 nobody, apache 등 을 설정 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기