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 ...
随机推荐
- oracle 死锁 锁
[zhuan]今天看群里在讨论数据库死锁的问题,也一起研究了下,查了些资料在这里总结下. 所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将 ...
- HTTP GET POST PUT DELETE 四种请求
1.GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数据,不会影响资源的内容,即该请求不会产生副作用.无论进行多少次操 ...
- 201871010111-刘佳华《面向对象程序设计(java)》第十三周学习总结
201871010111-刘佳华<面向对象程序设计(java)>第十三周学习总结 实验十一 图形界面事件处理技术 实验时间 2019-11-22 第一部分:理论知识总结 1.事件源:能够产 ...
- C++ 数组遍历的两种方式
C++ 数组遍历的两种方式: #include <iostream> using namespace std; int main() { // 一维数组 ] = {, , , , }; / ...
- 9.Go-反射、日志和线程休眠
9.1反射 在Go语言标准库中reflect包提供了运行时反射,程序运行过程中动态操作结构体 当变量存储结构体属性名称,想要对结构体这个属性赋值或查看时,就可以使用反射 反射还可以用作判断变量类型 整 ...
- oracle序列相关
一. oracle中如何实现一列的规律增长呢(通常是指number类型的列)? 这就需要借助序列来实现了; 1. 什么是序列? 可以理解为序列是一组sql语法创建出来的函数, 该函数中定义 好 ...
- x1
//程序功能: //要求客户从键盘输入一个整数,判断其是奇是偶 #include <stdio.h> int main(){ int x; printf("输入一个整数:\n&q ...
- A1044 Shopping in Mars (25 分)
一.技术总结 可以开始把每个数都直接相加当前这个位置的存放所有数之前相加的结果,这样就是递增的了,把i,j位置数相减就是他们之间数的和. 需要写一个函数用于查找之间的值,如果有就放返回大于等于这个数的 ...
- linux的命令操作
linux的命令操作 1.日常操作命令 **查看当前所在的工作目录pwd **查看当前系统的时间 date **查看有谁在线(哪些人登陆到了服务器)who 查看当前在线last 查看最近的登陆历史记录 ...
- centos配置ADSL拨号 配置阿里云的yum源
如果系统yum源有问题可以更改yum源配置阿里云的yum源1)下载repo文件 wget http://mirrors.aliyun.com/repo/Centos-7.repo(没有 wget命令可 ...