3.nginx学习笔记:nginx配置反向代理服务器

nginx配置反向代理服务器


正向代理、反向代理


1.正向代理

一般情况下,如果没有特殊的说明,我们认为的代理就是正向代理,那么什么是正向代理。如果有一个客户端A想要去访问服务器B,在他们的之间增加代理服务器C,此时正向代理就是客户端A向代理服务器C发送请求要访问服务器B里的内容,则代理服务器C代替客户端访问服务器B,然后把请求的结果返回给相应的客户端。

如下图所示:

这里写图片描述

2.反向代理

反向代理对于客户端来说丝毫感觉不到其访问的是一个代理服务器。客户端觉得就是一种正常的访问。其过程如下:客户端向反向代理的命名空间中发送访问请求,而反向代理服务器判断向具体的那个上游服务器发送请求,并将获得的内容返回给客户端。如下图所示:

这里写图片描述
*一句话进行总结:

正向代理代理的是客户
反向代理代理的是服务器


nginx如何进行反向代理

在nginx中即可以进行正向代理,也可以进行反向代理,一般情况下我们选择后者。我们需要设置一个上游服务器集群作为真正被访问服务器。在这次实验中我们采用两个httpd服务作为被代理的服务,为了显示出轮询的效果,让这两个httpd服务显示不同的内容。具体的设置如下:

(1)nginx服务器 192.168.3.245(server5.example.com)
(2)httpd上游服务器 192.168.3.244(server4.example.com)
(3)httpd上游服务器 192.168.3.246(server6.example.com)
(4)在三个节点中进行解析,解析文件为/etc/hosts


具体的配置如下所示:

1.在两个上游服务器中安装httpd服务,并且发布不同内容(为了区别轮询的效果):
*192.168.3.244(server4.example.com)和192.168.3.246(server6.example.com)中分别安装httpd,设置默认发布内容为主机名:

[root@server6 html]# yum install httpd -y
在/var/www/html/index.html写入默认发布内容,这两个节点的内容是不同的。

[root@server6 html]# vim /var/www/html/index.html

分别写入server4.example.com和server6.example.com

开启httpd服务:

[root@server6 html]# /etc/init.d/httpd restart


2然后在nginx的主配置文件中进行反向代理的配置:

进入nginx的主配置文件所在的目录,编辑主配置文件:

[root@server5 ~]# cd /usr/local/lnmp/nginx/conf/
[root@server5 conf]# vim nginx.conf

//nginx.conf配置文件
//在http模块中添加如下内容:

//...(省略)
upstream httpd_cluster {
        #权重越高显示次数所占比例越高,该情况下显示4次192.168.3.244的,显示一次192.168.3.246的
    server 192.168.3.244 weight=4;   
    server 192.168.3.246;
}

server {
    listen 80;
    server_name www.httpd.com;

    location / {
        proxy_pass http://httpd_cluster;
    }
}
//...(省略)

修改配置文件完成后检测是否有语法错误,如果没有错误打开nginx服务:

检测:
[root@server5 conf]# nginx -t
nginx: the configuration file /usr/local/lnmp/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/lnmp/nginx/conf/nginx.conf test is successful

[root@server5 conf]# nginx

完成了各种配置后就可以进行检测了,我们在拥有浏览器的节点上对www.httpd.com主页进行解析,在/etc/hosts文件中写入。

/etc/hosts中内容

192.168.3.245 www.httpd.com

打开firefox浏览器,访问www.httpd.com页面,多刷新几次,可以看到两个上游服务器的内容在轮询:

server4.example.com(192.168.3.244)
这里写图片描述

server6.example.com (192.168.3.246)
这里写图片描述

小结:

上述搭配就实现了nginx反向代理上游服务器集群的过程,接下面的章节会向大家展示nginx实现虚拟主机的配置。敬请期待。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值