nginx 的反向代理 负载均衡 动静分离 重写

反向代理:客户端访问代理服务器,代理服务器代理web站点响应用户请求

一台nginx 一台tomcat

实现nginx反向代理tomcat

(用户访问nginx服务器,实际访问到的是tomcat页面)

开启nginx服务

vim /usr/local/nginx/conf/nginx.conf

修改配置文件,代理tomcat的地址192.168.38.5:8080

nginx -s reload

打开浏览器输入192.168.38.3

反向代理二

根据访问的不同路径 nginx 反向代理到不同的服务器上

http://192.168.38.3/edu 直接跳转到 192.168.38.5:8080/edu

http://192.168.38.3/vod 直接跳转到 192.168.38.6:8080/vod

两台tomcat 服务器 地址分别为 192.168.10.45 192.168.10.47 并tomcat 都已启动

准备edu 和aaa测试页面

192.168.38.5主机

cd /usr/local/tomcat/webapps/

mkdir edu

echo "edu.com" > edu/index.html

192.168.38.6主机

cd /usr/local/tomcat/webapps/

mkdir aaa

echo "8888" > aaa/index.html

修改nginx 主机 配置文件

vim /usr/local/nginx/conf/nginx.conf

nginx -s reload

网页测试

192.168.38.3/edu/

192.168.38.3/aaa/

负载均衡:nginx作为调度服务器,反向代理多台web服务器响应用户请求

策略: 轮询 权重 ip_hash fair(按照后端相应时间)

在上面实验的基础上做

将 192.168.38.6 中 aaa 文件夹 更名为 edu

cd /usr/local/tomcat/webapps

mv aaa edu

修改nginx 服务器配置文件

vim /usr/local/nginx/conf/nginx.conf

nginx -s reload

浏览器测试,刷新内容交替出现

动静分离

将动态请求和静态请求分开

两种方案:

纯粹的把静态资源独立成单独的域名 放到一台服务器上 目前主流的方法

另一种是动态跟静态资文件混合在一起发布 通过 nginx 来分开

准备静态资源

nginx 服务器上

cd /

mkdir /data

cd /data

mkdir www image

echo "<h1>static web test</h1>" > www/test.html

cd image //上传两张图片并改名

动态资源使用 tomcat 服务器 默认 无需改动

修改 nginx 配置文件

nginx -s reload

网页测试

http://192.168.38.3/image/1.png

http://192.168.38.3/image/2.png

http://192.168.38.3/index.jsp

重写

rewrite功能就是,使用nginx提供的全局变量或自己设置的变量,使用nginx提供的全局变量或自己设置的变量,结合正则表达式和标记位实现URL重写以及重定向。更换域名后需要保持旧的域名能跳转到新的域名上、某网页发生改变需要跳转到新的页面、网站防盗链等等需求

修改配置文件

重读 nginx -s reload

本地磁盘地址C:\Windows\System32\drivers\etc\hosts

域名解析

浏览器访问www.aax.com 会转到 www.liangzhi.cn

相关推荐
半岛铁盒BKB2 分钟前
3par persona设置错误,linux I/O持续报错
linux·存储·3par
..过云雨25 分钟前
结课作业自选01. 内核空间 MPU6050 体感鼠标驱动程序(二)(完整实现流程)
linux·开发语言·嵌入式硬件
西阳未落29 分钟前
Linux(5)——再谈操作系统
linux·运维·服务器
Alex_81D31 分钟前
Https流式输出一次输出一大段,一卡一卡的-解决方案
nginx·http·https
万里不留行32 分钟前
SRS流媒体服务器,配置国标协议对接和HTTPS视频流输出功能
运维·服务器·https·音视频·实时音视频
fei_sun40 分钟前
【Harmony OS】作业四 布局
java·linux·网络
HaanLen1 小时前
React19源码系列之渲染阶段performUnitOfWork
前端·javascript·react.js·react19源码
小徐敲java1 小时前
Vue3中reactive响应式使用注意事项
前端·javascript·vue.js
编码七号1 小时前
【知识点】关于vue3中markRow、shallowRef、shallowReactive的了解
前端·javascript·vue.js
Bonnie_12151 小时前
02-jenkins学习之旅-基础配置
运维·学习·jenkins