Nginx反向代理学习实例教程

 更新时间:2021年10月17日 15:50:34   作者:Leida_hzm  
nginx作为web服务器一个重要的功能就是反向代理,当然你也可以使用nginx配置正向代理,这篇文章主要给大家介绍了关于Nginx反向代理的相关资料,需要的朋友可以参考下

一、反向代理准备工作

1.在linux系统中安装Tomcat

将tomcat解压到/usr/src下。启动需要jdk环境。没有jdk环境的装一下,我centos7自带jdk1.8。

请添加图片描述

2.启动tomcat

进入tomcat的bin目录中,有个startup.sh文件。

请添加图片描述

./startup.sh启动tomcat服务器

请添加图片描述

3.对外开放访问的端口

查看当前开放的端口号

firewall-cmd --list-all

设置开放的端口号

firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=8080/tcp --permanent

重启防火墙

firewall-cmd --reload

4.测试访问tomcat

http://192.168.1.173:8080/

请添加图片描述

自此前期准备工作完毕!!

二、反向代理案例(一)

1.实现效果

打开浏览器,在浏览器地址栏输入www.123.com,跳转到linux系统tomcat页面

请添加图片描述

2.具体配置

第一步:在本地 /etc/hosts文件添加

请添加图片描述

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

cd /usr/local/nginx/conf
vim nginx.conf

修改添加一下内容

请添加图片描述

3.测试

访问www.123.com

请添加图片描述

通过访问nginx的ip访问tomcat,成功!!!!

二、反向代理案例(二)

实现效果

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

  • 访问http://192.168.1.173/edu/ 直接跳转到192.168.1.173:8080
  • 访问http://192.168.1.173:9001/vod/ 直接跳转到192.168.1.173:8081

 1.准备工作

(1)准备两个tomcat服务器,一个8080端口,一个8081端口

(2)创建2个文件夹,分别放入tomcat的压缩包,解压,然后修改其中一个tomcat中的conf中的server.xml文件,将端口改为8081。

(3)在webapps文件下创建分别创建edu、vod文件夹,文件夹中创建a.html测试页面显示端口号。

2.具体配置

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

请添加图片描述

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

location 指令说明

该指令用于匹配URL

语法如下:

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

}

1、= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配

成功,就停止继续向下搜索并立即处理该请求。

2、~:用于表示 uri 包含正则表达式,并且区分大小写。

3、~*:用于表示 uri 包含正则表达式,并且不区分大小写。

4、^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字

符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location

块中的正则 uri 和请求字符串做匹配。

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

最终测试

请添加图片描述请添加图片描述

总结

到此这篇关于Nginx反向代理学习的文章就介绍到这了,更多相关Nginx反向代理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Nginx与浏览器缓存的处理方法

    Nginx与浏览器缓存的处理方法

    这篇文章主要介绍了Nginx与浏览器缓存的处理方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2018-04-04
  • nginx和lvs各自的优劣以及适合的使用环境

    nginx和lvs各自的优劣以及适合的使用环境

    这篇文章主要介绍了nginx和lvs各自的优劣以及适合的使用环境,帮助大家选择符合需求的服务器,感兴趣的朋友可以了解下
    2020-10-10
  • 基于Nginx禁止指定IP、国外IP访问我的网站

    基于Nginx禁止指定IP、国外IP访问我的网站

    这篇文章主要介绍了用Nginx禁止指定IP、国外IP访问我的网站,想要实现这个功能方法有很多种,这里基于 Nginx 的 ngx_http_geoip2 模块来禁止国外 IP 访问网站,需要的朋友可以参考下
    2022-05-05
  • Nginx rewrite跳转应用场景详解

    Nginx rewrite跳转应用场景详解

    这篇文章主要介绍了Nginx rewrite跳转应用场景详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • nginx服务器中access_log日志分析与配置详解

    nginx服务器中access_log日志分析与配置详解

    通过访问日志,可以知晓用户的地址,网站的哪些部分最受欢迎,用户的浏览时间,对大多数用户用的的浏览器做出针对性优化。下面这篇文章主要给大家介绍了关于nginx服务器中access_log日志分析与配置的相关资料,需要的朋友可以参考下。
    2017-12-12
  • 图文详解Nginx多种匹配方式

    图文详解Nginx多种匹配方式

    nginx作为一款高性能的服务器,用途很多,下面这篇文章主要给大家介绍了Nginx多种匹配方式的相关资料,文中通过图文介绍的介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • 利用nginx访问日志如何记录mysql中的用户id详解

    利用nginx访问日志如何记录mysql中的用户id详解

    这篇文章主要给大家介绍了关于利用nginx访问日志如何记录mysql中用户id的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
    2017-07-07
  • 详解Nginx服务器的配置中开启文件Gzip压缩的方法

    详解Nginx服务器的配置中开启文件Gzip压缩的方法

    这篇文章主要介绍了Nginx服务器的配置中开启文件Gzip压缩的方法,可以对CSS和JavaScript以及各种图片等web传输的文件进行压缩,需要的朋友可以参考下
    2016-01-01
  • 通过Nginx实现前端与后端的协同部署

    通过Nginx实现前端与后端的协同部署

    在现代 web 开发中,前端与后端的协同部署是一个关键问题,一个高效的部署策略不仅能提升用户体验,还能简化开发流程,今天,我们就来探讨如何利用 Nginx 实现前端与后端的协同部署,需要的朋友可以参考下
    2025-03-03
  • nginx如何实现配置静态资源服务器及防盗链

    nginx如何实现配置静态资源服务器及防盗链

    这篇文章主要为大家介绍了nginx实现配置静态资源服务器及防盗链步骤详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11

最新评论