nginx配置文件

来源:互联网 发布:怎么用淘宝客推广 编辑:程序博客网 时间:2024/05/21 20:28
#定义Nginx运行的用户和用户组
user www www;    
#启动进程,通常设置成和cpu的数量相等
worker_processes  8;


#全局错误日志及PID文件
#全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]
error_log  error.log;
pid  nginx.pid;


#工作模式及连接数上限
events {
    use   epoll;             #epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,可以大大提高nginx的性能
    worker_connections  1024;#单个后台worker process进程的最大并发链接数
    # multi_accept on; 
}


#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
    #设定mime类型,类型由mime.type文件定义
    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 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,
    #必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime.
    sendfile        on;
    #tcp_nopush     on;


    #连接超时时间
    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;
    
    #开启gzip压缩
    gzip  on;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";


    #设定请求缓冲
    client_header_buffer_size    1k;
    large_client_header_buffers  4 4k;

    #设定负载均衡的服务器列表
    upstream myService {
   #weigth参数表示权值,权值越高被分配到的几率越大
   server 192.168.10.1:8080  weight=5;
   server 192.168.10.2:8080  weight=1;
   server 192.168.10.3:8080  weight=6;
    }

    server {
        #侦听80端口 域名可以有多个,用空格隔开
        listen       80;
        #定义使用www.xx.com访问
        server_name  www.xx.com xxx.com;


        #设定本虚拟主机的访问日志
        access_log  logs/www.xx.com.access.log  main;


        #默认请求  ,当做http服务器使用,处理静态文件
        location / {
             root   /root;      #定义服务器的默认网站根目录位置
             index index.html index.htm;   #定义首页索引文件的名称


        }


        #配合上面的 upstream myService使用   做负载均衡
location / {
            proxy_pass http://myService;
            #如果不加 下面的一段nginx是不会去判断真正的客户端ip的,而是直接把路由的地址作为请求ip
   proxy_set_header   Host             $host; 
   proxy_set_header   X-Real-IP        $remote_addr; 
   proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for; 
}


        #nginx 反向代理到 tomcat的8080端口 配置如下  
location / {
  proxy_pass http://192.168.10.1:8080;
#rewrite
  }


location /test {
  proxy_pass http://192.168.10.1:8080;
  }




#rewrite  和 proxy_pass 




        # 定义错误提示页面
error_page   500 502 503 504 /50x.html;  
location = /50x.html {
    root   /root;
}


        #静态文件,nginx自己处理,不经过tomcat
        location ~ ^/(images|javascript|js|css|flash|media|static)/ {
             root /var/www/virtual/htdocs;
             #过期30天,静态文件不怎么更新,过期可以设大一点,如果频繁更新,则可以设置得小一点。
             expires 30d;
        }
        
        #禁止访问 .htxxx 文件
        location ~ /\.ht {
    deny all;
        }
     
     }

}



============================================================================




修改nginx.conf之后测试一下配置文件是否正确
./nginx -t


nginx 启动
./nginx


nginx 重启
./nginx -s reload


0 0