Ngnix 빠 른 입문

Nginx 빠 른 입문
[TOC]
Nginx 기본 개요
Apache 소프트웨어 를 들 어 봤 거나 사용 해 봤 다 면 곧 Nginx 소프트웨어 에 익숙해 질 것 이다. Apache 소프트웨어 와 유사 하 다. Nginx (engine x) 는 지원 . 의 ww 서버 와 프 록 시 소프트웨어 다.러시아 인 lgor Sysoev 가 개발 한 것 으로 러시아 대형 사이트 www. rambler. ru 에 최초 로 활용 됐다.그 후에 저 자 는 소스 코드 를 BSD 허가증 의 형식 으로 개 원 하여 전 세계 에서 사용 하도록 제공 하 였 다.
Nginx 는 높 은 병발 (특히 정적 자원) 이 시스템 자원 을 적 게 차지 하 는 등 특성 을 가지 기 때문에 기능 이 점점 유행 하기 때문이다.
기능 에 있어 Nginx 는 우수한 웹 서비스 소프트웨어 일 뿐만 아니 라 역방향 대리 와 부하 균형 에 있어 유명한 LVS Haproxy 등 전문 대리 소프트웨어 도 가지 고 있 지만 Nginx 의 배 치 는 더욱 간단 하고 편리 하 다.캐 시 에 있어 서 는 Squid 등 전문 소프트웨어 와 유사 하지만 가장 많이 사용 되 는 캐 시 소프트웨어 는 memcache Nginx 캐 시 보다 기능 이 더 강하 다 는 것 이다.
Nginx 는 최근 2 년 동안 점점 더 많은 중 소형 사이트 에 사용 되 고 있다.비교적 유행 하 는 웹 구 조 는 LNMP 또는 LEMP LEMP 에서 추출 (engine x) 한 것 으로 현재 LNMT 구조 가 더욱 강력 하 다.
Nginx 공식 소개http://nginx.org/en/
일반적인 HTTP 웹 서비스
Httpd  Apache   
IIS       
GWS Google  
Openrestry   nginx+lua
Tengline     Nginx  

Nginx 의 중요 한 특징
     :          (            )

     : 3      ,  10 Nginx         200MB

   HTTP                 ,  · RS           ,       Haproxy   Lvs   

  Squid            

      I/O     epoll(linux 2.6+)

왜 Nginx 를 선 택 했 어 요?
1. Nginx 아주 가 벼 운 양
1.     (      http       ,                )
2.     (  ,      ,           )
2.        Nginx

1.    ,       Nginx
2.        ,       ,      。
3.Nginx      ,       。
3.Nginx  Epool    , Apache  Select  。
Select:          ,select            ,        。
Epoll:        ,epool         ,    ,      。

Nginx 응용 필드
    (mp4|html|png|jpg)  ->          ,           
    
    
    
     (tcp   、http   )
     (     、  IP)
     (waf   ,  lua   ,     ,     )

Nginx 빠 른 설치
1.epel  =>Nginx(1.    2.       )
2.    =>Nginx(1.     2.     )
3.    =>Nginx)(√1.     2.     3.     )

1.  Nginx     
    [root@web01 ~]# vim /etc/yum.repos.d/nginx.repo
    [nginx]
    name=nginx repo
    baseurl=http://nginx.org/packages/centos/7/$basearch/
    gpgcheck=0
    enabled=1

2.  Nginx【               】
    [root@web01 ~]# yum install nginx -y

3.    【1.14.0】
    [root@web01 ~]# nginx -v
    nginx version: nginx/1.14.0
4.  nginx     
    nginx -V

5.        ,      ?
      ,   rpm 

  :   ,       
  :   ,   ,     

Nginx 설치 디 렉 터 리
Nginx 소프트웨어 의 전 모 를 더욱 분명하게 이해 하기 위해 서 는 Nginx 가 설 치 된 전체적인 디 렉 터 리 구조 와 파일 기능 을 소개 할 필요 가 있다.
[root@Nginx ~]# rpm -ql nginx

다음 표 는 Nginx 설치 디 렉 터 리 에 대해 상세 하 게 설명 합 니 다.
          
