2. Nginx 프로필 nginx. conf 설정 에 대한 자세 한 설명

앞의 Nginx 설치 프로필 에서 nginx. conf 설정 파일 의 몇 가지 명령 의 의 미 를 간단하게 설명 하 였 으 며, 이 글 의 내용 은 이 명령 의 용법 에 대해 상세 하 게 설명 할 것 입 니 다.
먼저 프로필 의 내용 을 보십시오:
user  nginx;
worker_processes  4;
error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;
}

Nginx 의 설정 은 전역 블록, 이벤트 블록, http 블록, server 블록 으로 나 뉜 다.nginx. conf 파일 에는 전역 블록, 이벤트 블록, http 블록 만 포함 되 어 있 으 며, server 블록 설정 은 스스로 정의 해 야 합 니 다.모든 server 블록 은 가상 호스트 로 사용 할 수 있 습 니 다. http 블록 은 여러 개의 server 블록 을 포함 할 수 있 습 니 다. 모든 server 블록 의 설정 은 독립 적 이 고 다른 server 블록 에 영향 을 주지 않 습 니 다.http 전역 블록 설정 은 server 블록 에 유효 하지만 server 블록 과 http 전역 블록 설정 이 충돌 하면 가 까 운 원칙 으로 server 블록 설정 을 기준 으로 합 니 다.설정 파일 에 있 는 이 명령 들 의 의미 와 용법 을 살 펴 보 겠 습 니 다.
전역 설정 세그먼트:
user nginx;

user: Nginx 서 비 스 를 실행 할 수 있 는 사용 자 를 지정 합 니 다. 설 정 된 사용자 나 사용자 그룹 구성원 만 nginx 프로 세 스 를 실행 할 수 있 는 권한 이 있 습 니 다. 모든 사용자 가 Nginx 프로 세 스 를 실행 하 기 를 원한 다 면 이 명령 을 설명 하거나 user nobody nonobody 로 설정 할 수 있 습 니 다.
user 명령 어 사용법:
user  username [groupname];
work_processes 4;

work_processes: Nginx 서버 가 실 행 될 때 시작 하 는 프로 세 스 수 를 설정 합 니 다. 이론 적 으로 설정 한 값 이 클 수록 Nginx 서버 가 응답 할 수 있 는 요청 수가 많 지만 서버 소프트 하드웨어 (CPU 와 디스크 드라이브) 의 제한 을 받 아 합 리 적 으로 설정 해 야 합 니 다.
일반적으로 CPU 핵심 수 와 같 거나 CPU 핵심 수 에서 1 을 빼 거나 내 CPU 는 4 핵 으로 설정 되 어 있 기 때문에 나 는 4 로 설정 합 니 다.
work_processes 실행 방법:
work_processes number | auto;

number 는 workprocesses 가 시작 하 는 최대 processes 수 를 auto 로 설정 하면 Nginx 서버 가 자동 으로 감지 하고 설정 합 니 다.
error_log  /var/log/nginx/error.log warn;

error_log: Nginx 서버 오류 로그 경 로 를 설정 합 니 다.
error_로그 사용법:
error_log file | stderr 【debug | info | notice | warn | error | crit | alert | emerg】
문법 구 조 를 보면 Nginx 서버 의 로 그 는 고정된 파일 file 로 출력 하거나 표준 오류 출력 stderr 로 출력 할 수 있 습 니 다. 로그 단 계 는 debug (컴 파일 이 필요 할 때 -- with - debug 를 사용 하여 debug 스위치 를 엽 니 다) info, notice, warn, error, crit, alert, emerg 등 이 있 습 니 다.
pid        /var/run/nginx.pid;

pid: Nginx 서버 PID 파일 의 저장 경 로 를 지정 합 니 다.
pid 사용법:
pid file;

기타 설정 명령:
1、worker_cpu_affinity CPUMASK CPUMASK ...;
이 명령 은 모든 프로 세 스 에 CPU 의 작업 커 널 을 할당 하 는 데 사 용 됩 니 다. 그 값 은 몇 개의 바 이 너 리 값 입 니 다. 예 를 들 어:
worker_cpu_affinity 0001 0010 0100 1000;
CPU 가 8 핵 이면 이렇게 설정 할 수 있 습 니 다.
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 0010000 001000000 10000000;
2、worker_priority number;
Nginx 프로 세 스 의 CPUnice 값 을 지정 합 니 다. 범 위 는 - 20 에서 19 이 며, 값 이 작 을 수록 우선 순위 가 높 습 니 다.기본 모든 프로 세 스 nice 값 은 0 입 니 다.
3、worker_rlimit_nofile number;
모든 워 커 프로 세 스 가 열 수 있 는 최대 파일 설명자 의 수 를 지정 합 니 다.
4、worker_rlimit_sigpending number;
모든 사용자 가 워 커 프로 세 스 에 보 낼 수 있 는 신호 의 최대 수 를 지정 합 니 다.
이벤트 설정 세그먼트:
worker_connections  1024;

