nginx学习记录--安装和转发到tomcat
来源:互联网 发布:视频分析软件电力 编辑:程序博客网 时间:2024/06/07 06:12
有一段时间没写博客了,因为接了几个项目,并且临近期末,还要准备考试,比较忙.最近项目上线,项目主要是微信智能硬件管理,所以需要两个服务器,一个用来处理微信上传的消息,一个用来处理智能设备上传的消息,所以就搞了两个tomcat,然而微信的URL接口配置只能使用80端口,两个tomcat不能同时占用80端口,搜了下资料发现nginx可以转发到指定端口,故学习一番.
1.下载
nginx官网下载(这里使用的是windows版本)
版本:
1. Mainline version:nginx目前主力做的版本,可以理解为开发者版本
2. Stable version:顾名思义,稳定版本,建议使用
3. Legacy versions:之前的稳定版本
2.安装
直接解压到c盘
3.测试
- 启动,双击nginx.exe,这里要注意,nginx默认监听80端口,所以你要保证80端口没被占用才可以启动
- 在浏览器访问 http://localhost
- 看到如下显示即代表成功
4.常用命令
- nginx -s stop //停止nginx
- nginx -s quit //退出nginx
- nginx -s reload //修改配置后重新加载nginx
- nginx -t //检查配置文件是否正确
5.配置转发到tomcat地址
配置文件在安装目录/conf/nginx.conf,进去后主要看server,每一个server相当于一个代理服务器,当然可以配置多个
server { listen 80; #表示此server监听的端口 server_name localhost; #表示监听到之后需要转到哪里去,这时我们直接转到本地,这时是直接到nginx文件夹内 #表示匹配的路径,这时配置了/表示所有请求都被匹配到这里 location / { root html; #面配置了root这时表示当匹配这个请求的路径时,将会在这个文件夹内寻找相应的文件 index index.html index.htm; #默认主页,挨个匹配,找到为止 } #暂时先了解这么多,其他的我没粘贴进来 }
从配置文件中可以看出来,location决定着访问的链接会匹配到哪里,所以只需要修改为tomcat地址即可
location / { proxy_pass http://localhost:8888; #转发到tomcat地址 }
使用命令 nginx -t检测配置文件是否正确,显示正确即可
6.测试
- 启动tomcat
- 启动nginx
- 在浏览器访问 http://localhost,显示出来是tomcat页面,则成功
7.location优先级问题
如上配置,你可以在server中配置多个location,比如:
location / { #空匹配 proxy_pass http://localhost:8888; } location =/device/device.do { #等于匹配 proxy_pass http://localhost:8080; }
但是这样就会有个问题,假设我请求的为http://XXXX.com/device/device.do,那么这两个location都可以匹配,具体使用哪个呢?这就涉及到优先级问题.
匹配符
- 等于匹配符:=
等于匹配符就是等号,特点可以概括为两点:
精确匹配
不支持正则表达式 - 空匹配符
空匹配符的特点是:
匹配以指定模式开始的 URI
不支持正则表达式 - 正则匹配符:~
正则匹配符是可以使用正则表达式的匹配符。不过这里要强调的是,一般来说~是指:
区分大小写的正则匹配
而~*表示:
不区分大小写的正则匹配
但是对于一些对大小写不敏感的操作系统,这两者没有区别。另外一个就是^~,其表示以指定模式开始的正则匹配。 - 内部访问符:@
一般用于错误页面等,这个暂不讨论。
- 等于匹配符:=
优先级
- =
- 空匹配符,满足精确匹配时
- ^~
- ~或~*
- 空匹配符,满足以指定模式开始时的匹配时
由上可知访问http://XXXX.com/device/device.do时,应该会使用等于匹配的location.
- 总结
*(location =) > (location 完整路径 >) >(location ^~ 路径) >(location ~ 正则) >(location 路径)
只要匹配到,其它的都会忽略,然后返回到改匹配。**
具体怎么使用配置,还是遇到了再去学习使用比较好
0 0
- nginx学习记录--安装和转发到tomcat
- Nginx和Tomcat安装记录
- nginx 配置转发到tomcat
- Nginx 转发给 tomcat
- nginx转发tomcat,https
- nginx端口转发tomcat,80转8080和8433
- apache 转发到tomcat
- nginx学习记录01-安装nginx
- Nginx反向代理转发tomcat
- nginx安装和nginx、tomcat集群配置
- windows下的nginx安装和配置及与tomcat关联配置记录
- nginx反向代理+tomcat(nginx转发规则和实现负载均衡)
- 谈谈渲染,玩玩nginx——前后端分离,转发请求到Tomcat的尝试
- 谈谈渲染,玩玩nginx——前后端分离,转发请求到Tomcat的尝试
- 谈谈渲染,玩玩nginx——前后端分离,转发请求到Tomcat的尝试
- nginx安装配置启动,把前端的请求一部分转发到本地,ajax请求转发到服务器。
- Nginx安装学习使用详细记录
- nginx + tomcat初步学习,安装配置
- MQTT 物联网连接协议
- docker 私有仓库查询
- 环境变量
- mysql 查询今天、昨天、上月、本月的数据
- Swift - 使用UIDatePicker实现倒计时功能
- nginx学习记录--安装和转发到tomcat
- IoC模式(依赖、依赖倒置、依赖注入、控制反转)
- 策略模式 详解
- 第16周项目——文件阅读9
- iOS 多线程开发(一)
- 高可用性系统在大众点评的实践与经验
- 链式存储的LinkList.h代码
- 文章标题
- Create Volume 操作(Part I) - 每天5分钟玩转 OpenStack(50)