nginx应用场景
1、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
nginx实现反向代理
什么是反向代理?
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
1 先启动两个spingboot项目,
项目一端口号8081,
127.0.0.1:8081/index 页面显示结果 index1
项目二端口号8088,
127.0.0.1:8088/index 页面显示结果 index2
2我想改成www.jhj.com/index形式,由nginx做代理
(1)找到dns解析的hosts文件修改(以便于域名解析时候转化为127.0.0.1)
(2)找到nginx的conf下面的nginx.cnf文件打开后配置
upstream backserver {
server 192.168.0.14;
server 192.168.0.15;
}
红圈处修改有修改
当然可以指定权重
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况
upstream backserver {
server 192.168.0.14
weight=10;
server 192.168.0.15
weight=10;
}
最后浏览器输入 www.jhj.com/index就可以看到两个结果替换了index1 和index2
也就是在127.0.0.1:8081与127.0.0.1:8088 之间替换
宕机轮训配置规则
在server下面的
server {
listen 80;
server_name www.itmayiedu.com;
location / {
proxy_pass http://backserver;
index index.html index.htm;
proxy_connect_timeout 1;
proxy_send_timeout 1;
proxy_read_timeout 1;
}
}
上面红色的那个是Nginx防止宕机的轮训配置时间是秒
也就是连接,相应,超过一秒就切换下一个服务器IP