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