云服务器

教你如何在5分钟轻松部署nginx反向代理

2020-04-20 14:34:47 49

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。

借用知乎两张图来解释反向代理:

知乎图来源链接:https://www.zhihu.com/question/24723688

 

作用

保证内网的安全,可以使用反向代理提供WAF功能,阻止web攻击

负载均衡,通过反向代理服务器来优化网站的负载搭建与部署

 

添加nginx仓库

根据对应的版本在官网查找仓库:http://nginx.org/en/linux_packages.html

    [root@ECS58979490c134 ~]# vi /etc/yum.repos.d/nginx.repo
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    [nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    [root@ECS58979490c134 ~]# yum clean all  //清除YUM缓存
    [root@ECS58979490c134 ~]# yum makecache  //把服务器的包信息下载到本地电脑缓存起来

 

安装nginx

    [root@ECS58979490c134 ~]# yum install nginx

 

编辑主配置文件

    [root@ECS58979490c134 ~]# vi /etc/nginx/nginx.conf 
    http {
        upstream eflycloud {       //用upstream设置后台web服务器轮循组名称,名字随便起,在这起名叫eflycloud
            server 192.168.1.100:80;   //用server指定,web服务器的IP和端口,有几台指定几台
            server 192.168.1.200:80;
        }
        server {
            listen       80;
            server_name  www.eflycloud.com;
            location / {
                root   html;
                index  index.html index.htm;
                proxy_pass  http://eflycloud;    //设置生成反向代理,http://后面的名字要和upstream设置的轮循组一样
            }
        }
    }

 

启动nginx服务

    [root@ECS58979490c134 ~]# service nginx start
    [root@ECS58979490c134 ~]# netstat -anptu|grep 80
    tcp    0   0 0.0.0.0:80            0.0.0.0:*           LISTEN      10840/nginx: master

 

下一章将带大家学习nginx负载均衡几种常用策略,敬请期待~

睿江云官网链接:www.eflycloud.com

上一篇: 无

微信关注

获取更多技术咨询