歡迎您光臨本站 註冊首頁

WEB全能伺服器總結,及各種問題處理方法.apache+tomcat+jsp+php+mysql+虛擬主機

前段時間配了一台WEB全能伺服器,遇到不了少問題,當然得到了tree   netseek 的幫助,在此謝謝啦~

儘管這個論壇有大量的有關WEB伺服器配置的貼 子,但都不是很全。我在這裡算是一個總結吧。

參考文檔主要來自 bbs.linuxmine.com 的netseek提供。

本人第一次在此論壇發技術貼,總結了一點經驗,發出來與大家一起分享吧。

非常感謝netseek給我提供文檔。在原文檔的基礎上加了GD,MYSQL,PHPMYADMIN和一些常見錯誤的解決方法。

如果有什麼問題,可以聯繫我:

msn:  liuyubj520@hotmail.com
QQ:  48431359
e-mail: l iuyu105@sina.com   
web:  http://bj-bbs.com   bbs.linuxmine.com
加我請註明:linuxmine

轉貼請註明出處! 謝謝

先送上軟體包:

相關軟體包下載地址
Apache(httpd)
www.apache.org
http://archive.apache.org/dist/httpd/httpd-2.0.54.tar.gz
PHP
www.php.net
http://cn2.php.net/get/php-5.0.5.tar.gz/from/a/mirror
freeTDS
http://ibiblio.org/pub/Linux/ALP ... /freetds-stable.tgz
JDK
java.sun.com
http://java.sun.com/j2se/1.4.2/download.html
Tomcat
http://archive.apache.org/dist/j ... tomcat-5.5.8.tar.gz
JK2
http://www.apache.org/dist/jakar ... -src-current.tar.gz
JDBC(Mysql,MsSql)
www.mysql.com
http://dev.mysql.com/get/Downloa ... ha.tar.gz/from/pick
http://www.microsoft.com/downloa ... bf71&DisplayLang=en

其它:(優化PHP)
ZendOptimizer
ZendOptimizer2.1.0b URhttp://www.zend.com/store/getfreefile.php?pid=13&zbid=548
涉及軟體包:
libtool-1.5.22.tar
libxml2-2.6.19.tar  # wget http://ftp.gnome.org/pub/GNOME/s ... bxml2-2.6.19.tar.gz
libxslt-1.1.15.tar    http://ftp.gnome.org/pub/GNOME/s ... bxslt-1.1.15.tar.gz
freetype-2.1.10.tar
apr-1.1.1.tar
apr-util-1.1.1.tar
libpng-1.2.8.tar
curl-7.15.0.tar.gz  http://curl.haxx.se/download/curl-7.15.0.tar.gz
jpegsrc.v6b.tar.gz     http://www.ijg.org/files/jpegsrc.v6b.tar.gz
讓MYSQL管理WEB化:
phpMyAdmin-2.8.2.4.tar
這些軟體都可以到www.apache.net 或http://download.chinaunix.net下載得到,我就不寫詳細了!

綱要:
一,        Apache的安裝                              一樓!·
二,        編譯安裝PHP(支持GD)               二樓!
三,        MYSQL的安裝                               三樓
四,        JSP環境的支持                               四樓
五,        企業虛擬主機配置實戰方案               五樓


一,Apache(httpd)的安裝
1.rpm (redhat自帶的安裝)
   2.重新編譯源代碼安裝
1,RPM包的安裝:
# rpm -qa | grep httpd   查看是否已經安裝此服務
httpd-manual-2.0.40-21
redhat-config-httpd-1.0.1-18
httpd-devel-2.0.40-21
httpd-2.0.40-21
2,重新編譯Apache源代碼安裝
#rpm –e httpd –-nodeps   卸載原用的Apache用戶
#tar -zxvf httpd-2.0.54.tar.gz 解壓
#cd httpd-2.0.54
# ./configure --prefix=/usr/local/httpd --enable-modules=so --enable-so
注:--prefix參數用來指定安裝后存放的路徑,--enable-modules用來指定系統允許使用的功能擴展的類型,這裡指定為so類型,--enable-so用來指定允許DSO(動態共享對像)
#echo $?
顯示為:0,表示編譯過程中沒有錯誤,顯示其它都有錯  這一步後面的編譯過程都會用到,如果在這出錯了,就不要MAKE了。得查找原因。

