Ubuntu12.04上 mod_jk整合 java項目與php項目

來源:互聯網
上載者:User
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 中

主要步驟如下:

  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中測試通過,歡迎交流:)

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.