各路神仙,
见贴请留步。
本人小白级,想利用Apache+Tomcat+JK 搭个多域名网站共享80端口的环境。 来实现这台机器放多个java网站的目的,请大神们指教。
希望有详细点的操作教程,先谢了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
为了帮助您在一台服务器上使用Apache Tomcat JK模块配置多域名网站共享80端口,实现托管多个Java Web应用的目的,我将根据您的需求整理出详细的步骤指南。请注意,这里主要参考了Apache配置多域名访问不同网站的文档以及手动部署Java Web环境(Tomcat)的部分内容,并结合JK模块的配置来达成目标。
配置mod_jk: 编辑Apache的配置文件(通常位于/etc/httpd/conf.d/mod_jk.conf
或/etc/apache2/mods-available/jk.conf
),添加如下内容以启用mod_jk并指定worker.properties文件位置:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile /etc/httpd/conf.d/workers.properties
JkMount /*.jsp ajp13_worker
编辑workers.properties:在之前提到的路径下创建或修改workers.properties
文件,定义Tomcat worker:
worker.list=ajp13_worker
worker.ajp13_worker.type=ajp13
worker.ajp13_worker.host=localhost
worker.ajp13_worker.port=8009
创建虚拟主机:在Apache的配置文件(如httpd.conf
或sites-available
目录下的对应文件)中,为每个域名创建一个VirtualHost条目,示例如下:
<VirtualHost *:80>
ServerName test01.example.com
DocumentRoot "/var/www/html/test01"
JkMount /* ajp13_worker
</VirtualHost>
<VirtualHost *:80>
ServerName test02.example.com
DocumentRoot "/var/www/html/test02"
JkMount /* ajp13_worker
</VirtualHost>
确保DocumentRoot指向您的Java Web应用的WebContent目录或相应的符号链接。
重启Apache与Tomcat服务:使配置生效。
sudo systemctl restart apache2
sudo systemctl restart tomcat
JkMount
指令,精确匹配您希望由Tomcat处理的URL路径。test01.example.com
和test02.example.com
,确认每个域名都能加载对应的Java Web应用。通过上述步骤,您可以成功地在单台服务器上配置多域名网站,共享80端口,且每个域名都指向独立的Java Web应用。如果遇到问题,请检查日志文件(如Apache的error.log
和Tomcat的catalina.out
)以获取错误信息进行调试。