以後只要你在編譯的時候一定要加上這一句。很重要的。

#make
#make install
#cd /usr/local/httpd/bin/
#./httpd –k start

註:這一步都不會出錯。

以下的步驟有一個問題。應該先安裝mysql 后安裝php   LAMP 嘛,請大家安裝時注意。   :wink:

[ 本帖最後由 守住每一天 於 2008-7-14 13:46 編輯 ]
《解決方案》

二,編譯安裝PHP

二,編譯安裝PHP


二,編譯安裝PHP
1,freeTDS(解決PHP與MSSQL連接的問題)
2,編譯安裝PHP並支持GD
具體安裝如下:
1.   freeTDS的安裝
#tar –zxvf freetds-stable.tgz
#cd freetds-0.63
#./configure --prefix=/usr/local/freetds --with-tdsver=8.0
  注:--with-tdsver指定的freetds支持的資料庫版本號,其中8.0對應的是sqlservr2000.
#make
#make install
#vi /etc/ld.so.conf 設置系統動態庫配置文件,加入以下:
/usr/local/freetds/lib
保存退出。
#ldconfig 重新載入動態庫列表ld.so.conf

1。安裝PHP
安裝 jpeg6
建立目錄
# mkdir /usr/local/jpeg6
# mkdir /usr/local/jpeg6/bin
# mkdir /usr/local/jpeg6/lib
# mkdir /usr/local/jpeg6/include
# mkdir /usr/local/jpeg6/man
# mkdir /usr/local/jpeg6/man/man1
# cd /root/soft
# tar -zxf jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
#echo $?
# make; make install

安裝libpng
# cd /root/soft
# tar -zxf libpng-1.2.8.tar.gz
# cd libpng-1.2.8
# cp scripts/makefile.std makefile
# make; make install

安裝 freetype
# cd /root/soft
# tar -zxf freetype-2.1.10.tar.gz
# cd freetype-2.1.10
# ./configure --prefix=/usr/local/freetype
#echo $?
# make;make install

安裝最新的GD庫
# cd /root/soft
# tar -zxf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6/ --with-png --with-zlib --with-freetype=/usr/local/freetype/
#echo $?
# make; make install

安裝最新的Curl庫
# cd /root/soft
# tar -zxf curl-7.15.0.tar.gz
# ./configure --prefix=/usr/local/curl
#echo $?
# make; make install

安裝PHP

由於php5需libxml2的支持, 所以先安裝libxml2
# cd /root/soft
# tar -zxf libxml2-2.6.19.tar.gz
# cd libxml2-2.6.19
# ./configure --prefix=/usr/local/libxml2
#echo $?
# make; make install

安裝 libxslt
# cd /root/soft
# tar -zxf libxslt-1.1.15.tar.gz
# cd libxslt-1.1.15
# ./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
#echo $?
# make; make install

# tar -zxf php-5.0.5.tar.gz
# cd php-5.05
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/ --with-curl=/usr/local/curl --enable-ftp --with-libxml-dir=/usr/local/libxml2 --with-expat-dir=/usr/lib --enable-soap --with-xsl=/usr/local/libxslt --enable-xslt --with-gd=/usr/local/gd2/ --with-jpeg-dir=/usr/local/jpeg6/ --with-zlib-dir=/usr/lib --with-png --with-freetype-dir=/usr/local/freetype
#echo $?
# make
# make install

其中./configure 后的
--prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql/
--with-libxml-dir=/usr/local/libxml2
是必要的選項

--with-gd=/usr/local/gd2/
--with-jpeg-dir=/usr/local/jpeg6/
--with-png
--with-zlib-dir=/usr/lib
--with-freetype-dir=/usr/local/freetype
這是讓PHP支持GD庫的配置選項

--with-curl=/usr/local/curl 支持CURL庫
--enable-ftp 打開FTP庫函數支持

--enable-soap --with-xsl=/usr/local/libxslt --enable-xslt
讓PHP支持SOAP, 上面這些一般用得少, 可以去掉

如果在MAKE的時候出錯,那麼就是你以上相關的軟體沒有安裝好,這是最全的,出錯的方法都是沒有裝相應的軟體包,你可以查看一下。

