Nginx学习3:反向代理实例
Nginx配置实例-反向代理1
目标
打开浏览器,在浏览器地址栏输入地址 www.123.com,跳转到 liunx 系统 tomcat 主页面中
准备工作
我们在官网下载好tomcat之后,直接将tomcat的压缩包放到相应的目录下编译解压,然后进入tomcat的bin目录中使用./startup.sh
命令启动tomcat,如下图:
注意:要开放系统防火墙的8080端口才能访问tomcat的主页面,我这里懒得设置,所以就直接把虚拟机的防火墙给关了…
虚拟机IP地址加8080端口访问tomcat主页面,如下图:
我们也可以用一下命令查看tomcat的启动日志
tail -f catalina.out
主机配置
第一步 在 windows 系统的 host 文件进行域名和 ip 对应关系的配置
通过修改本地 host 文件,将 www.123.com 映射到我们虚拟机的IP地址(假装我们有一个域名…)
配置完成之后,我们便可以通过 www.123.com:8080 访问到第一步出现的 Tomcat 初始界面。
配置 nginx.conf 配置文件
如上配置,我们监听 80 端口,访问域名为 www.123.com,不加端口号时默认为 80 端口,故访问该域名时会跳转到 127.0.0.1:8080 路径上。
然后我们在主机浏览器输入 www.123.com ,访问到tomcat主页,如下图:
遇到的问题
注意:有的人在最后一步完成后可能会出现访问失败的情况,即输入 www.123.com 访问的是 nginx 的欢迎页面,这是因为我们没有指定配置文件启动 nginx 导致的,我们需要指定配置文件来重新启动一遍nginx,如下:
# 指定配置文件重启nginx
# nginx的启动目录/nginx -s reload -c /nginx的配置文件目录/nginx.conf
/usr/local/nginx/sbin/nginx -s reload -c /home/centos7-2/Nginx/nginx-1.20.1/conf/nginx.conf# 指定配置文件启动nginx
# nginx的启动目录/nginx -c /nginx的配置文件目录/nginx.conf
/usr/local/nginx/sbin/nginx -c /home/centos7-2/Nginx/nginx-1.20.1/conf/nginx.conf
Nginx配置实例-反向代理2
目标
使用 nginx 反向代理,根据访问的路径跳转到不同端口的服务中
nginx 监听端口为 9001,
访问 http://192.168.126.131:9001/edu/ 直接跳转到 127.0.0.1:8080
访问 http://192.168.126.131:9001/com/ 直接跳转到 127.0.0.1:8081
准备工作
(1)准备两个 tomcat 服务器,一个 8080 端口,一个 8081 端口,如下图:
准备好两个 tomcat 服务器之后,我们修改这两个服务器的端口,如下图:
找到 tomcat 的配置文件,修改 server.xml 里面的内容。
首先把 shutdown 端口修改成8006,如下图:
然后再把 tomcat 运行端口修改成 8081,如下图:
总之,把所有跟另一个 tomcat 服务器相同的端口都改了,以避免发生端口冲突。
最后,去到 bin 目录底下将两个 tomcat 都启动起来,如下图:
再检查一下是否成功启动了,如下图:
我们可以看到,两个 tomcat 服务器都成功启动起来了。
(2)创建文件夹和测试页面
然后我们在两个 tomcat 服务器下面的 webapps 目录底下创建测试文件夹 edu、com 和测试页面 a.html、b.html,如下图:
我们来测试一下页面是否创建成功,如下图:
具体配置
(1)找到 nginx 配置文件,进行反向代理配置,如下图:
其中 9001 是 nginx 要监听的端口,server_name 就是本机的 ip 地址。~ /edu/
中的“~”是一种正则表达式的形式,表示当路径中有 “eud” 时,则转发到相应的路径去。
最终测试
location 配置说明
该指令用于匹配 URL。
语法如下:
location [= | ~ | ~* | ^~] uri{}
- = : 用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
- ~ : 用于表示 uri 包含正则表达式,并且区分大小写。
- ~* : 用于表示 uri 包含正则表达式,并且不区分大小写。
- ^~ : 用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。
注意:如果 uri 包含正则表达式,则必须要有 ~ 或者 ~* 标识。
PS:可以到我的个人博客查看更多内容
个人博客地址:小关同学的博客
相关文章:

