nginx容器方式反向代理实战


Posted in Servers onApril 18, 2022

一、简述

1.1 什么是反向代理?

这很重要,反向代理就是代理服务器代理真实服务器。客户端以为代理服务器就是真实服务器,所以就会把要请求的==资源(URL)==发给代理服务器。

代理服务器一般是由nginx来充当,代理功能由配置文件来完成。

nginx容器方式反向代理实战

1.2 看图理解

画的仓促,大概有这个意思

nginx容器方式反向代理实战

1.3 错误总结

错误记录:

nginx和tomcat全容器化

用nginx代理两台tomcat服务器,

当访问资源带edu的时候交给tomcat1

当访问资源带vod的时候交给tomcat2

做反向代理测试的时候,写的是完整的URL,不是部分路径。因为代理服务器在客户端看来就是真实服务器!!!

这次对反向代理的理解更深刻了,坚持下来没有错。

同时,请教别人也是必须的,多交流多思考才能更好的解决问题~

以下是错误演示

nginx容器方式反向代理实战

二、正确案例

2.1 启动nginx

docker run --name nginx -p 80:80 --link=tomcat:tomcat1 --link=tomcat02:tomca -v /opt/docker-nginx/nginx.conf:/etc/nginx/nginx.conf -v /opt/docker-nginx/log:/var/log/nginx -v /opt/docker-nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -d 313ec0a602bc

2.2 启动tomcat

先启动一个

docker run -it -p 8080:8080 tomcat

docker cp复制文件

docker cp 容器id:/usr/local/tomcat/webapps.dist/* /opt/webapps

再启动挂载卷

docker run -it -p 8081:8080 --name tomcat01 -v /opt/webapps:/usr/local/tomcat/webapps tomcat
docker run -it -p 8082:8080 --name tomcat02 -v /opt/webapps:/usr/local/tomcat/webapps tomcat

建文件,建资源

[root@VM-16-8-centos vod]# ll
total 4
-rw-r–r-- 1 root root 11 Apr 14 21:42 a.html
[root@VM-16-8-centos vod]# pwd
/opt/tomcat/webapps/vod

[root@VM-16-8-centos edu]# ll
total 4
-rw-r–r-- 1 root root 8 Apr 14 21:26 a.html
[root@VM-16-8-centos edu]# pwd
/opt/tomcat/webapps/edu

nginx容器方式反向代理实战

2.3 配置nginx

[root@VM-16-8-centos docker-nginx]# vim nginx.conf 

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
      listen 80;
      server_name xxx.xxx.xxx.xxx;

      location ~ /edu/ {
         proxy_pass http://xxx.xxx.xxx.xxx:8081;
      }

      location ~ /vod/ {
         proxy_pass http://xxx.xxx.xxx.xxx:8082;
      }
    }
}

2.4 重启所有服务

docker restart …

2.5 测试

nginx容器方式反向代理实战

nginx容器方式反向代理实战

三、云服务器上跑的nginx怎么代理本地项目

不可以!

要么都在云端,只有代理服务器IP和真实服务器IP能互通的情况下才能代理!!!

总结

到此这篇关于nginx反向代理踩坑实战的文章就介绍到这了!

Servers 相关文章推荐
win10安装配置nginx的过程
Mar 31 Servers
nginx配置虚拟主机的详细步骤
Jul 21 Servers
zabbix自定义监控nginx状态实现过程
Nov 01 Servers
Nginx设置HTTPS的方法步骤 443证书配置方法
Mar 21 Servers
Apache Hudi集成Spark SQL操作hide表
Mar 31 Servers
CKAD认证中部署k8s并配置Calico插件
Mar 31 Servers
docker compose 部署 golang 的 Athens 私有代理问题
Apr 28 Servers
Windows Server 2012 R2 磁盘分区教程
Apr 29 Servers
IIS服务器中设置HTTP重定向访问HTTPS
Apr 29 Servers
Nginx的gzip相关介绍
May 11 Servers
Windows server 2022创建创建林、域树、子域的步骤
Jun 25 Servers
解决Git推送错误non-fast-forward的方法
Jun 25 Servers
微信告警的zabbix监控系统 监控整个NGINX集群
Apr 18 #Servers
nginx配置之并发频次限制
如何通过cmd 连接阿里云服务器
Linux中如何安装并部署Redis
Apr 18 #Servers
nginx搭建NFS网络文件系统
Mac电脑OS系统下安装Nginx的详细教程
Docker 镜像介绍以及commit相关操作
You might like
聊天室php&mysql(五)
2006/10/09 PHP
护卫神php套件 php版本升级方法(php5.5.24)
2015/05/10 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
JS target与currentTarget区别说明
2011/08/28 Javascript
在服务端(Page.Write)调用自定义的JS方法详解
2013/08/09 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
js实现对table的增加行和删除行的操作方法
2016/10/13 Javascript
利用Query+bootstrap和js两种方式实现日期选择器
2017/01/10 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
ES6新特性五:Set与Map的数据结构实例分析
2017/04/21 Javascript
Vue 中使用 CSS Modules优雅方法
2018/04/09 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
解决Idea、WebStorm下使用Vue cli脚手架项目无法使用Webpack别名的问题
2019/10/11 Javascript
JS实现超级好看的鼠标小尾巴特效
2020/12/01 Javascript
[00:47]TI7不朽珍藏III——沙王不朽展示
2017/07/15 DOTA
Python ORM框架SQLAlchemy学习笔记之数据查询实例
2014/06/10 Python
python的文件操作方法汇总
2017/11/10 Python
python使用正则表达式替换匹配成功的组
2017/11/17 Python
python获取本机所有IP地址的方法
2018/12/26 Python
python 将大文件切分为多个小文件的实例
2019/01/14 Python
Python 3.8中实现functools.cached_property功能
2019/05/29 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
文件上传服务器-jupyter 中python解压及压缩方式
2020/04/22 Python
python求numpy中array按列非零元素的平均值案例
2020/06/08 Python
python在linux环境下安装skimage的示例代码
2020/10/14 Python
python中的时区问题
2021/01/14 Python
情人节寄语大全
2014/04/11 职场文书
酒店开业庆典策划方案
2014/05/28 职场文书
英语自我介绍演讲稿
2014/09/01 职场文书
店铺转让协议书
2015/01/29 职场文书
违纪学生保证书
2015/02/27 职场文书
go语言基础 seek光标位置os包的使用
2021/05/09 Golang
docker compose 部署 golang 的 Athens 私有代理问题
2022/04/28 Servers