#cp php.ini-dist /usr/local/lib/php.ini
#vi /usr/local/lib/php.ini
將register_globals = Off改為register_globals = On
#vi /usr/local/httpd/httpd.conf 些模塊簡單的修改
將Listen 80 改為: Listen 192.168.0.230:80
在配置文件中添加如下:
AddType application/x-httpd-php .php .php3 .php4 .php5
#AddHandler cgi-script .cgi,去掉#打開CGI腳本服務
#/usr/local/httpd/bin/apachectl restart 重啟一下apahce服務
apache伺服器的PHP配置完成。
設置啟動文件:
#vi /etc/rc.d/rc.local
增加一行:
/usr/local/httpd/bin/apachectl start
配置重新導入
/etc/rc.d/init.d/xinetd restart
測試PHP
進入Apache默認主目錄/usr/local/httpd/htdocs,在該目錄下建一個phpinfo.php文件
#vi phpinfo.php 寫入以一內容
<?phpinfo();?>
http://IP地址/phpinfo.php 就可以看到相關的服務信息啦。
《解決方案》

三,mysql的安裝

三,mysql的安裝

# tar zxvf mysql-4.0.14.tar.gz –C             /setup
# cd /setup/mysql-4.0.14
# groupadd mysql
# useradd mysql -g mysql -M -s /bin/false
#./configure --prefix=/usr/local/mysql/ --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler   
#echo $?        
# make
# make install              
# scripts/mysql_install_db           生成mysql用戶資料庫和表文件
# cp support-files/my-medium.cnf /etc/my.cnf        \copy配置文件,有large,medium,small三個環境下的,根據機器性能                             選擇,如果負荷比較大,可修改裡面的一些變數的內存使用值
# cp support-files/mysql.server /etc/init.d/mysqld         \copy啟動的mysqld文件
# chmod 700 /etc/init.d/mysqld
# cd /web
# chmod 750 mysql -R
# chgrp mysql mysql -R
# chown mysql mysql/var -R
# cd /web/mysql/libexec
# cp mysqld mysqld.old
# strip mysqld
# chkconfig --add mysqld
# chkconfig --level 345 mysqld on
# service mysqld start
# netstat -atln
看看有沒有3306的埠打開,如果mysqld不能啟動,看看/web/mysql/var下的出錯日誌,一般都是目錄許可權沒有設置好的問題
# ln -s /web/mysql/bin/mysql /sbin/mysql
# ln -s /web/mysql/bin/mysqladmin /sbin/mysqladmin
# mysqladmin -uroot password "youpassword" #設置root帳戶的密碼
# mysql -uroot -p
# 輸入你設置的密碼
mysql>;use mysql;
mysql>;delete from user where password=""; #刪除用於本機匿名連接的空密碼帳號
mysql>;flush privileges;
mysql>;quit

錯誤:
看到:
5134
# Starting mysqld daemon with databases from /usr/local/mysql/data
STOPPING server from pid file /usr/local/mysql/data/shunzi.pid
030102 21:00:46 mysqld ended
提示啟動失敗了,這是由於許可權的問題,執行下列命令:
chown -R root /usr/local/mysql
chgrp -R mysql /usr/local/mysql
執行:
# bin/mysqld_safe --user=root &
可以看到類似的內容:
5846
5846 pts/1 S 0:00 /bin/sh bin/mysqld_safe --user=root
5864 pts/1 S 0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --ba
這說明mysql服務已經啟動了。mysql伺服器安裝成功了。如還不行,就再檢查mysql文件的許可權。
總之MYSQL的錯誤問題都出在許可權上。細心點就沒事。
2。安裝PHPMYADMIN
 ex:/usr/local/apache/htdocs/    (這是我網頁存放的位置)
  a. # mv phpMyAdmin_2.0.5.tar.gz /usr/local/apache/htdocs/ 移到httpd的根目錄
  b. # tar zxvf phpMyAdmin_2.0.5.tar.gz   解壓縮phpMyAdmin_2.0.5.tar.gz
  c. 路徑 /usr/local/apache/htdocs/phpMyAdmin
  d. 修改設定檔
  # vi config.inc.php3
  找到下面的部分
  $cfgServers['host'] = 'localhost'; // MySQL 的hostname
  $cfgServers['port'] = '';       // MySQL 的port 空白表示預設3306
  $cfgServers['adv_auth'] = true;   // 是否採用進階功能
  $cfgServers['stduser'] = 'root';  // MySQL的管理者
  $cfgServers['stdpass'] = '123456';  // MySQL管理者的密碼
  //我採用root為管理者,密碼為123456 你可以採用自己喜歡的
  4.測試
  開啟瀏覽器,輸入http://的網址/phpMyAdmin/...

