在不同端口下模拟 Nginx 反向代理和负载均衡

Nginx 是一个轻量级的 WEB 服务器,反向代理服务器和电子邮件服务器,本文介绍在虚拟机中使用不同的端口来模拟不同的服务器,并使用 Nginx 反向代理功能实现服务器负载均衡的效果。

新建两个站点

首先新建两个 WEB 目录当做不同的服务器下的站点,一个是 website-A,一个是 website-B. 这两个站点目录应该是在不同的服务器上,而且代码是一模一样的,这里为了方便在一台虚拟机上模拟不同服务器,并且把两个站点目录下的首页做了一点修改,以区分访问到的是不同目录(服务器)下的站点。两个站点都只有一个简单的 index.html 的首页,里面内容是”This is website A”这样的。

配置 Nginx 反向代理和负载均衡

在 /etc/nginx/sites-enabled 目录下新建一个文件,如: test-load-balance,内容如下:

这个反向代理服务器监听 80 端口,并定义了一个服务器负载均衡的模块,这里两个不同的端口代表不同的服务器(由于是在一台虚拟机中,并没有安装多个虚拟机,因此采用不同的端口的方式来模拟)。

Nginx WEB 服务器配置

在 /etc/ngxin/conf.d/ 下新建 load-balance.conf,内容如下:

这里配置了两个服务器,通过监听不同的端口设置站点根目录分别是 website-A 和 website-B,经过以上配置之后,绑定虚拟机 host,并通过浏览器访问。

nginx-website nginx-website2

可以看到刷新页面,内容也在发生变化,说明通过负载均衡配置,实现了轮询服务器效果。

本文介绍了在不同端口下模拟 Nginx 反向代理和负载均衡,不仅可以了解基本的 Nginx 反向代理和负载均衡配置,而且用这种不同端口模拟不同服务器的方式可以做另外一件事情,后续再讲。

打赏