• Apache和Tomcat公用80端口


    Apache和Tomcat公用80端口,原理主要利用apache的代理。

    需求:服务器已经存在了很多PHP项目,现在我新写的javaWeb项目要部署到同一服务器中新安装的Tomcat里面去,并且可以用域名进行访问。

               因为用域名再加8080端口访问有点low,所以就去做了如下几步改变:

    第一步:启用apache的代理模块(修改httpd.conf配置)

    1.首先我在Apacheconf目录下面找到httpd.conf文件,

    2.打开该文件依次找到以下几行代码(它们可能不是挨着的,用Ctrl+F):

    #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 

    3.然后把每行代码前面的“#”号去掉,这样就打开了apache的代理模块了

    第二步:然后建立一个虚拟主机

    还是在httpd.conf添加以下标签(找个自己觉得舒服的位置.0.0)

    <VirtualHost *:80> 
       ServerName www.a.com 
       ProxyPass / http://www.a.com:8080/ 
       ProxyPassReverse / http://www.a.com:8080/
    </VirtualHost> 

    www.a.com 处是你的域名,localhost,IP都可以

    注意:

    tomcat的server.xml文件里:

    1.还是用原来的8080端口

    2.Host标签中的要加上Context标签,里面写好项目名

    <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
        <Context path="" docBase="项目名" debug="0" reloadable="true" caseSensitive="true" />
    </Host>

     

    其他办法,开拓思维:

    其他软件共用80端口也是同理的,比如:apache和IIS两种软件,

    实在不行,还有其他办法:

    1.nginx也可以同理实现,缺点:如果安装nginx之前,服务器就有了其他项目,那么需要删除掉站点,安装好了再重新建立站点,怕不是在逗我玩?

    2.IIS下建立站点?这种方法只是写一个html,我试了许久,不知道这个htm该放在哪里,所以没成功

    3.有钱人,再买个服务器,哈哈哈

    感谢:

    解决方法灵感来源于这两篇文章

    apache和tomcat公用80端口

    域名带端口的解决办法

  • 相关阅读:
    Elasticsearch
    Docker
    Python 目录
    淘宝
    MyBatis
    Docker 安装ubuntu服务器
    goodrain云平台 mysql主从同步应用创建
    flask入门
    virtualenv
    进程 线程(二)
  • 原文地址:https://www.cnblogs.com/HelloXTF/p/11983283.html
Copyright © 2020-2023  润新知