2022-2028年中国钢铁智能制造产业竞争现状及发展趋势分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢铁智能制造行业市场行业相关概述、中国钢铁智能制造行业市场行业运行环境、分析了中国钢…

exchange 2010 search mailbox 的幕后强大功能
铃……….半夜中被一阵急促的手机铃声吵醒,年度服务客户打来电话需要进行邮件的排查和删除工作。问其原因,原来是组织中有人发了一封关于领导的不健康的邮件,并在企业内部进行了转发,领导要求立即找出此类邮件并进行删除。管理员深…

无人机官网介绍
参考官网:http://dev.px4.io/master/en/index.html 程序在运行期间可以通过在shell端输入执行top指令查看哪些模块正在被执行,当运行模块时可以通过输入<moudles name> start/stop来实现模块的使用与停止。 PX4软件架构: 更新速率&am…

Unity从头开始开发增强现实(AR)游戏学习教程
使用Unity 2021构建增强现实飞镖游戏 学习从头开始开发增强现实(AR)游戏,使用AR基金会,货币化,发布游戏玩商店 Build a Augmented Reality Dartboard Game with Unity 2021 你会学到什么 使用Unity2021从头开始学习增强现实。 构建一个AR飞镖…

IDEA的CPU占用率高问题解决方法
前言:这段时间发现 IDEA 的 CPU 占用率猛涨,时不时就飙升到百分之7、80,使得敲代码的体验感十分不佳,在经过一番查找之后终于解决了问题,在此记录一下 IDEA的CPU占用率高问题解决方法 问题定位 我们先定位一下为什么I…

消息队列之库存扣减
转载于:https://www.cnblogs.com/work-at-home-helloworld/p/5230894.html

2022-2028年中国钢铁冶炼行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢铁冶炼行业市场行业相关概述、中国钢铁冶炼行业市场行业运行环境、分析了中国钢铁冶炼行…

Microsoft Build 2015
没本事去旧金山,只能默默的守在笔记本前看了…… 首先Azure在全球有19个数据中心了,终于超过亚马逊了,好样的!过去12个月Azure有超过500个新功能上线,每月用户增长9万。Azure将会越来越成熟了,只可惜我现在…

开源飞控PX4简介
介绍: https://docs.px4.io/master/zh/flight_controller/pixhawk4.html无人机飞控基本装配参考: https://docs.px4.io/master/zh/assembly/下载地面站链接(QGC地面站): http://qgroundcontrol.com/downloads/