worker_connections: 모든 work 설정프로 세 스 의 최대 병렬 연결 수 는 기본적으로 1024 입 니 다.문법:
worker_connections number;

기타 설정 명령:
1、accept_mutex on | off;
어느 순간 네트워크 요청 이 한 개 만 들 어 오 면 여러 개의 잠 을 자 는 Nginx 프로 세 스 가 깨 어 나 요청 에 응답 하지만 한 프로 세 스 만 연결 할 수 있 습 니 다. 깨 어 날 때마다 프로 세 스 수가 너무 많 으 면 일부 시스템 성능 에 영향 을 줄 수 있 습 니 다.accept_mutex 는 바로 이 문 제 를 해결 하기 위해 서 이다.on 으로 설정 되 었 을 때 여러 워 커 가 돌아 가면 서 직렬 화 된 응답 요청 을 표시 합 니 다.기본적으로 오픈 상태 입 니 다. 이벤트 단계 에서 만 설정 할 수 있 습 니 다.
2、multi_accpet on |off;
모든 Nginx 프로 세 스 가 여러 요청 을 동시에 받 을 수 있 도록 설정 합 니 다. 기본적으로 닫 힌 상태 입 니 다.이벤트 세그먼트 에서 만 설정 할 수 있 습 니 다.
3、use 【select | poll | kqueus | epoll | rtsig | /dev/poll | eventport】
이 명령 은 이벤트 구동 모델 을 선택 하 는 데 사 용 됩 니 다. Nginx 가 자동 으로 선택 하도록 권장 합 니 다.
http 설정 세그먼트:
include       /etc/nginx/mime.types;

include: 현재 메 인 프로필 에 다른 Nginx 설정 이나 제3자 모듈 설정 을 도입 합 니 다. 문법 은 다음 과 같 습 니 다.
include file;

file 은 도입 할 프로필 로 상대 경 로 를 지원 합 니 다.
default_type  application/octet-stream;

default_type: 전단 요청 을 처리 할 MIME 형식 을 지정 합 니 다.이 명령 은 http 세그먼트, server 세그먼트 또는 location 에서 도 설정 할 수 있 습 니 다.
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
access_log  /var/log/nginx/access.log  main;

access_로그: 로그 에 접근 할 경 로 를 설정 하 는 데 사용 합 니 다.
log_format: 접근 로그 의 형식 을 설정 하 는 데 사용 되 는 $remoteaddr 는 모두 nginx 의 내장 변수 입 니 다.
sendfile        on;

sendfile: sendfile 기능 을 사용 할 지 여 부 를 설정 하 는 데 사 용 됩 니 다. 문법 은: sendfile on | off 입 니 다.
sendfile_max_chunk_size;
sendfile 전송 데이터 의 최대 값 을 설정 하고 0 으로 설정 하면 제한 하지 않 습 니 다.
keepalive_timeout  65;

keepalive_timeout: 긴 연결 세 션 유지 시간 을 설정 합 니 다. 이 명령 은 server 세그먼트 와 location 에서 도 설정 할 수 있 습 니 다.그 문법 은 keepalive timeout [header timeout] 이다. 
keepalive_requests 100;
Nginx 서버 와 사용자 측 이 연결 되면 사용자 측 에서 이 연결 을 통 해 요청 을 보 냅 니 다. keepaliverequests 명령 은 사용자 가 특정한 연결 을 통 해 Nginx 서버 에 요청 을 보 내 는 횟수 를 제한 하 는 데 사 용 됩 니 다.기본 값 100
include /etc/nginx/conf.d/*.conf;

http 엔 드 설정 은 / etc / nginx / conf. d 디 렉 터 리 에 있 는 'conf' 파일 로 끝 나 는 모든 설정 파일 을 설정 합 니 다. 보통 server 세그먼트 설정 파일 을 이 디 렉 터 리 에 놓 습 니 다.

좋은 웹페이지 즐겨찾기