/etc/nginx
/etc/nginx/nginx.conf
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf        Nginx     
/etc/nginx/fastcgi_params
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params               Cgi、Fastcgi、Uwcgi    
/etc/nginx/win-utf
/etc/nginx/koi-utf
/etc/nginx/koi-win                    Nginx        
/etc/nginx/mime.types                 http   Content-Type    
/usr/lib/systemd/system/nginx.service                    
/etc/logrotate.d/nginx                Nginx    ,    
/usr/sbin/nginx
/usr/sbin/nginx-debug               Nginx      
/etc/nginx/modules
/usr/lib64/nginx
/usr/lib64/nginx/modules            Nginx    
/usr/share/nginx
/usr/share/nginx/html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html        Nginx      
/usr/share/doc/nginx-1.12.2
/usr/share/man/man8/nginx.8.gz      Nginx     
/var/cache/nginx                    Nginx     
/var/log/nginx                      Nginx     

Nginx 컴 파일 매개 변수
Nginx 컴 파일 매개 변수 보기
[root@Nginx ~]# nginx -V

다음 표 는 Nginx 컴 파일 매개 변수 옵션 과 역할 을 보 여 줍 니 다.
                                                            

--prefix=/etc/nginx
--sbin-path=/usr/sbin/nginx
--modules-path=/usr/lib64/nginx/modules
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--pid-path=/var/run/nginx.pid

--lock-path=/var/run/nginx.lock                                 
--http-client-body-temp-path=/var/cache/nginx/client_tem
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp             

-- user = nginx - group = nginx 설정 Nginx 프로 세 스 시작 사용자 와 그룹 (보안) -- with - cc - opt 설정 추가 매개 변 수 는 CFLAGS 변수 -- with - ld - opt 설정 추가 매개 변수, 시스템 라 이브 러 리 연결

Nginx 프로필
Nginx     /etc/nginx/nginx.conf           ,                。  ,          {}        。

1.CoreModule     
2.EventModule       
3.HttpCoreModule http    

확장 자 를 알 아야 합 니 다.
CoreModule     Event、HTTP
HTTP        Server , Server          
Server       Location, Location            

코어 모듈 핵심 모듈
user www;                       #Nginx        
worker_processes 1;             #       
error_log /log/nginx/error.log  #    
pid /var/run/nginx.pid          #Nginx        pid   

이벤트 이벤트 모듈
events {            
    worker_connections  //  worker         
        use epool;      //       (  epool)
}                       //      

http 커 널 모듈
http {                                      # 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"';

#          【main      】
access_log  /var/log/nginx/access.log  main;
sendfile        on;
#tcp_nopush     on;
keepalive_timeout  65;                  #    
#gzip  on;                              #   
include /etc/nginx/conf.d/*.conf;       #    conf           

server {                                #         【  】
listen       80;                        #   80  
server_name  localhost;                 #      

location / {                            #        ,       
    root   /usr/share/nginx/html;       #      
    index  index.html index.htm;        #        
}

error_page   500 502 503 504  /50x.html; #        
}

}
사이트 배치
1. 대응 하 는 nginx 프로필
[root@web01 conf.d]# cat /etc/nginx/conf.d/oldboy_game.conf 
server {
    listen 80;
    server_name game.oldboy.com;

    location / {
        root /oldboy_code;
        index index.html;
    }
}

2. 대응 하 는 소스 파일 [수 동 - 태 로 우] 은 코드 접속
[root@web01 conf.d]# mkdir /oldboy_code
[root@web01 conf.d]# cd /oldboy_code/
[root@web01 oldboy_code]# rz  html5.zip
[root@web01 oldboy_code]# unzip html5.zip
[root@web01 oldboy_code]# pwd
/oldboy_code
[root@web01 oldboy_code]# ls
ceshi  game  html5.zip  img  index.html  readme.txt

3. nginx 의 문법 검사
[root@web01 oldboy_code]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

4. Nginx 다시 불 러 오기 [다시 로드 | 다시 시작]
[root@web01 oldboy_code]# #nginx -s reload
[root@web01 oldboy_code]# systemctl reload nginx

5. 접근 방법:
    1.      IP    :10.0.0.7
    2.        
        Windows:   C:\Windows\System32\drivers\etc\hosts   
        Mac:       sudo vim /etc/hosts
        10.0.0.7   game.oldboy.com
    3.  ping            

좋은 웹페이지 즐겨찾기