Ubuntu12.04上 mod_jk整合 java项目与php项目
Ubuntu12.04下 mod_jk整合 java项目与php项目
由于项目的需要,需要把php和java项目同时采用80端口进行发布,本文采用mod_jk进行不同项目的整合。把原来位于apatch中的php项目与tomcat下运行的java项目进行整合发布。
整合的平台与软件版本:
- OS:Ubuntu12.04
- tomcat6.0.16
- jdk1.7.0_03
- apache2.2.22
- mod_jk
- java项目位于:/home/hkr/project/sd/tomcat-6.0.14/webapps/myjavaproject 中;php项目位于/var/www/myphpproject 中
主要步骤如下:
- tomcat6.0.16安装:http://tomcat.apache.org/直接下载解压即可
- jdk1.7.0_03安装:参考网络安装jdk的方法(http://blog.csdn.net/ritterliu/article/details/7525412)
- apache2.2.22安装:$sudo apt-get install apache2
- mod_jk的安装:$sudo apt-get install libapache2-mod-jk
-
配置mod_jk,mod_jk的配置主要有以下三个地方:
-
配置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
-
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"
- AddType application/x-httpd-php .php .htm .html
- 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下工程的访问路劲即可)
- 配置完成后$sudo /etc/init.d/apache2 reload,然后$sudo /etc/init.d/apache2 restart,即可通过ip进行直接访问tomcat和php的项目。
-
配置workers.properties(连接到Tomcat的文件)sudo
gedit /etc/libapache2-mod-jk/workers.properties,配置下面参数:

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

要在 Apache 中設置 CGI 目錄,需要執行以下步驟:創建 CGI 目錄,如 "cgi-bin",並授予 Apache 寫入權限。在 Apache 配置文件中添加 "ScriptAlias" 指令塊,將 CGI 目錄映射到 "/cgi-bin" URL。重啟 Apache。

Apache 連接數據庫需要以下步驟:安裝數據庫驅動程序。配置 web.xml 文件以創建連接池。創建 JDBC 數據源,指定連接設置。從 Java 代碼中使用 JDBC API 訪問數據庫,包括獲取連接、創建語句、綁定參數、執行查詢或更新以及處理結果。

有 3 種方法可在 Apache 服務器上查看版本:通過命令行(apachectl -v 或 apache2ctl -v)、檢查服務器狀態頁(http://<服務器IP或域名>/server-status)或查看 Apache 配置文件(ServerVersion: Apache/<版本號>)。

當 Apache 80 端口被佔用時,解決方法如下:找出佔用該端口的進程並關閉它。檢查防火牆設置以確保 Apache 未被阻止。如果以上方法無效,請重新配置 Apache 使用不同的端口。重啟 Apache 服務。

如何查看 Apache 版本?啟動 Apache 服務器:使用 sudo service apache2 start 啟動服務器。查看版本號:使用以下方法之一查看版本:命令行:運行 apache2 -v 命令。服務器狀態頁面:在 Web 瀏覽器中訪問 Apache 服務器的默認端口(通常為 80),版本信息顯示在頁面底部。

Apache 無法啟動,原因可能有以下幾點:配置文件語法錯誤。與其他應用程序端口衝突。權限問題。內存不足。進程死鎖。守護進程故障。 SELinux 權限問題。防火牆問題。軟件衝突。

如何在 Apache 中配置 Zend?在 Apache Web 服務器中配置 Zend Framework 的步驟如下:安裝 Zend Framework 並解壓到 Web 服務器目錄中。創建 .htaccess 文件。創建 Zend 應用程序目錄並添加 index.php 文件。配置 Zend 應用程序(application.ini)。重新啟動 Apache Web 服務器。

要從 Apache 中刪除多餘的 ServerName 指令,可以採取以下步驟:識別並刪除多餘的 ServerName 指令。重新啟動 Apache 使更改生效。檢查配置文件驗證更改。測試服務器確保問題已解決。
