iis+nginx实现负载均衡
简要说明:nginx的简介自行百度。
目的:把用户的请求分到各个服务器减轻压力。nginx把监听的端口的请求平均转到布署了网站的服务器。
一、windows上安装nginx
1.官网下载windows版的nginx http://nginx.org/en/docs/windows.html
目前最新版本为1.13.2
2.下载解压后
3.因为我电脑80端口已经被使用,所以修改配置文件改为监听8080端口
4.双击主程序运行,可以看到nginx已经在进程里面运行了。
5.尝试打开 http://localhost:8080/ 出现以下,就说明nginx安装成功了
二、搭建两个相同站点。
1. 网站只有一个主页
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
List<string> info = new List<string>();
info.Add("服务器名称:" + Server.MachineName);
info.Add("Nginx的IP地址:" + (Request.UserHostAddress=="::1" ? "127.0.0.1":Request.UserHostAddress));
info.Add("真实客户的IP地址:" + Request.Headers["X-Real-IP"]);
info.Add("HTTP端口:" + Request.Url.Port);
ViewBag.info = info;
return View();
}
}
2. 因为我的nginx是装在虚拟机里的,现在虚拟机里在iis部署一个站点,端口为:9000
3.本机布署一个站点,端口为:9001
三、修改nginx配置文件
1.在http节点下添加upstream(服务器集群),server设置的是集群服务器的信息,我这里搭建了两个站点,配置了两条信息。
2. 在http节点下找到location节点修改
location / {
root html;
index Home/Index index.html index.htm; #修改主页为Home/Index
#其中jq_one 对应着upstream设置的集群名称
proxy_pass http://Jq_one;
#设置主机头和客户端真实地址,以便服务器获取客户端真实IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
修改后的配置文件:
3.重启Nginx
输入命令 nginx -s reload 回车
完成重启
四、验证
尝试访问监听的8080端口,刷新几次看
我这里虚拟机的IP为:http://192.9.200.44。现在从主机访问虚拟机的Nginx监听的端口。
五、把Nginx弄成服务,开机启动
1.借助一个小工具winsw https://github.com/kohsuke/winsw/releases
下载简单配置和.net环境两个文件,根据自己环境,这里下的.net4
然后放到随便一个目录,这里放到和nginx一起,并把两个文件改成相同的名字
2.修改配置文件
3.安装服务
输入命令 myapp.exe install 安装服务
此时服务中已经有nginx了,然后启动服务即可
完成。
参考资料:http://www.cnblogs.com/jbps/p/5721477.html
最新文章
- Linux目录结构
- Json概述以及python对json的相关操作
- 修改win7电脑中所有文件的默认查看方式
- swift学习笔记之-类型转换
- iOS自带地图纠偏问题
- CentOS安装、卸载jdk
- VIew中的触摸事件 touchBegin 等一系列方法
- WinForm ListControl MouseWheel Envent
- Liunx+C编程一站式学习
- Baidu Sitemap Generator插件使用图解教程
- win8.1 安装
- Hibernate之深入Hibernate的配置文件
- Python/ MySQL练习题(一)
- netty02(接受消息以后进行返回)
- ubuntu16.04 编译出错:fatal error: SDL/SDL.h: No such file or directory
- oracle goldengate 远程捕获和投递
- springBoot 学习(总)
- SNAT和DNAT
- 【AtCoder】ARC098题解
- JsonObject和Gson详解
热门文章
- 微服务实战(二):使用API Gateway
- Python3+Selenium2完整的自动化测试实现之旅(六):Python单元测试模块Unittest运用
- Python迭代和解析(2):迭代初探
- 使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)
- CentOS 7 源码编译安装 NodeJS
- [转]nodeJs--koa2 REST API
- Dapper, 批量插入,批量更新, 以及in, like
- C# 如何添加PPT背景(纯色背景、渐变色背景、图片背景)
- 拯救老旧工程,记桥接SpringMVC与Stripes框架
- CentOS7.3 yum install MySQL5.7