[ 本帖最後由 守住每一天 於 2008-7-14 13:37 編輯 ]
《解決方案》

四,JDK的安裝

四,JDK的安裝
1,JDK的安裝
   2,Tomcat的安裝
   3.JDBC(JSP與,MSYQL,MSSQL連接)
   4,JK2(是APACHE組織指定的連接apceh和tomcat的工具)
   5. 啟動TOMCAT(jsvc.tar.gz,tomcat啟動工具)
具體操作如下:
1.  JDK的安裝
# ls
j2sdk-1_4_2_08-linux-i586.bin   j2sdk-1_4_2_08-linux-i586-rpm.bin
有兩個包.
j2sdk-1_4_2_08-linux-i586-rpm.bin的安裝方法
#chmod 755 j2sdk-1_4_2_08-linux-i586-rpm.bin
#./j2sdk-1_4_2_08-linux-i586-rpm.bin (運行JDK自解包)
運行過程中會出現一個用戶協議,選擇yes即可,會釋放出一個rpm包j2sdk-1_4_2_08-linux-i586.rpm.
#rpm –Uvh j2sdk-1_4_2_08-linux-i586.rpm
完成後會在/usr/目錄下生成一個/usr/java/j2sdk1.4.2_08目錄文件
另一個軟體包運行後會直接釋放成j2sdk1.4.2_08目錄移動合適的位置,如/usr/local/
#chmod 755 j2sdk-1_4_2_08-linux-i586.bin
#./j2sdk-1_4_2_08-linux-i586.bin
# mv j2sdk1.4.2_08 /usr/local/
到此JDK已經安裝完成
到/usr/bin目錄下,把原用的java,javac文件刪除:
#rm -rf java
#rm –rf javac
在/usr/bin 下建立 軟連接 java
# ln -s /usr/local/j2sdk1.4.2_08/bin/java /usr/bin/java
# ln -s /usr/local/j2sdk1.4.2_08/bin/javac /usr/bin/javac
# java –version
# javac -version
java version "1.4.2_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_08-b03)
Java HotSpot(TM) Client VM (build 1.4.2_08-b03, mixed mode)


為了方便下在的工作建立兩個軟鏈接:
ln -s /usr/local/j2sdk1.4.2_08  /usr/local/jdk
ln -s /usr/local/j2sdk1.4.2_08/jre /usr/local/jre

2.Tomcat的安裝
#tar -zxvf jakarta-tomcat-5.0.28.tar.gz
# mv jakarta-tomcat-5.0.28 /usr/local/tomcat
設置環境變數:
#Set  Environment  by NetSeek
JAVA_HOME=/usr/local/jdk
export JAVA_HOME
JRE_HOME=/usr/local/jre
export JRE_HOME
CLASSPATH=/usr=/usr/local/tomcat/common/lib/:/usr/local/jdk/lib:/usr/local/jre/lib
export CLASSPATH
PATH=$PATH:/usr/local/tomcat/bin/:/usr/local/apache/bin:/usr/local/jdk/bin:/usr/local/jre/bin
export PATH
TOMCAT_HOME=/usr/local/tomcat
export TOMCAT_HOME
啟動tomcat以檢查是否存在錯誤:
#cd /usr/local/tomcat/bin
#./startup.sh
http://IP地址:8080 可以看到貓頭:)成功了。

3.JDBC的安裝
#tar -zxvf mysql-connector-java-3.2.0-alpha.tar.gz
#cd mysql-connector-java-3.2.0-alpha
#cp mysql-connector-java-3.2.0-alpha-bin.jar /usr/local/tomcat/common/lib
#tar xfv mssqlserver.tar
#tar xfv msjdbc.tar
#cd lib
# cp *.jar /usr/local/tomcat/common/lib

