首页 > 网站 > Nginx > 正文

Nginx反向代理与负载均衡实战篇

2024-08-30 12:24:29
字体:
来源:转载
供稿:网友

反向代理

反向代理指的是以代理服务器接收用户的的访问请求,代理用户向内部服务器重新发起请求,最后把内部服务器的响应信息返回给用户。这样,代理服务器对外就表现为一台服务器,而访问内部服务器的客户端用的就是代理服务器,而不是真实网站访问用户。

为什么使用反向代理

可以起到保护网站安全的作用,因为任何来自Internet的请求都必须先经过代理服务器。 通过缓存静态资源,加速Web请求。 实现负载均衡

反向代理例子

环境说明

假如有AB两个服务器。A服务器提供web资源,并且只给内网访问。B服务器有两块网卡,一块与A服务器在一个内网,以块是外网。此时,用户C想直接访问A服务器是行不通的。这时就可以通过B服务器代理用户C的请求去访问A服务器了。

hostname 网卡 IP 说明
moli-04 ens33 192.168.30.6 内网IP,代理服务器
moli-04 ens37 192.168.93.129 外网IP,代理服务器
moli-05 ens33 192.168.30.7 内网服务器

两台机器都安装nginx moli-05服务器访问是wordpress博客,域名blog.syushin.org 虚拟机实验环境,就都关闭防火墙了

配置虚拟主机

moli-04机器上编辑虚拟主机配置文件,内容如下:

[root@moli-04 extra]$ cat blog.syushin.org.conf server{ listen 80; server_name blog.syushin.org;  location / {  proxy_pass http://192.168.30.7;  proxy_set_header Host $host;  proxy_set_header X-Real-IP $remote_addr;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }

更改hosts文件

windows上修改hosts文件,添加配置

192.168.93.129 blog.syushin.org

浏览器测试

访问地址是192.168.93.129,出现的界面的05机器的页面,配置成功。

负载均衡

负载均衡的功能

对用户的访问请求进行调度管理 对用户的访问请求进行压力分担

负载均衡集群在运行时,一般是通过一个或者多个前端负载均衡器将客户访问请求发到后端的一组服务器上。

Nginx负载均衡

严格来说,Nginx仅仅是作为Nginx Proxy反向代理的使用的,但是因为这个反向代理功能表现的效果是负载均衡机器的效果,因此nginx负载均衡是特殊的反向代理。

实现Nginx负载均衡的主要组件:

Nginx模块 说明
ngx_http_proxy_module proxy代理模块,用于把请求发送给服务器节点或upstream服务器池
ngx_http_upstream_module 负载均衡模块,可以实现网站的负载均衡功能及节点的健康检查
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表