Ubuntu12.04上 mod_jk整合 java项目与php项目

php中文网
发布: 2016-06-13 13:07:23
原创
1130人浏览过

Ubuntu12.04下 mod_jk整合 java项目与php项目

由于项目的需要,需要把php和java项目同时采用80端口进行发布,本文采用mod_jk进行不同项目的整合。把原来位于apatch中的php项目与tomcat下运行的java项目进行整合发布。

整合的平台与软件版本:

  1. OS:Ubuntu12.04
  2. tomcat6.0.16
  3. jdk1.7.0_03
  4. apache2.2.22
  5. mod_jk
  6. java项目位于:/home/hkr/project/sd/tomcat-6.0.14/webapps/myjavaproject 中;php项目位于/var/www/myphpproject 中

主要步骤如下:

ChatGPT Website Builder
ChatGPT Website Builder

ChatGPT网站生成器,AI对话快速生成网站

ChatGPT Website Builder 165
查看详情 ChatGPT Website Builder

  1. tomcat6.0.16安装:http://tomcat.apache.org/直接下载解压即可
  2. jdk1.7.0_03安装:参考网络安装jdk的方法(http://blog.csdn.net/ritterliu/article/details/7525412)
  3. apache2.2.22安装:$sudo apt-get install apache2 
  4. mod_jk的安装:$sudo apt-get install libapache2-mod-jk
  5. 配置mod_jk,mod_jk的配置主要有以下三个地方:
    1. 配置workers.properties(连接到Tomcat的文件)sudo gedit /etc/libapache2-mod-jk/workers.properties,配置下面参数:
      • workers.tomcat_home=/home/hkr/project/sd/tomcat-6.0.14#tomcat位置
      • workers.java_home=/usr/lib/jvm/jdk1.7.0_03#java_home位置
      • worker.list=ajp13_worker#自定义命名即可
      • worker.ajp13_worker.port=8009 #用8080会报错
      • worker.ajp13_worker.host=192.168.1.102#本机ip地址
      • worker.ajp13_worker.type=ajp13
      • worker.ajp13_worker.lbfactor=1
      • worker.loadbalancer.type=lb
      • worker.loadbalancer.balance_workers=ajp13_worker
    2. apache2中 apache2.conf配置:$gedit /etc/apache2/apache2.conf,在文件最后空白处加上以下内容:
      • AddType application/x-httpd-php .php .htm .html
        serverName 192.168.1.102

        #JkWorkersFile /etc/libapache2-mod-jk/workers.properties(这个需要注释,加上会出现apache启动时报错: JkWorkersFile only allowed once)
        JkLogFile /var/log/apache2/mod_jk.log  
        JkLogLevel info  
        JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"  
        JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories  
        JkRequestLogFormat "%w %V %T" 
    3. apache2中 default的配置,$gedit /etc/apache2/sites-available/default, 在之前增加:
      • JkMount /*.jsp ajp13_worker(5.1中worker.list的值)
      • JkMount /*.do ajp13_worker
      • ....(其他java项目项目的代理,如果java项目在一个工程下,可以配置JkMount /java项目名/* ajp13_worker,如果配置/* 会把所有php的范围也代理到tomcat中,导致php项目无法访问,因此这里只需要配置tomcat下工程的访问路劲即可
    4. 配置完成后$sudo /etc/init.d/apache2 reload,然后$sudo /etc/init.d/apache2 restart,即可通过ip进行直接访问tomcat和php的项目。
以上内容已在本机virtualBox中测试通过,欢迎交流:)
相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

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