4.編譯安裝JK2(整合Tomcat與Apache)
# tar zxvf jakarta-tomcat-connectors-jk2-src-current.tar.gz
# cd jjakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/
#./configure --with-apxs2=/usr/local/httpd/bin/apxs \
--with-java-home=/usr/local/jdk \
--with-tomcat41=/usr/local/tomcat \
--with-apr-lib=/usr/local/httpd/lib  
#echo $?
報錯:
no apxs given
need to check for Perl first, apxs depends on it...
checking for perl... /usr/bin/perl
configure: error: can't locate libapr
解決辦法:
安裝:apr-1.1.1.tar.gz
apr-util-1.1.1.tar.gz
libtool-1.5.22.tar
解壓縮安裝libapr
# chmod +x *
# tar xfz apr-1.1.1.tar.gz
# cd apr-1.1.1
# ./configure
# make
# make install
回到......./tomcat目錄
#cd ..
解壓縮安裝libaprutil
# tar xfz apr-util-1.1.1.tar.gz
# cd apr-util-1.1.1
# ./configure --with-apr=../apr-1.1.1
# make
# make install
建立libapr和libaprutil 的軟連接到/usr/local/httpd2/lib/目錄下
# ln -s /usr/local/apr/lib/libapr-1.so.0.1.1 /usr/local/httpd2/lib/libapr-1.so  
# ln -s /usr/local/apr/lib/libapr-1.so.0.1.1 /usr/local/httpd2/lib/libapr-1.so.0  
# ln -s /usr/local/apr/lib/libaprutil-1.so.0.1.1 /usr/local/httpd2/lib/libaprutil-1.so  
# ln -s /usr/local/apr/lib/libaprutil-1.so.0.1.1 /usr/local/httpd2/lib/libaprutil-1.so.0

再次編譯jakarta-tomcat
如果make通不過,/path/to/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/build/jk2/apache2目錄下並無mod_jk2.so產生,則需安裝新版libtool.
# libtool --version
ltmain.sh (GNU libtool) 1.4.3 (1.922.2.111 2002/10/23 02:54:36)
#
這個版本的libtool編譯最新的  
jakarta-tomcat-connectors-jk2-2.0.4-src  
是不會成功的。  
返回到....../tomcat
安裝libtool-1.5.22
# chmod +x *
# tar xfz libtool-1.5.22.tar.gz
# cd libtool-1.5.22
# ./configure
# make
# make install
刪除原來的/usr/local/httpd2/build/libtool  
# rm –rf /usr/local/httpd2/build/libtool  
建立新的libtool 軟連接
# ln -s /usr/local/bin/libtool /usr/local/httpd2/build/libtool
再次編譯jakarta-tomcat
現在就OK了
./configure --with-apxs2=/usr/local/apache/bin/apxs --with-java-home=/opt/j2sdk1.4.2_10 --with-apr-lib=/usr/local/apache/lib
註:--with-tomcat41參數指定Tomcat主目錄,編譯器沒有直接對最新的Tomcat提供特定的編譯參數,所以使用tomcat41的參數代替,用—with-java-home參數指定Java的安裝路徑.
#make
將在/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/build/jk2/apache目錄下,生成的mod_jk2.so複製到Apache的擴展模塊目錄/usr/local/httpd/modules下,
#cp mod_jk2.so /usr/local/httpd/modules
再將/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/conf目錄下的workers2.properties複製到Apache的配置文件目錄/usr/local/httpd/conf下:
#cp workers2.properties /usr/local/httpd/conf

再編輯httpd.conf
vi /usr/local/apache/conf/httpd.conf
LoadModule jk2_module modules/mod_jk2.so

之前我的問題是:在已有的WEB伺服器上重新安裝一套,所以tomcat 老啟不來,得KILL掉進程再啟動就OK了。

錯誤:
Syntax   error   on   line   1038   of   /etc/httpd/conf/httpd.conf:   
Invalid   virtual   host   name   
則修改httpd.conf文件,找到#ServerName所在的行,並在其下面加入如下內容即可   
ServerName   localhost:8008   #   制定伺服器的名稱和埠,注意埠是8008,而不是8080

檢查$CATALINA_HOME/conf/server.xml文件中相關的配置,默認情況下的   
                相關的信息是被註釋掉了,搜索8008,找到<Service   name="Tomcat-Apache">那段,把前面的"<!--"和</Service>後面的"-->"都刪掉5. 啟動TOMCAT(jsvc.tar.gz,tomcat啟動工具)
