本來想自己整理一篇Apache與Tomcat的整合文檔的.在網上偶然發現一篇文章,編寫風格與自己十分相似。寫的比較詳細。我很喜歡。看後自己就沒再寫下去的心情了,就毫不客氣的轉載下來。以下爲文章出處:
整合apache+tomcat+mysql 實現動靜分離
具體實驗通過部署一個java論壇去測試tomcat和mysql,並通過jk2模塊使apache和tomcat和mysql整合在一起使用
基本思路或步驟:
1.安裝apache和mysql
2.安裝tomcat,安裝tomcat先需要安裝jdk
3.先在tomcat上部署java論壇 (這裏要用mysql數據庫,所以還要裝一個連接mysql的驅動)
4.整合apache和tomcat,(這裏要裝一個jk的模塊,用來使apache和tomcat整合起來)
一、安裝tomcat
1 、安裝jdk
[root@localhost tomcat_package]#chmod +x jdk-1_5_0_16-linux-i586.bin 先給加上執行權限
[root@localhost tomcat_package]# ./jdk-1_5_0_16-linux-i586.bin 執行
[root@localhost tomcat_package]# mv jdk1.5.0 _16/ /usr/java 移動並重命名
2、安裝tomcat
[root@localhost tomcat_package]# tar zxvf apache-tomcat-6.0.16 .tar.gz
[root@localhost tomcat_package]# mv apache-tomcat-6.0.16 /usr/local/tomcat6.0 移動並重命名
[root@localhost bin]# export JAVA_HOME=/usr/java/ 設置環境變量
[root@localhost bin]# echo "export JAVA_HOME=/usr/java/ " >> /etc/bashrc 把變量寫入文件
[root@localhost bin]# /usr/local/tomcat6.0/bin/startup.sh 啓動tomcat
Using CATALINA_BASE: /usr/local/tomcat6.0
Using CATALINA_HOME: /usr/local/tomcat6.0
Using CATALINA_TMPDIR: /usr/local/tomcat6.0/temp
Using JRE_HOME: /usr/java/
3.測試tomcat是否正常
netstat -ntlp | grep 8080
ps -e |grep java
http://192.168.1.254:8080/
**一些對tomcat的其它設置**
讓tomcat默認監聽80端口,方便訪問。
[root@localhost conf]# vim /usr/local/tomcat6.0/conf/server.xml
8080--->80
明確瞭解tomcat的站點根目錄是/usr/local/tomcat6.0/webapps目錄(等同於apache的/var/www/html)
添加管理tomcat的用戶和密碼
[root@localhost conf]# vim /usr/local/tomcat6.0/conf/tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<user username="tomcat" password="tomcat" roles="manager"/>
</tomcat-users>
[root@localhost conf]# /usr/local/tomcat6.0/bin/shutdown.sh 關閉tomcat
Using CATALINA_BASE: /usr/local/tomcat6.0
Using CATALINA_HOME: /usr/local/tomcat6.0
Using CATALINA_TMPDIR: /usr/local/tomcat6.0/temp
Using JRE_HOME: /usr/java/
重啓 tomcat服務並測試更改是否生效
二,部屬論壇
4、部署jive論壇
方法一:直接COPY到/usr/local/tomcat6.0/webapps
方法二:製作成war文件,在web界面直接deploy
cd /usr/local/src/jive
/usr/java/bin/jar cvf /usr/local/jive.war .
4.1 解壓jive包並把它移動到tomcat的目錄下:
[root@localhost ~]# tar zxvf JiveForumsPro4_crack.tar.gz
[root@localhost tomcat_package]# cp -r jive/ /usr/local/tomcat6.0/webapps/
[root@localhost jiveHome]# pwd
/usr/local/tomcat6.0/webapps/jive/jiveHome
來到安裝界面,進行設置。連接數據庫,要安裝Mysql,安裝mysql連接驅動程序
http://192.168.1.254:8080/--tomcatmanager--輸入用戶名密碼----選擇jive目錄---正常的這裏要填寫正確的家目錄(就是tomcat的裏jive所在的目錄、還有就是要註冊號反正測試隨便打幾個字母就行)---continue---在下一步(默認就行不用選擇)--這裏選擇數據庫---先擇mysql(如果裝好mysql驅動則在下面把剛纔授權的庫填上,並把用戶名密碼都寫上)--下一步----
這裏沒有選擇建好庫也沒裝驅動,所以下面第五步就是裝驅動並建庫
5.安裝mysql數據庫
因爲jive論壇要mysql數據庫的支持,所以這裏要有一個mysql數據庫,並且還要爲jive建一個庫,並導入一些數據庫要用到的表,同時還的授權給一個jive論壇的用戶可以使用此庫。同時還要裝一個mysql驅動器。因爲這裏只要一個庫,不管是源碼包還是rpm包都一樣,只是在一些小地方有的不同注意。我們這裏就不裝包啦,就用以前源碼包的LAMP環境裏的apache和mysql所安裝完的環境。具體的請參考前一篇lamp.這裏只說一下mysql基本步驟。
裝包--->初始化庫--->更改密碼(當然可以不改)-->啓動數據庫--->建庫--->授權--->導入數據--->裝mysql驅動-->完成。
5.1 建庫並給授權
mysql> create database jivedb; 建庫
mysql> grant all on jivedb.* to jiveuser@localhost identified by '123'; 授權
5.2 從jive論壇的安裝文件裏,導數據表到mysql數據庫的jivedb庫中
[root@localhost database]# pwd 數據所在目錄
/usr/local/tomcat6.0/webapps/jive/database
[root@localhost database]# mysql jivedb < jive_forums_mysql.sql 導入
[root@localhost database]# mysql -u root -p123 jivedb < jive_forums_mysql.sql 導入的第二種方法
[root@localhost database]# ls /var/lib/mysql/jivedb/ 查看是否導入數據
5.3 安裝mysql驅動
[root@localhost tomcat_package]# tar zxvf mysql-connector-java-3.1.14 .tar.gz 解壓包
[root@localhost tomcat_package]# cp mysql-connector-java-3.1.14 /mysql-connector-java-3.1.14-bin.jar /usr/local/tomcat6.0/lib/ 拷貝驅動到tomcat裏
重啓tomcat和mysql
============
mysql> show databases;
use jivedb;
show tables;
create database jivedb;
==============
這裏在接着剛在的畫面繼續部屬完,到最後參在8080端口上直接解析jive論壇,就是http://192.168.1.254:8080/jive 可以直接出來論壇。。有問題參考下面的截圖。
三、整合apache和tomcat
6. 整合apache+tomcat
安裝apache,啓動apache ,生成jk2模塊,讓apache LoadModule . 調用 tomcat的模塊
6.1.解壓JK2包
[root@localhost tomcat_package]# tar zxvf jakarta-tomcat-connectors-jk2-2.0.4 -src.tar.gz
[root@localhost tomcat_package]# mv jakarta-tomcat-connectors-jk2-2.0.4 -src /usr/local/tomcat-connect 移動並重命名包
[root@localhost native2]# pwd
/usr/local/tomcat-connect/jk/native2 進入到這個目錄下面來
6.2.編譯jk2包,並把編譯好的包,拷貝到apache的modules下
[root@stu234 native2]# ./configure --help | grep tomcat 查看幫助
--with-tomcat33=DIR Location of tomcat33
--with-tomcat40=DIR Location of tomcat40
--with-tomcat41=DIR Location of tomcat41
[root@stu234 native2]# ./configure --help | grep apxs
--with-apxs=FILE location of apxs for Apache 1.3
--with-apxs2=FILE location of apxs for Apache 2.0
編譯
[root@localhost native2]# ./configure --with-apxs2=/usr/local/apache2/bin/apxs 配置包
[root@localhost native2]# make 編譯包
[root@localhost apache2]# pwd
/usr/local/tomcat-connect/jk/build/jk2/apache2
[root@localhost apache2]# cp mod_jk2.so /usr/local/apache2/modules/ 複製剛編譯好的模塊
6.3 在apache的主配置文件下添加模塊
[root@localhost apache2]# vim /usr/locat/apache2/conf/httpd.conf 編寫apache的主配置文件
[root@localhost apache2]# grep jk2 /usr/locat/apache2/conf/httpd.conf 剛添加的這一段話
LoadModule jk2_module modules/mod_jk2.so
如果是rpm包裝的話是下面的步驟
yum install http-devel
which apxs
/usr/sbin/apxs
[root@localhost native2]# ./configure --with-apxs2=/usr/sbin/apxs
[root@localhost apache2]# pwd
/usr/local/tomcat-connect/jk/build/jk2/apache2
[root@localhost apache2]# cp mod_jk2.so /etc/httpd/modules/
[root@localhost apache2]# vim /etc/httpd/conf/httpd.conf
[root@localhost apache2]# grep jk2 /etc/httpd/conf/httpd.conf
LoadModule jk2_module modules/mod_jk2.so
*************
6.4 寫配置文件定義什麼情況下通過jk2模塊找tomcat
[root@localhost jk]# cp /usr/local/tomcat-connect/jk/conf/workers2.properties /usr/locat/apache2/conf/ 複製模板到apache的配置文件目錄
[root@localhost jk]# vim /etc/httpd/conf/workers2.properties 編輯jk2的配置文件
[uri:/jive/*]
info=map the tomcat
[uri:/manager/*]
info=map the tomcat
[uri:/*.jsp]
info=map the tomcat
service httpd restart
其它:如果是另一種部屬方式war的方式,使用下面的命令。
+++++++++++++++++====\
[root@stu234 jive]# pwd
/usr/local/src/tomcat_package/jive
[root@stu234 jive]# /usr/local/src/tomcat_package/jdk1.5.0 _16/bin/jar cvf jive2.war .
四.測試
通過整合apache 現在直接輸入http://192.168.1.254/jive 就可以直接出來論壇,這樣算是正常完成。