링크 ux 에서 Nginx 프로필 (nginx. conf) 설정 에 대한 자세 한 설명 (windows 용 phopstudy 통합)
8125 단어 nginx
cp /usr/local/nginx/nginx.conf /usr/local/nginx/nginx.conf-20171111( )
프로 세 스 목록 에서 master 프로 세 스 를 찾 습 니 다. 번 호 는 주 프로 세 스 번호 입 니 다.
ps -ef | grep nginx
프로 세 스 보기
cat /usr/local/nginx/nginx.pid
nginx 파일 을 수정 할 때마다 프로필 Liux 명령 을 다시 불 러 옵 니 다.
/usr/local/nginx -t //
nginx. conf 가 pid 파일 저장 경 로 를 설정 하면 이 파일 은 Nginx 메 인 프로 세 스 번 호 를 pid 로 저장 합 니 다.
진행 과정 을 죽이다
kill -HUP /usr/local/nginx/nginx.pid
kill -HUP
여유 정지 Nginx
kill -QUIT /usr/local/nginx/nginx.pid
kill -QUIT
빠 른 정지 Nginx
kill -TERM /usr/local/nginx/nginx.pid
kill -TERM
Nginx 강제 정지
kill -9 /usr/local/nginx/nginx.pid
kill -9
프로 세 스 가 같은 프로 세 스 이름 이면 pkill 명령 을 사용 할 수 있 습 니 다.
pkill nginx
여러 프로 세 스 가 같은 프로 세 스 이름 이면 Killall 명령 을 사용 할 수 있 습 니 다.
killall nginx
시동 을 걸다
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
정지 / 다시 불 러 오기
/usr/local/nginx/nginx -s stop(quit,reload)
"http {}" 블록의 시작 은 프로필 의 시작 과 같이 표준 설정 입 니 다. 수정 할 필요 가 없습니다.여기 서 우 리 는 주의력 을 이 원소 들 에 두 어야 한다.
연결 시간 초과, 1 분, 구체 적 인 시간 은 요청 (예 를 들 어 배경 가 져 오기) 에 따라 설정 할 수 있 습 니 다.
keepalive_timeout 600;
nginx 서버 를 사용 하여 timeou 상황 이 발생 하면 다음 과 같이 파 라 메 터 를 설정 할 수 있 습 니 다. fastcgi 를 사용 하 십시오.
fastcgi_connect_timeout 75;
fastcgi_read_timeout 600;
fastcgi_send_timeout 600;
이 두 가지 옵션. fastcgiread_timeout 은 fastcgi 프로 세 스 가 nginx 프로 세 스에 response 를 보 내 는 전체 프로 세 스 의 시간 초과 fastcgi 를 말 합 니 다.send_timeout 은 nginx 프로 세 스 가 fastcgi 프로 세 스에 request 를 보 내 는 전체 프로 세 스 의 시간 초과 시간 을 말 합 니 다. 이 두 옵션 은 기본적으로 초 (s) 이 며 분 (m), 시간 (h) 등 으로 수 동 으로 지정 할 수 있 습 니 다.
buffer 메커니즘
FastCGI Server 에서 온 Response 에 대해 Nginx 는 메모리 에 버퍼 링 한 다음 클 라 이언 트 브 라 우 저 에 순서대로 보 냅 니 다.버퍼 크기 는 fastcgibuffers 와 fastcgibuffer_size 두 값 제어.예 를 들 어 다음 설정:
fastcgi_buffers 8 4K; # nginx 8 4K
fastcgi_buffer_size 4K; # Response ,
총 생 성 할 수 있 는 최대 메모리 버퍼 크기 는 8 * 4K + 4K = 36k 입 니 다. Response 가 36k 보다 작 을 때 모든 데 이 터 는 당연히 메모리 에서 처 리 됩 니 다.Response 가 36k 이상 이면?fastcgi_temp 의 역할 은 바로 여기에 있다.더 나 온 데 이 터 는 파일 에 임시로 기록 되 어 이 디 렉 터 리 아래 에 놓 입 니 다.
fastcgi_busy_buffers_size # fastcgi_buffers 。
fastcgi_temp_file_write_size # , fastcgi_buffers 。
fastcgi_cache 는 FastCGI 캐 시 를 열 고 이름 을 지정 하 는 것 을 표시 합 니 다.캐 시 를 여 는 것 은 매우 유용 합 니 다. CPU 의 부 하 를 효과적으로 낮 추고 502 오류 의 발생 을 방지 할 수 있 습 니 다.그러나 캐 시 를 켜 는 것 도 많은 문 제 를 일 으 킬 수 있 으 므 로 구체 적 인 상황 에 따라 결정 해 야 한다.
fastcgi_cache_valid 는 응답 코드 의 캐 시 시간 을 지정 합 니 다.인 스 턴 스 의 값 은 200 과 302 응답 캐 시 를 한 시간, 301 응답 캐 시 를 1 일, 기타 응답 은 1 분 씩 캐 시 합 니 다.
gzip on 이 gizp 압축 을 사용 하 는 것 은 대가 가 없 는 것 이 아 닙 니 다.대역 폭 을 낮 추 는 동시에 CPU 사용 도 늘 렸 다.gzip_cop_level 의 매개 변수 수치 범위 1 - 9, 9 는 CPU 와 1 을 가장 많이 사용 하고 기본 값 은 1 입 니 다.
가상 컴퓨터 서버 설정 파일 예:
server {
listen 80; #listen nginx hostname,ip tcp 。 ,http 80
server_name host.hzgapi.com host.hzgapi.com; # , , ip
root "D:/www/hzgapi"; # ( )
location / {
index index.html index.htm index.php;
#autoindex on;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
#fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
location 설정 은 특정한 요청 에 대해 nginx 가 location 와 일치 하면 처리 합 니 다.그러면 이 요청 의 응답 내용 은 이 location 블록 에 있 는 명령 에 의 해 결 정 됩 니 다.이 예 에서 중국어 파일 루트 (doucument root) 는 html / 디 렉 터 리 에 있 습 니 다.nginx 의 설치 디 렉 터 리 / usr / local / nginx (사용 하지 않 아 도 됩 니 다) 에 따 르 면 이 location 의 전체 경 로 는 / usr / local / nginx / html 입 니 다. index 명령 은 nginx 에 게 요청 에 파일 이름 이 없 으 면 어떤 자원 을 사용 하 는 지 알려 줍 니 다.
. php 로 끝 나 는 모든 요청 은 두 번 째 location 블록 으로 처 리 됩 니 다. 두 번 째 문장 블록 은 모든 요청 에 fastcgi 핸들 을 지정 합 니 다. 다른 요청 은 nginx 에서 첫 번 째 location 블록 으로 처 리 됩 니 다.
fastcgi pass 명령 Nginx 와 PHP - FPM 의 프로 세 스 간 통신 은 두 가지 방식 이 있 습 니 다. Nginx 에서 fastcgi pass 감청 포트 유 닉 스 socket 과 tcp socket 의 차이, TCP 와 유 닉 스 domain socket 방식 을 비교 합 니 다. TCP 는 TCP 포트 로 127.0.0.1: 9000 을 연결 합 니 다. phop 5.3 이상 버 전 은 TCP 를 socket 방식 으로 설정 하 는 방법 입 니 다. pp - fpm. conf (/ usr / local / phop / etc / phop - fpm. conf) 를 수정 합 니 다.직접 설치 파일 이 있 는 경로 에 따라:
;listen = 127.0.0.1:9000
listen = /dev/shm/php-cgi.sock
nginx 프로필 server 세그먼트 의 설정 을 수정 하고 http 방식 을 socket 방식 으로 변경 합 니 다. pp - fpm 와 nginx (centos 시스템 명령) 를 다시 시작 합 니 다.
service nginx restart
service php-fpm restart
ls -al /dev/shm
이론 적 으로 유 닉 스 socket 은 네트워크 에 걸 리 지 않 고 효율 이 높 지만 안정성 이 이상 적 이지 않다.
fastcgi param 명령 은 변 수 를 정의 하고 값 을 부여 합 니 다. fastcgi index 역할 영역: http, server, location. 요청 이 / 로 끝 날 때 설정 한 index. php 파일 에 요청 을 전달 합 니 다. fastcgi split path info 역할 영역: location. Nginx 기본 값 으로 PATH INFO 값 을 가 져 올 수 없습니다. fastcgi split path info 가 지정 한 정규 표현 식 을 통 해 $fastcgi path info 할당 입 니 다. 정규 표현 식 은 두 개의 캡 처 가 있어 야 합 니 다. 첫 번 째 캡 처 값 은 $fastcgi script name 변수 에 다시 할당 합 니 다. 두 번 째 캡 처 된 값 은 $fastcgi path info 변수 에 다시 할당 합 니 다. fastcgi param SCRIPT FILENAME $document root $fastcgi script name; / 스 크 립 트 파일 이 요청 한 경로 / 디 렉 터 리 $document root 의 인 자 는 root html 입 니 다.줄 정의, 기본 값 은 / etc / nginx / html / 이 므 로 html 를 사이트 루트 디 렉 터 리 로 바 꾸 면 정상 입 니 다. include 명령 은 파일 을 포함 합 니 다.
Nginx 가 실행 중인 사용자 와 사용자 그룹 을 정의 합 니 다. user ww ww;
nginx 프로 세 스 수 는 CPU 의 총 핵심 수 (스스로 정의 무시) 로 설정 하 는 것 을 권장 합 니 다. worker processes 8; 전역 오류 로그 정의 형식, [debug | info | notice | warn | error | crit] (자신의 정 의 는 무시 할 수 있 습 니 다) error log / usr / local / nginx / logs / error. log info;
프로 세 스 pid 파일 (직접 정의 에 따라 무시 할 수 있 습 니 다) pid / usr / local / nginx / logs / nginx. pid;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.