Nginx - 反向代理实例 1

1. 实现效果

(1)打开浏览器,在浏览器地址栏输入地址 www.123.com,跳转到 liunx 系统 tomcat 主页面中

2. 准备工作

(1)在 liunx 系统安装 tomcat,使用默认端口 8080 tomcat 安装文件放到 liunx 系统中,解压 进入 tomcat 的 bin 目录中,./startup.sh 启动 tomcat 服务器
(2)对外开放访问的端口

  • firewall-cmd --add-port=8080/tcp --permanent
  • firewall-cmd –reload

查看已经开放的端口号
firewall-cmd --list-all

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

NGINX ingress 端口_NGINX ingress 端口

3、访问过程的分析

NGINX ingress 端口_正则表达式_02

4、具体配置

第一步 在 windows 系统的 host 文件进行域名和 ip 对应关系的配置

NGINX ingress 端口_nginx_03


(1)添加内容在 host 文件中

NGINX ingress 端口_正则表达式_04


第二步 在 nginx 进行请求转发的配置(反向代理配置)

NGINX ingress 端口_nginx_05

5、最终测试

NGINX ingress 端口_正则表达式_06

Nginx - 反向代理实例 2

1、实现效果

使用 nginx 反向代理,根据访问的路径跳转到不同端口的服务中
nginx 监听端口为 9001,
访问 http://192.168.17.129:9001/edu/ 直接跳转到 127.0.0.1:8080
访问 http:// 192.168.17.129:9001/vod/ 直接跳转到 127.0.0.1:8081

2、准备工作

(1)准备两个 tomcat 服务器,一个 8080 端口,一个 8081 端口
(2)创建文件夹和测试页面

3、具体配置

(1)找到 nginx 配置文件,进行反向代理配置

NGINX ingress 端口_NGINX ingress 端口_07


(2)开放对外访问的端口号 9001 8080 8081

4、最终测试

NGINX ingress 端口_NGINX ingress 端口_08


NGINX ingress 端口_tomcat_09

location 指令说明

该指令用于匹配 URL。
语法如下:

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

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

server {
	listen 9001;
	server_name  localhost;
	location ~ /edu/ {
		proxy_pass http://localhost:8001;
		
	}
	location ~/vod/  {
		proxy_pass http://localhost:8002;	
	}

}