初入Nginx反向代理(win7下配置nginx+tomcat)

来源:互联网 发布:java swing下拉框联想 编辑:程序博客网 时间:2024/05/22 08:16

不墨迹直接开篇

首先源码包下载,可以直接Nginx官方下载windows版本的压缩包如果闲资源慢直接下面我网盘
http://pan.baidu.com/s/1c2uoCNm
解压完的基本木就是这个样子的,如图
解压完的基本木就是这个样子的,如图

直接当前文件夹shift+右键打开命令窗口键入nginx.exe,Nginx的服务就会运行
或者直接双击nginx.exe
这里写图片描述

任务管理器里面已经显示Nginx启动,那么就有同学问了为何我的任务管理器里面有这么多Nginx的进程呢
下面就是我们即将要说的nginx根目录下conf/nginx.conf配置文件,也是nginx的核心文件

下面附上Nginx.conf的基本配置

这里写图片描述

下面参数详解

(1)轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
upstream webserver {
server 192.168.1.11;
server 192.168.1.12;
重点内容}
(2)weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
upstream webserver {
server 192.168.1.11 weight=5;
server 192.168.1.12 weight=10;
}

(3)ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
upstream webserver {
ip_hash;
server 192.168.1.11;
server 192.168.1.12;
}

(4)fair
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream bakend {
server 192.168.1.11;
server 192.168.1.12;
fair;
}

(5)url_hash
按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
upstream backend {
server 192.168.1.11;
server 192.168.1.12;
hash $request_uri;
hash_method crc32;
}

#设定http服务器,利用它的反向代理功能提供负载均衡支持http {    #设定mime类型,类型由mime.type文件定义    include             /etc/nginx/mime.types;    default_type    application/octet-stream;    #设定日志格式    access_log        /var/log/nginx/access.log;    #省略上文有的一些配置节点    #。。。。。。。。。。    #设定负载均衡的服务器列表    upstream mysvr {        #weigth参数表示权值,权值越高被分配到的几率越大        server 192.168.8.1x:3128 weight=5;        #本机上的Squid开启3128端口,不是必须要squid        server 192.168.8.2x:80    weight=1;        server 192.168.8.3x:80    weight=6;    }    upstream mysvr2 {        #weigth参数表示权值,权值越高被分配到的几率越大        server 192.168.8.x:80    weight=1;        server 192.168.8.x:80    weight=6;    }    #第一个虚拟服务器    server {        #侦听192.168.8.x的80端口        listen             80;        server_name    192.168.8.x;        #对aspx后缀的进行负载均衡请求        location ~ .*.aspx$ {            #定义服务器的默认网站根目录位置            root     /root;             #定义首页索引文件的名称            index index.php index.html index.htm;            #请求转向mysvr 定义的服务器列表            proxy_pass    http://mysvr ;            #以下是一些反向代理的配置可删除.            proxy_redirect off;            #后端的Web服务器可以通过X-Forwarded-For获取用户真实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;            #允许客户端请求的最大单文件字节数            client_max_body_size 10m;             #缓冲区代理缓冲用户端请求的最大字节数,            client_body_buffer_size 128k;            #nginx跟后端服务器连接超时时间(代理连接超时)            proxy_connect_timeout 90;            #连接成功后,后端服务器响应时间(代理接收超时)            proxy_read_timeout 90;            #设置代理服务器(nginx)保存用户头信息的缓冲区大小            proxy_buffer_size 4k;            #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置            proxy_buffers 4 32k;            #高负荷下缓冲大小(proxy_buffers*2)            proxy_busy_buffers_size 64k;             #设定缓存文件夹大小,大于这个值,将从upstream服务器传            proxy_temp_file_write_size 64k;            }    }}

下面我配置了两个 tomcat 分别是
tomcat:9001
tomcat:9002
nginx:9500
首先启动两个tomcat然后再启动nginx,下面我们来访问,OK两个toncat已经被nginx代理
这里写图片描述

入门简单配置到此结束,望大神指点,共同学习进步!

0 0
原创粉丝点击