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(PHP/fastcgi)的PATH_INFO问题

    Nginx(PHP/fastcgi)的PATH_INFO问题

    PATH_INFO是一个CGI 1.1的标准,经常用来做为传参载体. 比如, 我们可以使用PATH_INFO来代替Rewrite来实现伪静态页面, 另外不少PHP框架也使用PATH_INFO来作为路由载体.
    2011-08-08
  • Nginx下支持Thinkphp URL Rewrite的配置示例

    Nginx下支持Thinkphp URL Rewrite的配置示例

    这篇文章主要介绍了Nginx下支持Thinkphp URL Rewrite的配置示例,本文直接给出配置示例,需要的朋友可以参考下
    2015-07-07
  • Nginx tp3.2.3 404问题解决方案

    Nginx tp3.2.3 404问题解决方案

    这篇文章主要介绍了Nginx tp3.2.3 404问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12
  • 一文搞懂Nginx限流(简单实现)

    一文搞懂Nginx限流(简单实现)

    这篇文章主要介绍了一文搞懂Nginx限流(简单实现),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • nginx利用referer指令实现防盗链配置

    nginx利用referer指令实现防盗链配置

    nginx模块ngx_http_referer_module通常用于阻挡来源非法的域名请求,我们应该牢记。下面这篇文章主要介绍了nginx利用referer指令实现防盗链配置的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-03-03
  • Nginx服务器中关于SSL的安全配置详解

    Nginx服务器中关于SSL的安全配置详解

    这篇文章主要介绍了Nginx服务器中关于SSL的安全配置详解,2014年曝出的SSL安全漏洞无疑为整个业界带来了巨大震动,本文便对此给出相关安全维护方法,需要的朋友可以参考下
    2015-06-06
  • Nginx中反向代理+负载均衡+服务器宕机解决办法详解

    Nginx中反向代理+负载均衡+服务器宕机解决办法详解

    这篇文章主要介绍了Nginx中反向代理+负载均衡+服务器宕机解决办法详解,反向代理保证系统安全,不暴露服务器IP,利用nginx服务器,利用内网ip进行访问,避免出现攻击服务器的情况,需要的朋友可以参考下
    2024-01-01
  • nginx配置wss协议的实现

    nginx配置wss协议的实现

    本文主要介绍了nginx配置wss协议的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Nginx修改默认80端口(解决跟Tomcat的端口冲突)

    Nginx修改默认80端口(解决跟Tomcat的端口冲突)

    本文主要介绍了Nginx修改默认80端口(解决跟Tomcat的端口冲突),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Nginx Rewrite模块应用的几种场景

    Nginx Rewrite模块应用的几种场景

    这篇文章主要介绍了Nginx Rewrite模块应用的几种场景,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11

最新评论