• 3. Nginx配置实例-反向代理


    本章内容:

     准备工作

        ①安装Tomcat

        ②对外开放访问的端口(如果防火墙已开放,此步可忽略)

        ③在windows系统中通过浏览器访问Tomcat服务器


      反向代理效果:打开浏览器,在浏览器地址栏输入地址www.123.com,跳转到linux系统Tomcat主页面中

    一、安装Tomcat

    1. wget 下载tomcat安装包

    wget url

    2. 复制两份放到两个文件夹中

    cp apache-tomcat-8.5.31.tar.gz  ../tomcat8080
    cp apache-tomcat-8.5.31.tar.gz  ../tomcat8081

    3. 解压

    tar -xvf apache-tomcat-8.5.31.tar.gz

    4. 修改配置文件 /tomcat8081/apache-tomcat-8.5.31/conf/server.xml,修改端口号为8081

     

     5. 启动Tomcat:进入bin目录-->这里使用的是Centos默认JDK配置

    ./startup.sh  //开启
    ./shutdown.sh  //关闭

    6. 访问效果

    二、防火墙

    如果端口号不能访问,则需要通过防火墙开放端口。

    //查看已经开放的端口号
    firewall-cmd --list-all
    
    //对外开放访问的端口
    firewall-cmd --add-port=8080/tcp --permanent
    //重启防火墙
    firewall-cmd –reload
    
    //其他防火墙扩展
    firewall-cmd --state                           ##查看防火墙状态,是否是running
    firewall-cmd --reload                          ##重新载入配置,比如添加规则之后,需要执行此命令
    firewall-cmd --get-zones                       ##列出支持的zone
    firewall-cmd --get-services                    ##列出支持的服务,在列表中的服务是放行的
    firewall-cmd --query-service ftp               ##查看ftp服务是否支持,返回yes或者no
    firewall-cmd --add-service=ftp                 ##临时开放ftp服务
    firewall-cmd --add-service=ftp --permanent     ##永久开放ftp服务
    firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服务
    firewall-cmd --add-port=80/tcp --permanent     ##永久添加80端口 
    iptables -L -n                                 ##查看规则,这个命令是和iptables的相同的

    三、反向代理-1

    【实验目标】浏览器访问www.123.com 跳转到8080端口Tomcat服务器

     1. windows的host文件中配置域名和IP地址的映射

     2. 修改Nginx配置文件

      如下配置,我们监听 80 端口,访问域名为 www.123.com,不加端口号时默认为 80 端口,故访问该域名时会跳转到 127.0.0.1:8080 路径上。在浏览器端输入 www.123.com 结果如下:

    四、反向代理-2

    【实验目标】使用 nginx 反向代理,根据访问的路径跳转到不同端口的服务中,nginx 监听端口为 9001,访问 http://122.*.*.*:9001/qq/ 直接跳转到 127.0.0.1:8080,访问 http:// 122.*.*.*:9001/glh/ 直接跳转到 127.0.0.1:8081。

    1. 在两个tomcat文件下分别创建 /qq/qq.html    /glh/glh.html 用以区分两个汤姆猫。

    2.修改Nginx配置文件,增加一个server模块,并重启Nginx。

    【location指令说明】语法如下:

    location (= | ~ | ~* | ^~)  uri {
    
    }

      ①  = :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。

      ②  ~:用于表示 uri 包含正则表达式,并且区分大小写。
      ③  ~*:用于表示 uri 包含正则表达式,并且不区分大小写。
      ④  ^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字
      符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location块中的正则 uri 和请求字符串做匹配。
      注意:如果 uri 包含正则表达式,则必须要有 ~ 或者 ~* 标识。

    3. 效果展示:通过Nginx端口访问到不同的服务器

     

  • 相关阅读:
    webapi支持session
    webapi返回数据同时支持xml与json
    webapi权限控制
    Asp.net 将js文件打包进dll 方法
    All Media to FLV asp.net在线视频自动转换并截图调试成功!
    未能从程序集“System.ServiceModel
    [javascript]浮动广告
    [python]multi thread tcp connect port scanner
    [vc]让你Y的用YY
    [python]扫描网站后台脚本
  • 原文地址:https://www.cnblogs.com/qmillet/p/12121443.html
Copyright © 2020-2023  润新知