Nginx反向代理

准备工作
正向代理介绍
反向代理介绍
模拟反向代理


准备工作

Liunx
Centos7
tomcat8(.tar.gz压缩包)下载
jdk11(使用yum安装即可 yum install java-11-openjdk)
如果没有安装Nginx请查看上一篇文章
Centos7安装部署Nginx

正向代理介绍

所谓正向代理 , 就像我们居家办公或者外地出差 , 但是需要访问公司内网资源 , 此时我们就需要一个代理服务器 , 通过访问代理服务器 , 来访问公司内网.
Nginx反向代理_第1张图片

反向代理介绍

反向代理 , 即用户访问淘宝网的订单页 , 我们只需访问 www.taobao.com/order , 但是反向代理服务器需要根据 /order 来映射到源服务器 , 从中拿到资源再返回给反向代理服务器,然后再返回给客户端 , 用户不会感知代理服务器后边的源服务器存在.
Nginx反向代理_第2张图片

模拟反向代理

/root 下创建 tomcat 文件夹,并将tomcat压缩包放入其中

mkdir tomcat

进入 tomcat 文件夹,将压缩包解压

tar -xzvf apache-tomcat-8.5.81.tar.gz 

在这里插入图片描述
切换到 nginx 目录启动并访问
Nginx反向代理_第3张图片
Nginx反向代理_第4张图片
此时进入 nginx 配置文件,将默认端口修改为9001 并代理到tomcat服务器上即-> 浏览器访问9001端口,后台代理到8080端口上

cd ..
cd conf/
vim nginx.conf

在location/插入如下代码,保存并退出

proxy_pass http://127.0.0.1:8080/;

Nginx反向代理_第5张图片
重启nginx

cd ../sbin/
./nginx -s reload 

此时查看 tomcat 是否启动

ps -ef|grep tomcat

在这里插入图片描述
没有启动此时需要启动

cd /root/tomcat/apache-tomcat-8.5.81/bin/
./startup.sh

请求 9001 端口
Nginx反向代理_第6张图片
成功
接下来通过路径不同,访问不同的服务器(tomcat) 即 -> 9001/aa 访问tomcat=1 ; 9001/bb 访问tomcat=2
切换到tomcat 复制一份tomcat

cd ../../
cp -r apache-tomcat-8.5.81 apache-tomcat-8.5.81-1

Nginx反向代理_第7张图片
进入tomcat-1文件夹内将默认端口修改为8081,否则启动会报端口被占用异常

 cd apache-tomcat-8.5.81-1/conf/
 vim server.xml

需要更改两个地方
Nginx反向代理_第8张图片
保存退出,再将两个tomcat的Home修改为Home-aaHome-bb以便区分
Nginx反向代理_第9张图片

cd ../webapps/ROOT/
vim index.jsp

Nginx反向代理_第10张图片
启动tomcat-1
此时进入nginx.conf配置反向代理

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

Nginx反向代理_第11张图片
此处对nginx配置规则做下简单补充 优先级 1 为最高,依次递减
1) 精确配置 location = /ziye {}
2) 匹配路径前缀 localtion ^~ /ziye {}
3) 不区分大小写正则匹配 localtion ~* /ziye {}
4) 正则匹配 location ~ /ziye {}
5) 普通路径前缀匹配 location /ziye {}

保存退出,重启nginx

cd ../sbin/
./nginx -s reload

访问测试
Nginx反向代理_第12张图片
模拟反向代理结束

如果访问失败请查看

其他章节
Centos7安装部署Nginx
Nginx负载均衡
Nginx动静分离


end

你可能感兴趣的:(nginx,linux,nginx,服务器,apache)