美文网首页
httpd(apache)实现端口映射(多域名或者多端口映射)

httpd(apache)实现端口映射(多域名或者多端口映射)

作者: 郡东院士 | 来源:发表于2021-06-19 16:33 被阅读0次

    httpd(apache)实现端口映射

    也可实现Apache配置多域名或者多端口映射(此文档不包含此部分内容)


    1、对外只公布一个端口8090。
    2、实现同一个8090端口,跳转到内网的8092和8091两个tomcat应用对应的端口。
    3、外部访问http://外网IP:8090/cminfo 对应内部应用地址为(端口8092): http://127.0.0.1:8092/cminfo/
    外部访问http://外网IP:8090/ 对应内部应用地址为(端口8091):http://127.0.0.1:8091/

    注:此内部地址为:两个tomcat部署了两个应用,tomcat应用的端口不相同。


    一、找到conf/httpd.conf配置文件,去掉以列四行代码前的#注释,让代码生效

    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_connect_module modules/mod_proxy_connect.so
    LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
    

    二、在conf/httpd.conf配置文件最后面,增加以下代码(注意虚拟目录/cminfo,这句必须在/根目录的前面)

    <VirtualHost *:8090>
     ServerName  localhost
     ServerAlias localhost
     ProxyPreserveHost On
     ProxyRequests Off
    
     #有虚拟目录的顺序必须在前面。
     ProxyPass /cminfo http://127.0.0.1:8092/cminfo/
     ProxyPassReverse /cminfo http://127.0.0.1:8092/cminfo/
    
     #没虚拟目录的顺序在后面,否则,程序以为是本站点下的文件夹或者虚拟目录。
     ProxyPass / http://127.0.0.1:8091/
     ProxyPassReverse /   http://127.0.0.1:8091/
    
    </VirtualHost>
    

    或者

    <VirtualHost *:8090>
       ServerName  localhost  #可配置域名如xizhi01.com
       ServerAlias localhost  #可配置域名如xizhi01.com
       ProxyPreserveHost On
       ProxyRequests Off
       #有虚拟目录的顺序必须在前面。
       ProxyPass /cminfo http://127.0.0.1:8092/cminfo/
       ProxyPassReverse /cminfo http://127.0.0.1:8092/cminfo/
    </VirtualHost>
    
    <VirtualHost *:8090>
       ServerName  localhost  #可配置域名如xizhi02.com
       ServerAlias localhost  #可配置域名如xizhi02.com
       ProxyPreserveHost On
       ProxyRequests Off
       #没虚拟目录的顺序在后面,否则,程序以为是本站点下的文件夹或者虚拟目录。
       ProxyPass / http://127.0.0.1:8091/
       ProxyPassReverse /  http://127.0.0.1:8091/
    </VirtualHost>
    

    三、浏览器中测试效果:
    http://外网IP:8090/cminfo ——> 对应网站A
    http://外网IP:8090/ ——> 对应网站B

    一切OK,祝好运。

    相关文章

      网友评论

          本文标题:httpd(apache)实现端口映射(多域名或者多端口映射)

          本文链接:https://www.haomeiwen.com/subject/cccdyltx.html