Apache和Tomcat安裝后需要設置自動啟動,如果讓Tomcat用root身份啟動,Tomcat將會擁用root許可權,這將可能給系統帶來安全隱患,黑客可能利用這個來攻擊我們的系統,所以我們得添加一個獨立運行此服務的用戶:
#useradd -d /usr/local/tomcat -s /usr/sbin/nologin tomcat
#chown -R tomcat:tomcat /usr/local/tomcat
#cd /usr/local/tomcat/bin/
#tar zxvf jsvc.tar.gz
#cd jsvc-src
#sh support/buildconf.sh (只能在些目錄里執行,在別處執行會出錯)
     會顯示support/buildconf.sh: configure script generated successfully
#chmod 755 configure
#./configure
#make
#cp native/Tomcat5.sh /usr/sbin/tomcat
#cd /usr/sbin
#chmod 755 tomcat
#vi tomcat
可以看到:
JAVA_HOME=/usr/java/j2sdk1.4.2_03   指定java安裝的目錄
CATALINA_HOME=/home/tomcat5/jakarta-tomcat-5/build  指定了tomat的安裝目錄
DAEMON_HOME=/home/tomcat5/jakarta-commons/daemon 指定了tomcat命令所在的目錄
TOMCAT_USER=tomcat5    指定tomcat運行后使用的賬號
將上面的配置修改如下:
JAVA_HOME=/usr/local/jdk
CATALINA_HOME=/usr/local/tomcat/
DAEMON_HOME=/usr/local/tomcat/bin/
TOMCAT_USER=tomcat
找到$DAEMON_HOME/src/native/unix/jsvc \
將其更改成:$DAEMON_HOME/jsvc-src/jsvc \
修改完保存退出
vi /etc/rc.d/rc.local
在裡面添加如下設置:
/usr/sbin/tomcat start

然後重啟所有服務!
《解決方案》

五,企業虛擬主機配置實戰方案

五,企業虛擬主機配置實戰方案
要求:
1,DNS的簡設置
2,虛擬域名:www.XXXXXX.com,虛擬用戶XXXXXX_com
3,允許FTP維護,禁止遠程登陸(具體的FTP維護參照二)
4,為虛擬主機添加用戶和使用目錄

1,   DNS的簡單設置,
在這裡我們使用XXXXXX.com這個虛擬域名,實際域名首先要確定域名已經在域名提供商或DNS上設置正常,在這裡我們簡的的講一下DNS伺服器在RedHat9。0上的簡單的配置,假定伺服器使用192.168.0.230和192.168.0.231這兩個IP
綁定多個IP:
在/etc/sysconfig/network-scripts,在該目錄下新建一個ifcfg-etho0:0的文件內容如下:
DEVICE=eth0:0
IPADDR=192.168.0.231
NETMASK=255.255.255.0
ONBOOT=yes
#service network restart 重啟一下網路服務就OK啦
DNS的簡單配置
在這裡關於DNS的詳細介紹和配置我就不說啦,其實配置也不是難事,都是利用模板,關鍵是在配置的時候要細心,不要馬虎,否則會現錯,
1.基本配置文件::
/etc/named.conf
  /var/named/ 編寫xxxx.com.zone
  /etc/resolv.conf
2.#vi /etc/named.conf
zone "xxxxx.com" IN {
        type master;
        file "xxxxx.com.zone";
        allow-update { none; };
};

zone "0.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.0.local";
        allow-update { none; };
};
3.#vi /var/named/xxxxx.com.zone 編寫一個xxxxx.com.zone文件
$TTL    86400
@                       1D IN SOA       @ root (
                                        20050505               
                                        3H               
                                        15M              
                                        1W               
                                        1D )            

                        1D IN NS        @
                        1D IN MX  10    mail.xxxxx.com
ns                      1D IN A         127.0.0.1
www                     1D IN A         192.168.0.20
firebird                1D IN A         192.168.0.20
mail                    1D IN A         192.168.0.20
pop3                    1D IN A         192.168.0.20
smtp                    1D IN A         192.168.0.20
ftp                     1D IN A         192.168.0.21

