Nginx实现动静分离

Nginx实现动静分离,第1张

Nginx实现动静分离 Nginx实现动静分离 简介

反向代理与负载均衡
nginx通常被用作后端服务器的反向代理,这样就可以很方便的实现动静分离以及负载均衡,从而大大提高服务器的处理能力。

nginx实现动静分离,其实就是在反向代理的时候,如果是静态资源,就直接从nginx发布的路径去读取,而不需要从后台服务器获取了。

但是要注意,这种情况下需要保证后端跟前端的程序保持一致,可以使用Rsync做服务端自动同步或者使用NFS、MFS分布式共享存储。

Http Proxy模块,功能很多,最常用的是proxy_pass和proxy_cache

如果要使用proxy_cache,需要集成第三方的ngx_cache_purge模块,用来清除指定的URL缓存。这个集成需要在安装nginx的时候去做,如:

./configure --add-module=…/ngx_cache_purge-1.0 …

环境说明 系统IP服务CentOS8调度器 DR192.168.101.210NginxCentOS8 动态页面处理 Dynamic(动态)192.168.101.120LNMPCentOS8 静态页面处理 Static(静态)192.168.101.200httpd

各服务已部署完成
Dynamic

Static
DR

配置动静分离
[root@DR ~]# vim /usr/local/nginx/conf/nginx.conf

        upstream Dynamic {
                server 192.168.101.120     # 在server段上添加
        }
        upstream Static {
                server 192.168.101.200
        }
#location / {
        #    root   html;
        #    index  index.html index.html  #将这段添加注释
        ;	
        #}


	location ~ .php$ {
                proxy_pass   http://Dynamic;	# 在server段添加
        }
        location / {
                proxy_pass http://Static;
        }
[root@DR ~]# nginx -s reload

测试效果
当访问根目录的时候默认是跳到静态的httpd上

当访问动态资源时就自动跳到Dynamic上

配置负载均衡

DR上

[root@DR ~]# vim /usr/local/nginx/conf/nginx.conf
 upstream LJT {
                server 192.168.101.120;
                server 192.168.101.200;				# 在server段上面添加
        }
location / {
                proxy_pass http://LJT;  				# 在server段内添加
        }


测试效果

刷新,每刷新一次就在Dynamic和Static上跳转
也可设置权重,让高性能主机的多处理任务

[root@DR ~]# vim /usr/local/nginx/conf/nginx.conf
 upstream LJT {
                server 192.168.101.120 weight=3;  # 设置权重就会多处理任务
                server 192.168.101.200;				# 在server段上面添加
        }
location / {
                proxy_pass http://LJT;  				# 在server段内添加
        }

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4830701.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-10
下一篇 2022-11-10

发表评论

登录后才能评论

评论列表(0条)

保存