php - 同一台服务器运行多个http服务如何实现?
高洛峰
高洛峰 2017-04-10 17:03:56
[PHP讨论组]

1、默认环境apache,监听80端口,用来服务php环境。
例如访问www.abc.com时,访问php目录
2、tomcat和子域名解析应该如何配置,使访问子域名时访问java web 目录
例如访问example.abc.com时,访问java web目录。

求解答

重点声明java和php分别要用tomcat和apache分别来解析,不是apache下配置虚拟目录和域名可以解决的

修改问题

既然大家都回答用反向代理,那么求具体反向代理的实现方法,最通用的是哪一种?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(6)
迷茫

因为两个程序不能同时监听80端口,所以你直接开启两个程序是行不通的。解决方法其实很简单:只让一个程序监听80端口。
在你这种Apache和Tomcat的搭配下,可以把网站都挂在Apache下,对于需要使用Java的网站,通过Apache反向代理到Tomcat上,这样Tomcat就能不占用80端口,而外部访问者看了,也能正常访问所有的网站。
详细的方法你可以查阅一些Apache反向代理Tomcat的技术文档。

迷茫

绑定不同域名啊,然后转发

<VirtualHost 127.0.0.1>
    DocumentRoot "D:/web/www"
    ServerName www.test.com
    <Directory "D:/web/www">
        Options FollowSymLinks Indexes
        AllowOverride All
        Order deny,allow
        Allow from 127.0.0.1
        Deny from all
        Require all granted
    </Directory>
</VirtualHost>
<VirtualHost 127.0.0.1>
    DocumentRoot "D:/web/weiphp3.0_beta/weiphp"
    ServerName www.wei.com
    <Directory "D:/web/weiphp3.0_beta/weiphp">
        Options FollowSymLinks Indexes
        AllowOverride All
        Order deny,allow
        Allow from 127.0.0.1
        Deny from all
        Require all granted
    </Directory>
</VirtualHost>
<VirtualHost 127.0.0.1>
    DocumentRoot "D:/web/wx2share"
    ServerName www.tbgo.com
    <Directory "D:/web/wx2share">
        Options FollowSymLinks Indexes
        AllowOverride All
        Order deny,allow
        Allow from 127.0.0.1
        Deny from all
        Require all granted
    </Directory>
</VirtualHost>
黄舟

运行多个http服务是什么意思呢?多个服务器吗

伊谢尔伦

用apache代理转发是最简单的方式。
长远来看最标准的是再搭建一个服务器来做路由,也就是长说的企业服务总线esb。

迷茫

搭建一个nginx 反向代理,代理的端口是80, 不同的服务的请求通过代理配置进行转发到对应的真正的非80端口的服务上去

伊谢尔伦

搜索
nginx

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号