RedHatAS4下Apache2+MySQL+Php+Tomcat整合及虛擬主機配置

 作者:楊文軍
一、本文所用到的軟件:
Sun的JDK:j2sdk-1_4_2_09-linux-i586.bin
Apache2.0.54:httpd-2.0.54.tar.gz
MySQL:mysql-standard-4.1.14-pc-linux-gnu-i686.tar.gz
Php:php-4.4.2.tar.gz
Tomcat:jakarta-tomcat-5.0.28.tar.gz
jakarta-tomcat-connectors-jk2:jakarta-tomcat-connectors-jk2-2.0.4-src.tar.gz
本文中所有軟件安裝在/home/www目錄中。
注:文中紅色字體爲輸入的命令行。

二、軟件安裝
1、首先安裝Sun的JDK

[root@yangwenjun www]# ./j2sdk-1_4_2_09-linux-i586.bin

安裝後會生成文件夾j2sdk1.4.2_09,將文件夾j2sdk1.4.2_09移動(或複製)到你想要存放的JDK的位置,本文中是放在/home/www/j2sdk1.4.2_09
接下來編輯/etc/profile文件加入JDK環境變量,在文件末尾處加入以下內容:

[root@yangwenjun www]# vi /etc/profile

export JAVA_HOME=/home/www/j2sdk1.4.2_09
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
:$JAVA_HOME/lib/mysql-connector-java-3.2.0.jar:$JAVA_HOME/lib/classes12.jar
export PATH=$PATH:$JAVA_HOME/bin
export JRE_HOME=$JAVA_HOME/jre

[root@yangwenjun etc]# source profile
[root@yangwenjun etc]# set

在這裏你可以看見所有的環境變量。
[root@yangwenjun etc]# java –version
如果JDK配置正確的話,運行上面的命令將會出現JDK的相應版本。

2、安裝MySQL

[root@yangwenjun www]# tar xzfv mysql-standard-4.1.14-pc-linux-gnu-i686.tar.gz
[root@yangwenjun www]# cd mysql-standard-4.1.14-pc-linux-gnu-i686
[root@yangwenjun mysql-standard-4.1.14-pc-linux-gnu-i686]# more INSTALL-BINARY

認真的閱讀一下這個文檔,就會發現MySQL很容易安裝

[root@yangwenjun mysql-standard-4.1.14-pc-linux-gnu-i686]# groupadd mysql
[root@yangwenjun mysql-standard-4.1.14-pc-linux-gnu-i686]# useradd -g mysql mysql
[root@yangwenjun www]# mv mysql-standard-4.1.14-pc-linux-gnu-i686 /home/www/mysql     
[root@yangwenjun www]# cd /home/www/mysql
[root@yangwenjun mysql]# scripts/mysql_install_db --user=mysql
[root@yangwenjun mysql]# chown -R root .
[root@yangwenjun mysql]# chown -R mysql data
[root@yangwenjun mysql]# chgrp -R mysql .
[root@yangwenjun mysql]# bin/mysqld_safe --user=mysql &

這樣MySQL就已經啓動了,下面爲root用戶設置密碼:

[root@yangwenjun mysql]# ./bin/mysqladmin -u root password ‘password’
[root@yangwenjun mysql]# ./bin/mysqladmin -u root -h localhost.localdomain password 'pass'
[root@yangwenjun mysql]# ./bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or /g.
Your MySQL connection id is 5 to server version: 4.1.14-standard

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

mysql>

[root@yangwenjun mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@yangwenjun mysql]# vi /etc/init.d/mysql
修改如下定義使其內容爲:
basedir=/home/www/mysql
datadir=/home/www/mysql/data
[root@yangwenjun mysql]# chkconfig --level 345 mysql on
[root@yangwenjun mysql]# service mysql restart
Shutting down MySQL...                                     [  OK  ]
Starting MySQL                                                  [  OK  ]
[root@yangwenjun mysql]#

到這裏MySQL就裝好了。


3、安裝Apache
[root@yangwenjun httpd-2.0.54]# cd /home/bruce/software/www/httpd-2.0.54
[root@yangwenjun httpd-2.0.54]# ./configure --prefix=/home/www/apache --enable-module=most --enable-shared=max --enable-so
[root@yangwenjun httpd-2.0.54]# make
[root@yangwenjun httpd-2.0.54]# make install

創建一個httpd啓動腳本,內容如下:
[root@yangwenjun init.d]# vi httpd
#!/bin/bash
# Startup script for the Apache Web Server
# 包含函數庫
. /etc/rc.d/init.d/functions
# 獲取網絡配置
. /etc/sysconfig/network
# 檢測 NETWORKING 是否爲 "yes"
[ "${NETWORKING}" = "no" ] && exit 0
# apache安裝目錄
APACHE=/home/www/apache
# 啓動服務函數
start() {
echo $"Starting httpd service: "
$APACHE/bin/apachectl start
RETVAL=$?
echo
}
# 關閉服務函數
stop() {
echo $"Stopping httpd service: "
$APACHE/bin/apachectl stop
RETVAL=$?
echo
}
# 根據參數選擇調用
case "$1" in
  start)
start
;;
  stop)
stop
;;
  restart)
stop
start
;;
  *)
