Nginx配置实验反向代理
l 实验要求
浏览器访问 8083.mine.com:8081 地址,(Nginx端口是8081)通过Nginx服务器反向代理监听请求,将请求转发到tomcat服务器上,实现真正内容的访问。
l 实验环境
一台已安装Nginx (port: 8081),tomcat-8.5.39 (port: 8083)的CentOS服务器;
测试主机:Win10
l 模拟n个http服务器作为目标主机
参考博客 (tomcat的单机多实例部署)进行实例创建。
1. 服务器上tomcat的安装位置在 /usr/tomcat/tomcat-8.5.39;在它的同级目录下(/usr/tomcat)创建新文件夹tomcat-ins,用作所需创建的实例根目录。
2. 参考下图,在 tomcat-ins 下创建 webapp01/webapp02 目录,分别对应两个实例目录。创建单个实例时,将正常安装的tomcat目录下的conf,webapps及logs文件夹整个复制到webapp01目录下(temp, work文件夹非必需项)。

3. 修改/webapp01/conf/server.xml配置文件中的三处端口,使其端口号均不同于原来(默认)配置的端口信息,保存后退出。



4. 编写批处理文件进行实例的启动。原博客中是在windows系统下创建的bat文件;由于我是CentOS系统,所以编写对应的shell脚本文件,内容如下:

文件第二行实现的是修改当前窗口中的环境变量CATALINA_BASE值,该变量是定位基本配置信息所在的目录;
start.sh脚本文件用来启动单个实例,所以若有多个实例,则需要对应多个脚本文件。
ps:正常安装的tomcat-8.5.39下的“实例”仍然可以进入bin目录直接运行./startup.sh启动。
6. 当前目录下直接运行 bash start.sh,显示如下信息即表示tomcat启动成功。


7. 浏览器中测试tomcat欢迎页(注意防火墙的对应端口是否开放)。我在服务器上新创建的两个实例weapp01/webapp02,加上正常安装的tomcat,可以有三个 实例同时运行,分别对应端口是8083,8084,8085。



l 配置IP域名(Win10)
修改Windows主机的HOSTS文件,配置IP及域名,如下:IP为服务器IP,域名仅为测试用的可任意。

l 配置Nginx
找到 /usr/local/webserver/nginx/conf/ 目录下的配置文件 nginx.conf,进行编辑,修改如下,修改后重新启动Nginx。

l 浏览器测试
通过域名+端口方式分别访问 8083.mine.com:8081 和 8084.mine.com:8081地址,此时是监听8081,而8081端口是Nginx服务器的运行端口,它通过反向代理接受客户机请求,找到server_name为8083.mine.com的server节点,根据proxy_pass对应的http路径,将请求转发到upstream tomcatserver1上,即端口号为8083的tomcat服务器。至此Nginx的反向代理配置测试完成。



Nginx配置实验反向代理的更多相关文章
- Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...
- nginx 配置实例-反向代理
反向代理实例一 虚拟机IP:192.168.116.129实现效果:使用 nginx 反向代理,访问 www.123.com 直接跳转到 虚拟机的192.168.116.129:8080 实验代码 ...
- Nginx 笔记(三)nginx 配置实例 - 反向代理、负载均衡、动静分离
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.反向代理 反向代理准备工作: (1)在 liunx 系统安装 tomcat,使用默认端口 8080 ...
- Nginx 配置 Jenkins 反向代理
安装 Nginx 参考之前的一篇文章 Nginx 安装配置 安装 Jenkins 参考之前的一篇文章 Linux 搭建 Jenkins Nginx 配置 Jenkins 的反向代理 # /etc/ng ...
- Nginx配置实例-反向代理实现浏览器请求Nginx跳转到服务器某页面
场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...
- Nginx配置Tomcat8反向代理出现 java.lang.IllegalArgumentException: The character [_] is never valid in a domain name.
在配置Nginx的反向代理,访问反向代理的路径而出现了异常 java.lang.IllegalArgumentException: The character [_] is never valid i ...
- centos7安装Nginx 配置及反向代理
Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Ngin ...
- Nginx配置WebSocket反向代理(Tomcat+Nginx)
@toc WebSocket 和HTTP协议不同,但是WebSocket中的握手和HTTP中的握手兼容,它使用HTTP中的Upgrade协议头将连接从HTTP升级到WebSocket.这使得WebSo ...
- nginx::配置https/反向代理
vim /etc/nginx/nginx.conf user nginx; worker_processes ; error_log /var/log/nginx/error.log warn; pi ...
随机推荐
- SpringCloud学习笔记(六、SpringCloud Netflix Feign)
目录: feign简介 feign应用 feign简介: feign是一款Netflix开源的声明式.模板化的http客户端,它可以更加便捷.优雅的调用http api:SpringCloud对Net ...
- node.js是用来做什么的?这是我看到最好的解释了
一种JavaScript的运行环境,能够使得JavaScript脱离浏览器运行. 参考链接:https://www.cnblogs.com/suhaihong/p/6598308.html https ...
- 9.29 csp-s模拟测试55 联+赛+题
T1 联 $n$最大到$1e18$,根本没法做,但$m$只有$1e5$,发现有很多区间是一起动的,或者根本没动,所以可以把区间离散化掉,然后线段树区间修改,对于第三种修改,只需要把它分解成一段一段相同 ...
- docker 部署 HFish(集群部署)
主节点部署: docker run -d --name hfish-master -p : -p : -p : -p : -p : -p : -p : -p : -p : -p : -p : -p : ...
- 【转】Python zip() 函数
转自:http://www.runoob.com/python/python-func-zip.html 描述 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回 ...
- STRIDE威胁建模
一.什么是威胁建模 简单的来说,威胁建模就是通过结构化的方法,系统的识别.评估产品的安全风险和威胁,并针对这些风险.威胁制定消减措施的一个过程. 威胁建模是一个非常有用的工具,它的核心是“像攻击者一样 ...
- cocos2dx 3.17(Windows下) 接入skynet和sprotol
大致流程一致,但是他的github上的版本,没有Windows的版本.打开他的win的工程会提示缺少一个模块. 本人环境 cocos2dx 3.17.1 当前最新 skynet-无视-当前最新 VS2 ...
- Wireshark使用入门
目录 1. Wireshark介绍 1.1 客户端界面 1.2 Display Filter 的常用方法 1.3 界面上一些小TIPS 2. 使用Wireshark分析TCP三次握手过程 2.1 三次 ...
- 环境变量对于 VS 有什么用?
一.前言 环境变量可以用来组织 VS 工程目录.VS 作为一个 IDE,其天职在于帮开发者组织好工程,主要包括对工程中源文件.库文件的组织.(本质上是提供一个可视化的操作界面,让开发者方便的定义编译器 ...
- ndt算法学习
NDT算法原理: NDT算法的基本思想是先根据参考数据(reference scan)来构建多维变量的正态分布, 如果变换参数能使得两幅激光数据匹配的很好,那么变换点在参考系中的概率密度将会很大. 因 ...