这是一篇入门级的Nginx手记
一、下载Nginx(前往官网直接下载就行),这里是windows环境下1.18.0版本的Nginx
二、下载完成后直接解压就好了,解压后如下图:
tips:直接双击nginx.exe可以启动Nginx代理服务器,但是不建议这么干,最好的操作是全部通过cmd命令来完成
三、启动Nginx,访问首页
cmd 进入解压目录 输入 nginx -s start
打开浏览器访问 localhost:80,出现如下页面就说明Nginx成功运行了
三、Nginx反向代理
解压目录下找到conf/nginx.conf,打开文件如下(重点是红色框框的部分):
listen:访问Nginx的端口,默认是80,可以自行修改成任意端口。
server_name 访问的域名,可以自定义成任意域名
location:反向代理配置
修改Nginx配置文件不需要重启,只需要重新加载nginx -s reload
演示:配置反向代理,修改配置文件如下
可以看到,修改了Nginx端口,location增加了配置proxy_pass http://localhost:8024;
http://localhost:8024是我本地tomcat的访问地址
打开浏览器访问 localhost:8000,发现访问的内容不再是Nginx的首页而变成了tomcat的首页(这就说明反向代理配置成功了)
四、反向代理进阶(实现同一个端口代理,切换访问地址访问不同的tomcat资源)
准备两个可访问的tomcat,并在tomcat的目录下新建资源ates/a.html,btes/b.html,内容分别是tomcat对应的端口
修改配置文件如下:
浏览器输入http://localhost:8000/ates/a.html
浏览器输入http://localhost:8000/btes/b.html
五、Nginx负载均衡(地址栏访问相同的地址,获取到的是来自不同的tomcat资源)
两个tomcat下面新建资源tes/a.html内容分别是各自的端口号,修改配置文件如下:
浏览器访问http://192.168.1.92:8000/tes/a.html
刷新一下:
说一下Nginx负载均衡方式:
1.轮询(默认)。
2.weight,代表权,权越高则访问的优先级更高。
3.fair,按后端服务器的响应时间来分配请求,相应时间短的优先分配。
4.ip_hash,每个请求按照访问 ip 的 hash 结果分配,这样每一个访客固定的访问一个后端服务器,可以解决 Session 的问题。
六、Nginx动静分离
Nginx解压目录下新建资源static/image/xxx.png(将任意数量的图片放至该路径)
修改配置文件如下:
root:静态资源的根路径
浏览器访问http://192.168.1.92:8000/image/
当然也可以直接访问资源:http://192.168.1.92:8000/image/e19cc8390c794721a3ea9c95ee21e3a5_a.png
使用静态分离的方式可以减少tomcat服务器的压力。