Unity视觉效果图初学教程 Unity Visual Effects Graph for Beginners
面向初学者的Unity视觉效果图介绍 你会学到: 学生将学习使用视觉效果图来创建效果 MP4 |视频:h264,1280720 |音频:AAC,44.1 KHz,2 Ch 语言:英语中英文字幕(根据原英文字幕机译更准确) |时长:39节课(4h 42m…

nonatomic, retain,weak,strong用法详解
strong weak strong与weak是由ARC新引入的对象变量属性ARC引入了新的对象的新生命周期限定,即零弱引用。如果零弱引用指向的对象被deallocated的话,零弱引用的对象会被自动设置为nil。property(strong) MyClass *myObject;相当于property(retain) MyClas…

“ Error:(1, 1) java: 非法字符: ‘\ufeff‘ ”错误的解决方法
前言:今天为了做作业,在 github 上面下载了个项目,然后在运行项目时发现报错,在此记录一下 “ Error:(1, 1) java: 非法字符: ‘\ufeff’ ”错误的解决方法 发生原因 这个项目从目录的结构可以很明显地看出是使用 Eclipse 开发的…

2022-2028年中国钢铁电商产业竞争现状及发展前景预测报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢铁电商行业市场行业相关概述、中国钢铁电商行业市场行业运行环境、分析了中国钢铁电商行…

java开发webservice的几种方式
为什么80%的码农都做不了架构师?>>> webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录。 1.Axis2 Axis是apache下一个开源的webservice开发组件,出现的算是比较早了&a…

改变gazebo背景颜色
修改这里:

【Unity教程】创建一个完整的驾驶游戏
专业游戏设计 你会学到什么 在unity HDRP创建一个完整的驾驶游戏 定制不同类型的汽车 将人工智能汽车和人工智能航路点系统添加到你的赛道上 添加汽车展厅菜单以解锁和购买新车 在Blender中设计自己的赛道 易于理解的编码使游戏工作 流派:电子学习| MP4 |视频:h264,…

哈夫曼编译码器
前言:又到了学校一年一度的数据结构课设的日子,经不住学弟学妹热心地“询问”我数据结构课设的内容,我就在这里把我之前数据结构课设做的东西总结一下 哈夫曼编译码器 我课设选择的题目是哈夫曼编译码器,类似于我们平时用的解压缩…

Codeforces 629D Babaei and Birthday Cake(树状数组优化dp)
题意: 线段树做法 分析: 因为每次都是在当前位置的前缀区间查询最大值,所以可以直接用树状数组优化。比线段树快了12ms~ 代码: #include<cstdio> #include<cmath> #include<iostream> #include<algorithm>…

2022-2028年中国钢筘行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢筘行业市场行业相关概述、中国钢筘行业市场行业运行环境、分析了中国钢筘行业市场行业的…
控制台绘制正切曲线
前面介绍了:控制台绘制正弦/余弦曲线 , 控制台绘制正弦曲线和余弦曲线同时显示 下面来看看正切曲线吧,其实也都差不多…… #include <stdio.h> #include <math.h>int main() {double y;int x,k;for(y10;y>-10;y--){katan(y)*7;if(k>0)…

PX4多机ros仿真报错
出现报错: 缺少配置文件,需要添加路径到文件中; 在根目录下打开终端输入: 出现下面一个界面:(蓝色是我添加的) 保存退出; 重新进行刚开始的操作: 使用默认的.launc…

Unity创建2D动作RPG游戏 Create Action 2D RPG Game in Unity
在Unity中创建动作2D RPG游戏 大小解压后:5.69G 时长10h 包含 Udemy Game Asset.unitypackage 源文件 1280X720 MP4 语言:英语中英文字幕(根据原英文字幕机译更准确) 你会学到什么 学习基础来提升C#, 为远程和特殊攻击…

Nginx学习4:负载均衡实例
Nginx配置实例-负载均衡 目标 在浏览器地址栏输入地址 http://192.168.126.131:8080/edu/a.html,负载均衡效果,平均分配到 8080 和 8081 端口中 准备工作 (1)准备两台 tomcat 服务器,一台 8080,一台 80…

2016030204 - git和github结合
1.下载和安装git客户端 参考:http://www.cnblogs.com/zhtzyh2012/p/5232291.html 2.github上创建项目 参考:http://www.cnblogs.com/zhtzyh2012/p/5233495.html 3.密钥相关信息设置 参考:http://www.cnblogs.com/zhtzyh2012/p/5233630.html 4…

2022-2028年中国钢化玻璃行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢化玻璃行业市场行业相关概述、中国钢化玻璃行业市场行业运行环境、分析了中国钢化玻璃行…

nginx如何解决超长请求串
nginx是一个强大的http服务器,但是在使用过程中发现,当遇到超长的post请求或者get请求时,nginx会返回413、400、414等状态码,这是因为请求串长度超过了nginx默认的缓存大小或者请求串大小,那么我们需要怎么样来解决这些…

ubuntu安装qwt出现错误时"mkdir: 无法创建目录“/usr/local/qwt-6.1.3“: 权限不够"
报错: 在root用户下执行操作,参考链接安装qwt

Unity 2021人工智能导论 Introduction to Artificial Intelligence in Unity 2021
学习视频游戏开发中最常用的人工智能技术的基础知识。 你会学到什么 了解如何使用有限状态机 学习行为树的基础知识 了解如何实现阿斯塔寻路算法 了解如何在游戏中实现传感器 了解如何创建GOAP系统 了解植绒的基本知识 流派:电子学习| MP4 |视频:h264,1280720 |音频…

HikariPool 连接池问题
前言:今天在一个项目运行的时候发现一个很奇怪的问题,当我有一段时间无操作之后再进行插入操作的话,就会出现HikariPool相关的报错,在此记录一下 问题 2022-02-20 13:14:04.178 WARN 4012 --- [nio-8888-exec-6] com.zaxxer.hik…

谈谈对web标准的理解
Web标准不是某一个标准,而是由一系列标准组合而成。网页主要由三部分组成:结构、表现和行为。对应的标准也分三方面:结构化标准语言主要包括XHTML和HTML以及XML,表现标准语言主要包括CSS,行为标准主要包括对象模型&…