Nginx一台服务器实现不同端口负载均衡

Windows系统:

一、下载安装

官网:http://nginx.org/en/download.html
我这里安装的是 1.15.8版本的
在这里插入图片描述是

解压的目录,自定义:
在这里插入图片描述

双击nginx.exe打开会闪屏一下可能看不到效果
打开cmd窗口输入 cd F:\nginx-1.15.8\nginx-1.15.8
(这里ctrl+c复制在cmd窗口右击粘贴)回撤
输入 **f:**回撤
输入命令:nginx
如图:报错80端口被占用
在这里插入图片描述

因为nginx默认监听80端口,这里打开目录里的F:\nginx-1.15.8\nginx-1.15.8\conf\nginx.conf 找到如图将80改为一个没有使用的端口号,我这里改成8086
在这里插入图片描述
然后在cmd再次输入nginx回撤没有任何消息出现表示成功了:
在这里插入图片描述

现在打开网页在地址栏输入localhost:你配的端口号出现如图表示配置成功
在这里插入图片描述

二、本机测试负载均衡

打开IIS,右击网站添加测试网站Twxt1,选址目录新建文件夹1,端口号设定一个未分配的确定(如8081),其他都不用动,点确定
在这里插入图片描述
同样建一个Twxt2,分配端口(8082)确定
在这里插入图片描述
现在放网页,右击Text1浏览,是个空文件夹,(简单做个页面)新建txt如图,保存,改名字 index.html
在这里插入图片描述
同样右击Text2浏览,复制粘贴index.html(改下里面内容不然不好区分)可复制如下:

<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body>
测试站点2 sfdadada
</body>
</html>

准备好了后,开始修改F:\nginx-1.15.8\nginx-1.15.8\conf\nginx.conf 配置文件

	#设定实际的服务器列表及分配权重
    upstream load_balance_server {
	server    127.0.0.1:8081 weight=1;#根据上面IIS配置
       server    127.0.0.1:8082 weight=1;
    }
  
    #HTTP服务器
    server {
	  #监听80端口,80端口是知名端口号,用于HTTP协议
        listen       8086;
        	
        server_name  192.168.1.92;#我的IP,可换成127.0.0.1(代表本机	)

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

		#默认指向product的server,名字要对应上
        location / {
            #root   home/index;
            #index  index.html index.htm;
			proxy_pass   http://load_balance_server;
        }

配置文件能做的事很多,以上只是最简单的配置,修改完配置文件记得在cmd窗口输入:nginx -s reload

在地址栏输入192.168.1.92:8086
在这里插入图片描述
再次地址栏回撤,实现了分流的效果
在这里插入图片描述

以上只是nginx的一个简单的负载均衡的应用,如果你有多台服务器,网站访问量非常大,可以专门用一台服务器跑nginx,其它服务器跑网站程序(几台服务器的程序都是一样的),这样负载就没有太大问题,如果再不行,把网站一些栏目做一个2级域名,2级域名同样做负载,这样就ok了。

几个常用到的命令:

nginx -s stop       快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。
nginx -s quit       平稳关闭Nginx,保存相关信息,有安排的结束web服务。
nginx -s reload     因改变了Nginx相关配置,需要重新加载配置而重载。
nginx -s reopen     重新打开日志文件。
nginx -c filename   为 Nginx 指定一个配置文件,来代替缺省的。
nginx -t            不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。
nginx -v            显示 nginx 的版本。
nginx -V            显示 nginx 的版本,编译器版本和配置参数

猜你喜欢

转载自blog.csdn.net/qq_38637846/article/details/85272865