之前进行同一ip多域名的Apache配置,因为有两个php工程,配置如下:
Listen 8080
NameVirtualHost *:80
<VirtualHost *:80>
# ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/gold/
ServerName gmc.shapan-online.com
# ErrorLog logs/dummy-host.example.com-error_log
# CustomLog logs/dummy-host.example.com-access_log commo
HostNameLookups off
</VirtualHost>
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /var/www/html/upload/
ServerName forum.shapan-online.com
HostNameLookups off
</VirtualHost>
现在公司又突然让我加个javaweb,于是就就配置了tomcat了,然后修改了sever.xml文件
<Host name="www.shapan-online.com" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
<Context docBase="sand" path="" reloadable="true"/>
</Host>
由于半路出家,原理不是很清楚,本以为,tomcat和Apache同时监听80端口,哪个url匹配到就让谁来执行工程呢,好像不是这样。
查了下资料,有几种说法,也不知道那种好,求配置过的JJGG来指导下,稍微带一点说明更好了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
没法同时监听80的,冲突的。
所以要配置不同的端口
apache监听8080端口+2个网站
tomcat监听8181端口+1个网站
网站访问入口用nginx做代理,nginx监听80端口+3个网站对应的域名。
当对应的域名被访问时,是请求到的nginx,由nginx再将请求根据域名转发到apache或者tomcat。