0


nginx反向代理配置

文章目录

1.反向代理介绍

客户端对代理是无感知的,只需将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址

2. 第一个实例

2.1 实现效果

浏览器访问

www.123.com

,访问nginx的地址,跳到tomcat

2.2 准备工作

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

下载tomcat安装包

wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.70/bin/apache-tomcat-8.5.70.tar.gz

解压

tar -zxvf apache-tomcat-8.5.70.tar.gz

进入tomcat的bin目录,启动tomcat

cd bin
./startup.sh

对外开放访问的端口

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

(2) 修改主机映射

在hosts文件中加上映射


PS:域名解析规则:主机先找到hosts文件中的映射,如果没有,就找网络上DNS

(3) 修改nginx配置

(4) 最终效果

3. 第二个实例

3.1 实现效果

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

3.2.准备工作

3.2.1 准备两个tomcat

(1)修改service.xml配置文件



(2)开放8081端口

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

(3)重启防火墙

service firewalld restart

3.2.2 创建文件夹和测试页面

在webapps下创建edu文件夹,放入html文件
3.3 具体配置
(1)找到nginx配置文件,进行反向代理配置

    server {
        listen       9001;
        server_name  172.29.34.23;

        location ~ /edu {
            proxy_pass http://127.0.0.1:8080;
        }
        location ~ /vod {
            proxy_pass http://127.0.0.1:8081;
        }
    }

(2)开放9001端口
(3)重启nginx

3.2.3 测试结果


附:location指令说明

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

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

本文转载自: https://blog.csdn.net/weixin_44213835/article/details/129477683
版权归原作者 你似sei啊a 所有, 如有侵权,请联系我们删除。

“nginx反向代理配置”的评论:

还没有评论