고성능 웹 서버 배포 – nginx
1、기본 독립 패키지 설치
yum -y gcc openssl-devel pcre-devel zlib-devel 설치
2、nginx 배포
useradd nginx -s / sbin / nologin #add nginx 사용자
tar zxvf nginx-1.2.7.tar.gz #uncompress nginx tar.gz 패키지.
cd nginx-1.2.7
./구성 \
–user = nginx \ # 사용자는 nginx입니다.
–그룹 = nginx \ #사용자 그룹은 nginx입니다.
–접두사 = / usr / local / nginx / \ # nginx 홈 경로
–with-http_stub_status_module \
–with-http_ssl_module #ssl 모듈
# 더 많은 매개 변수를 위해,이 명령을 다시 수행 할 수 있습니다.
./구성 –도움
nginx 경로 접두사: “/usr / local / nginx”
nginx 바이너리 파일: “/usr / local / nginx / sbin / nginx”
nginx 구성 접두사: “/usr / local / nginx / conf”
nginx 구성 파일: “/usr / local / nginx / conf / nginx.conf”
nginx pid 파일: “/usr / local / nginx / logs / nginx.pid”
nginx 오류 로그 파일: “/usr / local / nginx / logs / error.log”
nginx http 액세스 로그 파일: “/usr / local / nginx / logs / access.log”
nginx http 클라이언트 요청 본문 임시 파일: “client_body_temp”
nginx http 프록시 임시 파일: “proxy_temp”
nginx http fastcgi 임시 파일: “fastcgi_temp”
하다 & 설치하다
nginx의 구성이 올바른지 확인하십시오.
설치 후.
/usr / local / nginx / sbin / nginx –v
3、nginx 구성
cd / usr / local / nginx / conf /
rm -rf nginx.conf
vim nginx.conf
다음 구성을 nginx.conf에 붙여 넣습니다.
사용자 nginx nginx; #사용자 및 사용자 그룹
작업자 프로세스 8; #nginx 시작시 처리량
error_log logs / nginx_error.log crit; #오류 로그 및 로그 수준
pid /usr/local/nginx/nginx.pid; #PID 파일 경로
worker_rlimit_nofile 51200;
이벤트
{
epoll 사용; # epoll 모듈
작업자 _ 연결 51200; #각 프로세스의 최대 허용 연결.
}
http
{
mime.types 포함;
default_type 애플리케이션 / 옥텟 스트림;
#문자셋 gb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32케이;
파일 보내기;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64케이;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
gzip 사용;
gzip_min_length 1k;
gzip_buffers 4 16케이;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text / plain application / x-javascript text / css application / xml;
gzip_vary on;
#limit_zone 크롤러 $ binary_remote_addr 10m;
섬기는 사람
{
들리다 80;
server_name localhost; #호스트 이름 또는 서버 이름
index index.html index.htm index.php; # 기본 메인 페이지 이름.
루트 / usr / local / nginx / html; #웹 사이트의 루트 디렉토리
위치 / {
루트 HTML;
index index.html index.htm;
}
limit_conn 크롤러 20;
#FastCGI는 PHP를 지원할 수 있습니다.
위치 ~ .*\.(PHP|php5)?$
{
#fastcgi_pass 유닉스:/tmp / php-cgi.sock;
fastcgi_pass 127.0.0.1:9000; #fastcgi 수신 포트 9000
fastcgi_index index.php;
fcgi.conf 포함; #fastcg 구성 파일.
}
#정적 파일 유형 , 긴 캐시 시간을 설정할 수 있습니다.
위치 ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|CSS)$
{
30 일 만료;
}
#로그 형식
log_format 액세스‘$ remote_addr – $원격 사용자 [$time_local] “$의뢰” ‘
‘$ status $ body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” $http_x_forwarded_for’;
access_log logs / access.log 액세스;
}
}
저장 및 종료!
노트 : 이것은 baisc 구성 파일입니다.,원하는 경우 다시 편집해야합니다.
다른 기능 구성.
4、nginx 시작,작업 상태 확인
/usr / local / nginx / sbin / nginx -c /usr/local/nginx/conf/nginx.conf
ps -ef | grep nginx
netstat -nltp | grep 80
연결 127.0.0.1 # 만약 “nginx에 오신 것을 환영합니다!” 등장, 이 indicat nginx 시작이 성공적으로
또는 입력 할 수 있습니다 “localhost” 웹 브라우저의 URL 표시 줄에서 , 본 적이 있다면 “nginx에 오신 것을 환영합니다!”
이는 nginx가 성공적으로 시작되었음을 의미합니다.