一、实现效果:

  使用Nginx反向代理,根据访问的路径跳转到不同端口的服务中,Nginx监听端口为9001

  1. 访问http://127.0.0.1:9001/bs-manager/       直接跳转到127.0.0.1:8001
  2. 访问http://127.0.0.1:9001/bs-webapp/        直接跳转到127.0.0.1:8002

二、准备工作

  1. 准备两个tomcat服务器,一个8001端口,一个8002端口。
  • 使用命令 编辑 文件 :/conf/server.xml 文件  vim server.xml
  •  修改后如下:

1、修改server 的默认端口,由默认8005->8091

nginx 国产化 替换中间件_Nginx


2、修改http协议的默认端口,由默认的8080->8082

nginx 国产化 替换中间件_nginx 国产化 替换中间件_02

3、修改默认ajp协议的默认端口,由默认的8009->9001

nginx 国产化 替换中间件_Nginx_03

  1. tomcat8.5修改端口号    启动命令  bin目录下   ./startup.sh
  2. 在Linux上启动Tomcat,结果弹出:-bash: ./startup.sh: Permission denied 的提示,解决方案
用命令chmod 修改一下bin目录下的.sh权限就可以了 
chmod u+x *.sh 
这里的u 这里指文件所有者,+x 添加可执行权限,*.sh表示所有的sh文件。

  4. 测试页面:(前置条件:服务器需要开启防火墙或者对应的端口号)

          IP:8001  通过  、IP:8002 通过 (线上服务器需要等5分钟左右才能通

三、具体配置

  1. 准备测试页面 (链接可预览

    2. 修改Nginx配置

     修改 nginx 的配置文件 在 http 块中添加 server{}
     修改其中注释的就行。

     

nginx 国产化 替换中间件_正则表达式_04

修改成功后

    

nginx 国产化 替换中间件_反向代理_05

  • 开发的端口: nginx监听端口:9001,tomcat8001端口:8001,tomcat8002端口:8002。
  • 测试结果    test.wxw.plus 代表你的服务器IP

nginx 国产化 替换中间件_正则表达式_06

nginx 国产化 替换中间件_Nginx_07

总结:location 指令说明 该指令用于匹配 URL。

  • 语法如下:
  1.  = :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配 成功,就停止继续向下搜索并立即处理该请求。
  2.  ~:用于表示 uri 包含正则表达式,并且区分大小写。
  3.  ~*:用于表示 uri 包含正则表达式,并且不区分大小写。
  4. ^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字 符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。

注意:如果 uri 包含正则表达式,则必须要有 ~ 或者 ~*标识。