欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Nginx——反向代理

程序员文章站 2022-03-20 07:49:09
...

通过Nginx来实现反向代理,具体配置实例如下所示:

一、反向代理实例一

1、目标

在浏览器地址栏输入www.test.com,可跳转到linux系统tomcat的主页面中。

2、前置工作

(1)在linux系统中安装tomcat,使用默认端口8080

  • tomcat安装文件apache-tomcat-7.0.70.tar.gz放到linux系统中,通过tar -zxvf apache-tomcat-7.0.70.tar.gz解压;
  • 进入tomcat的bin目录中,通过命令../startup.sh启动tomcat服务器

(2)开通对外访问的端口,具体命令如下

  • 关闭防火墙:service iptables stop
  • 开放tomcat默认访问端口8080,进入/etc/sysconfig/iptables文件,在该文件中添加如下内容:-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
  • 重启防火墙:service iptables restart

(3)在Windows系统中通过浏览器访问tomcat服务器

Nginx——反向代理

3、访问过程

Nginx——反向代理

4、具体配置过程

 (1)在Windows系统的host文件进行域名和IP对应关系的配置

进入C:\Windows\System32\drivers\etc目录,编辑hosts文件,添加如下内容:

192.168.17.129 www.test.com

(2)在Nginx中进行请求转发的配置(反向代理配置)

Nginx——反向代理

 5、效果演示

Nginx——反向代理

 

二、反向代理实例二

1、目标

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

访问http://192.168.202.128:9001/htzw/test.html 直接跳转到127.0.0.1:8080

访问http://192.168.202.128:9001/tianhui/test.html直接跳转到127.0.0.1:8081

2、前置工作

按照上面的步骤准备两个tomcat,一个开放端口8080,一个开放端口8081,分别在两个tomcat中的webapps下准备测试页面

3、具体配置过程

修改Nginx的配置文件,在http块中添加server{},具体内容如下:

Nginx——反向代理

 

 

4、location指令说明

location指令用于匹配URL,具体语法如下:

location [=|~|~*|^~] uri {

}

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

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