注意:一定要在Nginx服务器的根目录下执行下面的命令
//nginx服务器启动命令,该命令启动时不会报错,一般执行完启动命令之后要执行一次重启命令
start nginx
//nginx重启命令,如果nginx配置有问题该命令会报错
nginx -s reload
//nginx关闭命令
nginx -s stop
原因:由于没有域名,所以需需要使用本机的IP(127.0.0.1)来映射域名
hosts文件的路径:C:\Windows\System32\drivers\etc\hosts
说明: 在hosts文件目录中 添加前后端域名控制.
127.0.0.1 localhost
::1 localhost
#图片服务器域名
127.0.0.1 image.jt.com
#前端域名地址
127.0.0.1 web.jt.com
#后端域名地址
127.0.0.1 manage.jt.com
路径:\nginx-1.21.1\conf\nginx.conf
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#每个反向代理的服务都是一个server
server {
#listen表示监听的端口号,一般默认都是80
listen 80;
#拦截用户访问的路径
server_name localhost;
#反向代理的具体配置项 "/"表示拦截所有请求 "/..." 表示拦截...的请求
location / {
#root表示反向代理 代表的是一个目录结构 相对路径
root html;
#index关键字 默认的欢迎页面
index index.html index.htm;
}
}
#配置图片的反射代理
server {
#listen表示监听的端口号,一般默认都是80
listen 80;
#拦截用户访问的路径,也就是域名
server_name image.jt.com;
#反向代理的具体配置项 "/"表示拦截所有请求 "/..." 表示拦截...的请求
location / {
#root表示反向代理 代表的是一个目录结构
root E:\DaNei\ThreeStages\jt\images;
}
}
前提:将VUE打包的文件–dist文件,复制到 Nginx 的根目录下
#配置前端服务器
server {
#listen表示监听的端口号,一般默认都是80
listen 80;
#拦截用户访问的路径
server_name web.jt.com;
#反向代理的具体配置项 "/"表示拦截所有请求 "/..." 表示拦截...的请求
location / {
root dist;
index index.html;
}
}
#配置后端服务器
server {
#listen表示监听的端口号,一般默认都是80
listen 80;
#拦截用户访问的路径
server_name manage.jt.com;
#反向代理的具体配置项 "/"表示拦截所有请求 "/..." 表示拦截...的请求
location / {
#代理的是一个请求的网址 一旦拦截到manage.jt.com服务器的时候,就将请求转发给http://localhost:8091
proxy_pass http://localhost:8091;
}
}
产生原因:在一个项目流程中,由于中间的Nginxuu服务器的处理效率过高(2-3万次/秒),后端服务器tomcat的处理速率较慢,会产生用户请求的等待,所以就产生了集群的概念
处理机制:一个集群相当于一个很大的后端服务器,而这个服务器中又包含了若干个tomcat服务器,这些tomcat服务器共同处理Nginx发来的请求。
要求用户通过http://manage.jt.com 访问8091/8092服务器. 并且实现负载均衡的效果.
规则说明: 根据配置文件的顺序依次访问.
#准备集群
#轮询机制
upstream tomcats {
server 127.0.0.1:8091;
server 127.0.0.1:8092;
}
#配置后端服务器.
server {
listen 80;
server_name manage.jt.com;
location / {
#代理的是一个请求网址
#proxy_pass http://localhost:8091;
proxy_pass http://tomcats;
}
}
关键字: weight= 阿拉伯数字
规则说明: 根据服务器性能实现动态的分配.
#准备集群
#轮询机制
upstream tomcats {
//8091:8092=9:1
server 127.0.0.1:8091 weight= 9;
server 127.0.0.1:8092 weight= 1;
}
#配置后端服务器.
server {
listen 80;
server_name manage.jt.com;
location / {
#代理的是一个请求网址
#proxy_pass http://localhost:8091;
proxy_pass http://tomcats;
}
}
规则: 如果需要用户与服务器进行绑定 则采用IPHASH方式.
IPHASH算法:hash(IP地址:端口号)%(集群中tomcat服务器的数量)
#准备集群
#轮询机制
upstream tomcats {
//8091:8092=9:1
ip_hash;
server 127.0.0.1:8091;
server 127.0.0.1:8092;
}
#配置后端服务器.
server {
listen 80;
server_name manage.jt.com;
location / {
#代理的是一个请求网址
#proxy_pass http://localhost:8091;
proxy_pass http://tomcats;
}
}
说明:如果发现服务器宕机,则程序可以自动化的实现故障的迁移.无需人为干预.
根据配置文件的顺序,依次访问服务器.如果访问的服务器超时,则自动的切换下一台服务器.
弊端: 如果宕机的服务器不做配置,则会频繁的访问故障机. 默认规则
down属性 如果该属性标识服务器,则nginx永远不会访问该设备.
backup属性 设定备用机 正常情况下 该设备不提供服务. 如果其他的设备宕机/遇忙时 才会访问备用机
步骤:
说明: 如果服务器宕机 通过down属性进行标识,则需要人为的干预,这样的方式效率低. 最好的方式由程序自动完成.
upstream tomcats {
#ip_hash;
server 127.0.0.1:8091 max_fails=1 fail_timeout=60s;
server 127.0.0.1:8092 max_fails=1 fail_timeout=60s;
}