Nginx 소개 및 일상 관리 에 대한 상세 한 설명

7436 단어
Nginx 소개 및 일상 관리 에 대한 상세 한 설명
Nginx (engine x 와 발음) 는 경량급 웹 서버 / 역방향 프 록 시 및 이메일 (IMAP / POP 3) 프 록 시 서버 로 BSD - like 프로 토 콜 에서 발행 된다.그 특징 은 메모리 가 적 고 병발 능력 이 강하 다 는 것 이다. 사실상 nginx 의 병발 능력 은 같은 유형의 웹 서버 에서 비교적 잘 나타난다. 중국 대륙 에서 nginx 사 이 트 를 사용 하 는 사용 자 는 시 나 닷 컴, 왕 이, 텐 센트 등 이 있다.본 고 는 Nginx 의 기본 적 인 특성 과 프로필 에 대한 간단 한 설명 을 간략하게 서술 하 였 다.
1. Nginx 작업 프로 세 스

1、     :
                  ,  、             、        。 

2、      :
        web  。nginx                     ,              。
      http  ;           ;nginx          ;
                  ,               ,      CPU            。

3、     (cache loader):
              ;
                ;
    、             ;

4、     (cache manager):
            ;

5、        Nginx     
  nginx                      。
       ,      nginx.conf,    /usr/local/nginx/conf, /etc/nginx,   /usr/local/etc/nginx   。


2. Nginx 특성

1、Nginx      
    Nginx    Apache httpd  ,             。
         Nginx    ,     :       ,        Nginx            。
    a、      
      Nginx    :  Nginx            
      http     :          , HTTP               HTTP  

    b、           
          
           

    c、          
          (Main Events)
          

2、Nginx    
         、     
        
      master-->worker
         
      10000 keep-alive   Nginx   2.5MB
         
                、      、         

      :
         web   ,           ;
    http, smtp, pop3          ,  、    ;
      FastCGI (fpm);
       , DSO  ,   zip,SSI       ;
      SSL;
       、    、  master       worker,   worker  n   ;

      :
         IP     ;
      keepalive
          
           ,                 
      url rewrite
          
        IP        
          ,       

  Nginx     :
      master  ,       worker
        : epoll, kqueue, /dev/poll (event ports)
          :select, poll, rt signals
      sendfile, sendfile64
      AIO
      mmap

      :
        
    Standard HTTP modules
    Optional HTTP modules
    Mail modules
     3rd party modules


3. Nginx 의 시작, 정지, 프로필 다시 불 러 오기

1、  
          ,  ,-c             ,    -c,          
  # /usr/sbin/nginx -c /etc/nginx/nginx.conf
          ,    
  # service nginx start

2、          
  nginx -s signal
    signal      
    stop ― fast shutdown
    quit ― graceful shutdown
    reload ― reloading the configuration file
    reopen ― reopening the log files

3、nginx   
  stop ―     ,    ,       ,            ,    
    # /usr/sbin/nginx -s stop
  quit ―     ,       ,                   ,   nginx
    # /usr/sbin/nginx -s quit
          nginx
    # service nginx stop

4、        
  reload ―         
    nginx         ,       ,           nginx 
                     ,               ,         。
      ,          ,             。
          ,      ,         ,           ,           ,        
              nginx,  Linux/Unix  kill       。
               ID             。
         ,nginx    PID      /usr/local/logs  /var/run   nginx.pid  。
      ,     ID 1628,  nginx         ,   :
    kill -s QUIT 1628

              
    # service nginx reload


4. Nginx 프로필 구조

1、    
  a、nginx           ,               。
  b、              。       ,    ,       ,    (;)  。
  c、                            ,     {}          。
  d、   :                ,       (  :  ,HTTP,   ,   )。
                                  。
  e、        : nginx -t  
  f、  nginx        :nginx -c  

2、      
  Nginx                。
  ......
  events  #Events    IO  , epoll、kqueue、select poll ,       。
    {    
     ......
    }

  http       #http          http          
    {        #        ,  IO   ,hash   ,        
     ......    
        server   #              ,      backlog、rcvbuf、bind sndbuf 
        {
         ......
        }
        server
        {
         ......
        }
     ......    
     }  

3、   nginx.conf    
# more /etc/nginx/nginx.conf

#user nobody;    #    worker       
worker_processes 1; #worker     ;       CPU     1;

#error_log logs/error.log;    #                 
#error_log logs/error.log notice;#   main、http、server location    
#error_log logs/error.log info; #     error_log file |stderr [debug|info|notice|warn|error|crit|alert|emerg]

#pid    logs/nginx.pid;     #  pid      

events {
  worker_connections 1024;   worker               ;
}

http {
  include    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 logs/access.log main;

  sendfile    on;  #    
  #tcp_nopush   on;

  #keepalive_timeout 0;
  keepalive_timeout 65; #         ,   65s

  #gzip on;  #    gzip  

  server {
    listen    80;    #        Author:Leshami
    server_name localhost; #        Blog :http://blog.csdn.net/leshami

    #charset koi8-r;    #     

    #access_log logs/host.access.log main; #          

    location / {   #location    server    ,     URI     。location    。 
      root  html; #        ,         ,/etc/nginx/html
      index index.html index.htm; #      ,     index.html,  index.htm
    }

    #      http          
    #error_page 404       /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }
}


5. Nginx 도움말 획득

[root@wms ~]# nginx -h
nginx version: nginx/1.8.0
Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]

Options:
 -?,-h     : this help
 -v      : show version and exit
 -V      : show version and configure options then exit
 -t      : test configuration and exit
 -q      : suppress non-error messages during configuration testing
 -s signal   : send signal to a master process: stop, quit, reopen, reload
 -p prefix   : set prefix path (default: /etc/nginx/)
 -c filename  : set configuration file (default: /etc/nginx/nginx.conf)
 -g directives : set global directives out of configuration file


궁금 한 점 이 있 으 시 면 메 시 지 를 남기 거나 본 사이트 의 커 뮤 니 티 에 가서 토론 을 교류 하 세 요. 읽 어 주 셔 서 감사합니다. 도움 이 되 셨 으 면 좋 겠 습 니 다. 본 사이트 에 대한 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기