您的位置:首页 > 运维架构 > 反向代理

初探nginx反向代理

2015-12-16 18:40 661 查看
接触nginx时间并不长。不过一直也没有动手练过,今天动手实际操作了一下,果然还是有一些乐趣的!

反向代理。通过一个中间层的代理服务器以某种策略选择一个的上游服务器。

                                                                   server1

请求者  -----》     中间服务器    -------》server2

                                                                   server3

                                                                   上游服务器

中间服务器就是我们配置nginx的服务器,上游服务器可以有多个,但访问的时候就会根据情况选择一个进行访问。它们存放的内容可能都是一样的。

所以通过这样可以不断变换服务器来缓解服务器的压力。这个就是给人感觉逼格很高的东东:轮寻

下面就开始配置nginx:

首先编译源码:

1. ./configure

检查包的依赖关系。可能会有错误。如果提示中有PCRE字眼,那么就安装一下pcre-devel,这是一个关于正则表达式的库。

2.make & make install
安装包。

安装好了要注意是在/usr/local/nginx里,以后需要修改的配置文件也都在这里面,那个源码包已经不需要了。

输入ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
可以在以后执行nginx命令时不用输入绝对路径,只需输入nginx就好。

现在开始正式反向代理过程:

(1).配置主机,也是代理服务器

vim /usr/local/nginx/conf/nginx.conf
#修改http中的内容
#服务器集群,里面包括服务器的ip
upstream server_cluster{
#权重为4,访问该ip4次才访问下一个ip
 server 112.74.22.19 weight=4;
server 192.168.122.29;
}

 server {
listen       80;
server_name  localhost;

location / {
proxy_pass http://server_cluster; }
 
:wq退出后
执行一下nginx -t检查是否有错误。
如果你还没开启nginxnginx如果开启了nginx
nginx -s reload
(2)配置代理服务器

开启另外两台机器,我用的是虚拟机。这两台机器开始服务,可以是nginx也可以是httpd也可以是别的

如果开启nginx服务

vim /usr/local/nginx/html/index.html里面随便写,这个是一会网页上面显示的
如果是httpd服务

vim /var/www/html/index.html
两个机器都是一样的步骤,不过内容要不一样,一会好检查轮寻的情况
(3).在 /etc/hosts 文件中加入3个ip的dns解析

ip    网址            (这个网址随便输入,你输入www.baidu.com也可以,因为linux是第一个从这里找解析的,没有才去上层找解析 ^_^)

在网页中输入一下你的主机网址(也可以ip),不断的刷新,就会看到美妙的一幕!!两个上游服务器在轮寻。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: