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 的版本,编译器版本和配置参数