Nginx——反向代理演示——绝对牛逼篇

Nginx——Nginx简介
Nginx——Nginx 的安装,nginx.conf 配置文件和相关命令
Nginx——反向代理演示——绝对牛逼篇
Nginx——负载均衡演示——偷懒篇
Nginx——动静分离演示

1:反向代理——一个服务器

反向代理介绍:
Nginx——Nginx简介

举例:打开浏览器,在浏览器地址栏输入地址 www.zlj.com,跳转到 liunx 系统 tomcat 主页 面中
步骤如下,分为准备工作,和具体配置在这里插入图片描述

1.1 准备工作 (安装tomcat)

(1)在 liunx 系统安装 tomcat步骤如下

  • tomcat 安装文件放到 liunx 系统中,(使用xftp软件)
    在这里插入图片描述
  • 解压 (解压后生成一个文件夹)
& tar -zxvf apache-tomcat-7.0.70.tar.gz
  • 进入 tomcat 的 bin 目录中,输入 ./startup.sh 命令启动 tomcat 服务器

在这里插入图片描述
Linux tail 命令

(2)对外开放访问的端口步骤如下 (安装好tomcat以后,一定要记住开发端口,不然浏览器会报错)

  • 对外开放访问的端口命令
&  firewall-cmd --add-port=8080/tcp --permanent 
  • 重启防火墙
& firewall-cmd --reload 
  • 查看已经开放的端口号
 & firewall-cmd --list-all 

Linux ps命令在这里插入图片描述
(3)在 windows 系统中通过浏览器访问 tomcat 服务器
http://192.168.174.134:8080/:是在linux上的ip(192.168.174.134)地址,调用端口号
在这里插入图片描述

1.2 具体配置

以上只是配置好了tomcat,并且可以用linux上的ip地址访问,接下来我们就要实现反向代理,步骤如下

  • 在 windows 系统的 host 文件C:\Windows\System32\drivers\etc)进行域名和 ip 对应关系的配置

我们在浏览器中输入域名的时候,会先到本地的host文件中找到是否有配置域名映射的ip地址,如果没有在去dns域名解析器找到是否有配置域名映射的ip地址

在这里插入图片描述

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

在这里插入图片描述

  • 启动nginx
    在这里插入图片描述
  • windows浏览器上输入www.zlj.com,出现如下图启动成功
    在这里插入图片描述
    原理:在这里插入图片描述

2 :反向代理——两个服务器

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

分两个准备工作,具体配置完成

2.1 准备工作

步骤如下

  • 准备两个 tomcat 服务器,一个 8080 端口,一个 8081 端口
    在这里插入图片描述
    修改端口为8080
    在这里插入图片描述
    修改端口为8081(跟上面一样)

  • 创建文件夹和测试页面
    在8080端口的tomcat中创建文件夹和测试页面
    在这里插入图片描述
    在8080端口的tomcat中创建文件夹和测试页面 (跟上面一样)

2.2 具体配置

步骤 如下

  • 找到 nginx 配置文件,进行反向代理配置
    在这里插入图片描述
  • 开放对外访问的端口号 80 8080 8081 (一定要,不然浏览器会报错)
    在这里插入图片描述
  • 测试
    在这里插入图片描述
    在这里插入图片描述
    原理:在这里插入图片描述

3:配置文件location说明

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

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

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

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

发布了186 篇原创文章 · 获赞 189 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_44891295/article/details/104128514