echo $"Usage: $0 start|stop|restart"
exit 1
esac
exit 0
保存退出vi
[root@yangwenjun init.d]# chmod 755 httpd
[root@yangwenjun init.d]# chkconfig --level 345 httpd on
[root@yangwenjun conf]# vi httpd.conf
修改默認啓動頁
DirectoryIndex index.html index.htm default.htm default.html index.php index.php3 index.jsp
[root@yangwenjun init.d]# service httpd restart
Apache安裝完畢!
4、安裝Php
[root@yangwenjun www]# tar zxvf php-4.4.2.tar.gz
[root@yangwenjun www]# cd php-4.4.2
[root@yangwenjun php-4.4.2]# ./configure --prefix=/home/www/php --with-mysql=/home/www/mysql --with-apxs2=/home/www/apache/bin/apxs
[root@yangwenjun php-4.4.2]# make
[root@yangwenjun php-4.4.2]# make install
[root@yangwenjun php-4.4.2]# cp php.ini-dist /usr/local/lib/php.ini
[root@yangwenjun php-4.4.2]# cd /home/www/apache/conf
[root@yangwenjun conf]# vi httpd.conf
#系統自動添加了這一行,如果沒有則自己加入這一行。
LoadModule php4_module modules/libphp4.so
在AddType application/x-tar .tgz
下加一行
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
編寫文件index.php 寫入下一行
<? echo phpinfo() ?>
通過瀏覽器我們看到了我們的測試結果。至此,PHP裝好了。

5、安裝Tomcat及jakarta-tomcat-connectors-jk2
本文安裝的版本是:jakarta-tomcat-5.0.28
[root@yangwenjun www]# tar xzfv jakarta-tomcat-5.0.28.tar.gz
[root@yangwenjun www]# cp -rf jakarta-tomcat-5.0.28 /home/www/tomcat
[root@yangwenjun www]# cd /home/www/tomcat
現在來測試一下tomcat是否安裝成功
啓動tomcat服務:
[root@yangwenjun tomcat]# ./bin/startup.sh
訪問http://ip:8080/看能否看到tomcat的默認頁面,如能看到說明tomcat已經在服務了.
停止tomcat服務:
[root@yangwenjun tomcat]# ./bin/shutdown.sh

開始安裝jakarta-tomcat-connectors-jk2
[root@yangwenjun www]# tar xzfv jakarta-tomcat-connectors-jk2-2.0.4-src.tar.gz
[root@yangwenjun www]# cd jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/
[root@yangwenjun native2]# ./configure --with-apxs2=/home/www/apache/bin/apxs
[root@yangwenjun native2]# make
[root@yangwenjun native2]# cd ../build/jk2/apache2/
[root@yangwenjun apache2]# /home/www/apache/bin/apxs -n jk2 -i mod_jk2.so
上條命令是將mod_jk2.so添加到apache2的modules中.
上面就完成了Tomcat和Connectors的安裝.接下來進行與Apache的整合.
6、Tomcat與Apache的整合
[root@yangwenjun apache2]# cd /home/www/apache/conf/
[root@yangwenjun conf]# vi httpd.conf
編輯配置文件在其中加入這個模塊,保存退出
LoadModule jk2_module modules/mod_jk2.so
然後在這個目錄新建一文件workers2.properties
[root@yangwenjun conf]# vi workers2.properties
文件內容如下:
[root@yangwenjun conf]# more workers2.properties
  [channel.socket:202.114.33.249:8009]
  port=8009
  host=202.114.33.249
  [ajp13:202.114.33.249:8009]
  channel=channel.socket:202.114.33.249:8009
  [uri:/*]
  worker=ajp13:202.114.33.249:8009
  [uri:/examples/*]
  worker=ajp13:202.114.33.249:8009

當然以上內容中的202.114.33.249也可改成localhost
接下來進入tomcat下的conf目錄:
[root@yangwenjun conf]# cd /home/www/tomcat/conf/
修改server.xml文件
[root@yangwenjun conf]# vi server.xml
找到其中的<Host>中的<Contest>項,我修改後的相關參數如下:
<Context path="" docBase="/home/www/apache/htdocs" debug="0"
        reloadable="true" crossContext="true"/>
編輯後保存退出.
重啓Apache和Tomcat後可以查看整合後的效果.如下圖所示:
[root@yangwenjun conf]# /home/www/tomcat/bin/startup.sh
[root@yangwenjun conf]# service httpd restart


三、架設整合後的虛擬主機
    [root@yangwenjun conf]# vi /home/www/apache/conf/httpd.conf
在httpd.conf文檔末尾虛擬主機設置處加入以下內容:
NameVirtualHost *:80
<VirtualHost *:80>
    Documentroot /home/www/apache/htdocs
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot /home/bruce/test1
    ServerName test1.yangwenjun.com
</VirtualHost>
<VirtualHost *:80>
        DocumentRoot /home/bruce/test2
    ServerName test2.yangwenjun.com
</VirtualHost>

    [root@yangwenjun conf]# vi /home/www/tomcat/conf/server.xml
在server.xml文檔的<Engine>......</Engine>中間添加兩段<Host>......</Host>
內容如下:
      <Host name="test1.yangwenjun.com" debug="0" appBase="webapps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
        <Context path="" docBase="/home/bruce/test1" debug="0"
        reloadable="true" crossContext="true"/>
        <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs"  prefix="localhost_log." suffix=".txt"
            timestamp="true"/>
      </Host>

      <Host name="test2.yangwenjun.com" debug="0" appBase="webapps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
        <Context path="" docBase="/home/bruce/test2" debug="0"
        reloadable="true" crossContext="true"/>
        <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs"  prefix="localhost_log." suffix=".txt"
            timestamp="true"/>
      </Host>

重啓Apache和Tomcat後可以查看架設的虛擬主機的效果.如下圖:
[root@yangwenjun conf]# /home/www/tomcat/bin/startup.sh
[root@yangwenjun conf]# service httpd restart




本文PDF文檔下載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章