nginx. conf 의 상세 한 설명

17152 단어 수송 하 다.
nginx. conf 의 상세 한 설명
#  Nginx         
user www www;

#nginx   ,          CPU    。
worker_processes 8;

#          ,[ debug | info | notice | warn | error | crit ]
error_log ar/loginx/error.log info;

#       
pid  /usr/local/nginx/logs/nginx.pid;

#  nginx              ,             (    ulimit -n) nginx     ,  nginx        ,     ulimit -n      。
worker_rlimit_nofile 65535;

#          
events
{
  #      ,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll   Linux 2.6             I/O  ,    FreeBSD  ,  kqueue  。
  use epoll;
 
  #         (     =   *   )
  worker_connections 65535;
}

#  http   
http
{
  include mime.types; #             
  default_type application/octet-stream; #      

  charset utf-8; #    
  server_names_hash_bucket_size 128; #      hash   

  client_header_buffer_size 32k; #           nginx    client_header_buffer_size  buffer   header ,   header  ,    large_client_header_buffers   
  large_client_header_buffers 4 64k; 
  client_max_body_size 8m; #      ;

  sendfile on; #          ,sendfile    nginx    sendfile       ,         on,             IO     ,    off,        I/O    ,       。  :              off。

  autoindex on; #        ,       ,    。
  tcp_nopush on; #      
  tcp_nodelay on; #      
  keepalive_timeout 120; #       ,    

  #FastCGI              :      ,      。             。
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 64k;
  fastcgi_buffers 4 64k;
  fastcgi_busy_buffers_size 128k;
  fastcgi_temp_file_write_size 128k;

  #gzip    
  gzip on; #  gzip    
  gzip_min_length 1k; #        
  gzip_buffers 4 16k; #     
  gzip_http_version 1.0; #    (  1.1,     squid2.5   1.0)
  gzip_comp_level 2; #    
  gzip_types text/plain application/x-javascript text/css application/xml;
  #    ,       textml,          ,         ,      warn。
  gzip_vary on;
  #limit_zone crawler $binary_remote_addr 10m; #    IP          

  upstream nginx.com {
    #upstream     ,weight   ,            。weigth      ,             。
    server 192.168.80.121:80 weight=3;
    server 192.168.80.122:80 weight=2;
    server 192.168.80.123:80 weight=3;
  }

 #       ,  server         ,            ,    include,                     ;
  server
  {
    #    
    listen 80;
    #       ,     
    server_name www.nixi8.com nixi8.com;
    index index.html index.htm index.php;
    root /data/www/nixi8;

    ##### include enable-php.conf #####
    #    
    location ~ .*.(php|php5)?$
    {
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      include fastcgi.conf;
    }

    #        
    location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
    {
      expires 10d;
    }

    #JS CSS      
    location ~ .*.(js|css)?$
    {
      expires 1h;
    }

    #      
    log_format access '$remote_addr - $remote_user [$time_local] "$request" '
    '$status $body_bytes_sent "$http_referer" '
    '"$http_user_agent" $http_x_forwarded_for';

    #            
    access_log /home/wwwlogs/access.log access;
     
    #  "/"       
    location / {
      proxy_pass http://127.0.0.1:88;
      proxy_redirect off;
      proxy_set_header X-Real-IP $remote_addr;
      #   Web       X-Forwarded-For      IP
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      #            ,  。
      proxy_set_header Host $host;
      client_max_body_size 10m; #                
      client_body_buffer_size 128k; #                  ,
      proxy_connect_timeout 90; #nginx            (      )
      proxy_send_timeout 90; #           (      )
      proxy_read_timeout 90; #     ,         (      )
      proxy_buffer_size 4k; #       (nginx)             
      proxy_buffers 4 32k; #proxy_buffers   ,     32k     
      proxy_busy_buffers_size 64k; #        (proxy_buffers*2)
      proxy_temp_file_write_size 64k;
      #         ,     ,  upstream    
    }
     
    #    Nginx     
    location /NginxStatus {
      stub_status on;
      access_log on;
      auth_basic "NginxStatus";
      auth_basic_user_file confpasswd;
      #htpasswd        apache   htpasswd     。
    }
     
    #            
    #  jsp      tomcat resin  
    location ~ .(jsp|jspx|do)?$ {
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_pass http://127.0.0.1:8080;
    }

    #       nginx       tomcat resin
    location ~ .*.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
    { expires 15d; }
    location ~ .*.(js|css)?$
    { expires 1h; }
  }
}

좋은 웹페이지 즐겨찾기