4.#vi /etc/resolv.conf 把DNS伺服器設置成為本機
nameserver 192.168.0.230
5.重新啟動載入DNS服務:
#/etc/init.d/named start
#chkconfig named on 讓named守護進程在每次系統引導時啟動
#/etc/init.d/named restart 重啟DNS服務
#rndc reload 重新載入配置文件,這是在修改配置文件后,使配置文件生效。
測試DNS服務是否工作正常
#host www.xxxxxxx.com
#nslookup 192.168.0.230

二. 配置虛擬主機
1. 為虛擬主機添加用戶和使用目錄
#useradd xxxxxxx_com -s /sbin/nologin   添加虛擬用戶,不允許登陸      
#passwd xxxxxx_com  (Do not Hack me 3ks) DnHm3ks 這是我設置的密碼:)
#chmod 755 /home/xxxxxx_com
#cd /home/xxxxx_com
#mkdir sites               建立網站存放根目錄
#chown xxxxxxx_com:xxxxxx_com sites    改變sites所屬組為xxxxx_com
#mkdir logs                站點的日誌目錄
#chown xxxxxx_com:linuxhero_com logs
#mkdir cgi-bin             目錄用來運行CGI程序
#chown xxxxx_com:xxxxxx_com cgi-bin
#mkdir sites/WEB-INF      用來存放Tomcat發布的程序
#chown xxxxx_com:xxxxx_com sites/WEB-INF
2.設置Apache的虛擬主機
#vi /usr/local/httpd/conf/httpd.conf
找到DirectoryIndex 在文件表中加上index.jsp,然後在文件尾添加虛擬主機配置信息:
NameVirtualHost 192.168.0.230:80
#www.xxxxx.com
<VirtualHost 192.168.0.230:80>
     ServerAdmin      webmaster@xxxxx.com
     DocumentRoot     /home/xxxxx_com/sites
     ServerName       www.xxxxx.com
     ServerAlias      linuxhero.com
     ErrorLog         /home/xxxxx_com/logs/error_log
     CustomLog        /home/xxxxx_com/logs/access_log common
     alias  /cgi-bin  /home/xxxxx_com/cgi-bin
     <Location /cgi-bin>
              Options ExecCGI
     </Location>
     <Location ~ "/*.jsp">
              JkUriSet worker ajp13:localhost:8009
     </Location>
     <Location ~ "/WEB-INF/*">
              JkUriSet worker ajp13:localhost:8009
     </Location>
     <Location ~ "servlet/*">
              JkUriSet worker ajp13:localhost:8009
     </Location>
</VirtualHost
1.   設置Tomcat的虛擬主機:
vi /usr/local/tomcat/conf/server.xml
在</Engine></Service></Server>上面加入如下:
------------------------------------------------------------------------------
<Host name="www.xxxxx.com" debug="0" appBase="/home/xxxxx_com/sites/"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
       <Alias>xxxxx.com</Alias>
       <Context path="" docBase="." debug="0" reloadable="ture"/>  
       <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs"  prefix="xxxxx_com_log."
                 suffix=".txt"
                 timestamp="true"/>
</Host>
</Engine>

  </Service>

</Server>
到此xxxxxxx_com這目錄就可以同時支持PHP+JSP+mysql+mssql,啦,相當於LINUX下的WEB全能伺服器.

好了,我也累暈了。休息會吧。

有空大家一起交流!!!
《解決方案》

看樣子。這貼子發著沒用。哎!!!
《解決方案》

不是沒有用的... 就是因為你.. 我可以很快咁設定好 web server..
真的十分感謝你.. 謝謝
《解決方案》

受益非牽,我在安裝過程中得到不少幫助,我的系統是Fedora 4+MySQL+Apache+Php5。但我還有一個問題想請教:
我已經安裝好apache和php5, 但我想再增加部分模塊,例如SSL,Jpeg 等等,我該如何做?重新configure,make,make install?還是?
Thanks.
《解決方案》

頂起來給後面來的人...:D:D:D
《解決方案》

先頂一下!

正準備自行編譯apache 2.0.59 + mysql 4.1.22 + php 4.4.4

[火星人 ] WEB全能伺服器總結,及各種問題處理方法.apache+tomcat+jsp+php+mysql+虛擬主機已經有989次圍觀

http://coctec.com/docs/service/show-post-25325.html