tomcat设置php root,apache+tomcat+php搭建
Linux全能web服務器配置方案
綱要:
一,Apache的安裝
二,編譯安裝PHP
三,JSP環境的支持
四,企業虛擬主機配置實戰方案
五,Web服務環境支持測試
一,Apache(httpd)的安裝
1.rpm (redhat自帶的安裝)
2.重新編譯源代碼安裝
1,RPM包的安裝:
[root@linuxhero root]#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解壓
#cdhttpd-2.0.54
#./configure --prefix=/usr/local/httpd --enable-modules=so --enable-so
注:--prefix參數用來指定安裝后存放的路徑,--enable-modules用來指定系統允許使用的功能擴展的類型,這里指定為so類型,--enable-so用來指定允許DSO(動態共享對像)
#make
#make install
#cd /usr/local/httpd/bin/
#./httpd–k start
二,編譯安裝PHP
1,freeTDS(解決PHP與MSSQL連接的問題)
2,編譯安裝PHP
具體安裝如下:
1.freeTDS的安裝
#tar–zxvffreetds-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
2.編譯安裝PHP
#tar–zxvfphp-5.0.4.tar.gz
#cd php-5.0.4
#./configure --with-mysql --with-sybase=/usr/local/freetds \
--with-apxs2=/usr/local/httpd/bin/apxs\
--prefix=/usr/local/php
#echo $?
顯示為:0,表示編譯過程中沒有錯誤,顯示其它都用錯(我始是編譯不成功,不能make,裝了一個libxml2-2.6.19.tar.gz問題就解決了)
#make
#make install
#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 些模塊簡單的修改
將Listen80改為:Listen 192.168.0.230:80
在配置文件中添加如下:
AddType application/x-httpd-php .php .php3 .php4 .php5
#AddHandler cgi-script .cgi,去掉#打開CGI腳本服務
#/usr/local/httpd/bin/apachectlrestart 重啟一下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 寫入以一內容
三,JSP環境支持
1,JDK的安裝
2,Tomcat的安裝
3.JDBC(JSP與,MSYQL,MSSQL連接)
4,JK2(是APACHE組織指定的連接apceh和tomcat的工具)
5. 啟動TOMCAT(jsvc.tar.gz,tomcat啟動工具)
具體操作如下:
1.JDK的安裝
[root@linuxhero root]#ls
j2sdk-1_4_2_08-linux-i586.binj2sdk-1_4_2_08-linux-i586-rpm.bin
有兩個包.
j2sdk-1_4_2_08-linux-i586-rpm.bin的安裝方法
#chmod 755j2sdk-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–Uvhj2sdk-1_4_2_08-linux-i586.rpm
完成后會在/usr/目錄下生成一個/usr/java/j2sdk1.4.2_08目錄文件
另一個軟件包運行后會直接釋放成j2sdk1.4.2_08目錄移動合適的位置,如/usr/local/
#chmod 755j2sdk-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/httpd/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://192.168.0.230: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
注:--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/httpd/conf/httpd.conf
LoadModule jk2_module modules/mod_jk2.so
然后再重啟apache可以看到apache2handler
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.linuxher.com,虛擬用戶linuxhero_com
3,允許FTP維護,禁止遠程登陸(具體的FTP維護參照二)
4,為虛擬主機添加用戶和使用目錄
1,DNS的簡單設置,
在這里我們使用linuxhero.com這個虛擬域名,實際域名首先要確定域名已經在域名提供商或DNS上設置正常,在這里我們簡的的講一下DNS服務器在RedHat9。0上的簡單的配置,假定服務器使用192.168.0.230和192.168.0.231這兩個IP,我在網卡上綁定了兩個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/ 編寫linuxhero.com.zone
/etc/resolv.conf
2.#vi /etc/named.conf
zone "linuxhero.com" IN {
type master;
file "linuxhero.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/linuxhero.com.zone 編寫一個linuxhero.com.zone文件
$TTL ? ?86400
@ ? ? ? ? ? ? ? ? ? ? ? 1D IN SOA ? ? ? @ root (
20050505
3H
15M
1W
1D )
1D IN NS ? ? ? ?@
1D IN MX ?10 ? ?mail.linuxhero.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服務是否工作正常
#nslookup 192.168.0.230
二. 配置虛擬主機
1. 為虛擬主機添加用戶和使用目錄
#useradd linuxhero_com -s /sbin/nologin添加虛擬用戶,不允許登陸
#passwd linuxhero_com(Do not Hack me 3ks) DnHm3ks這是我設置的密碼:)
#chmod 755 /home/linuxhero_com
#cd /home/linuxhero_com
#mkdir sites建立網站存放根目錄
#chown linuxhero_com:linuxhero_com sites改變sites所屬組為linuxhero_com
#mkdir logs站點的日志目錄
#chown linuxhero_com:linuxhero_com logs
#mkdir cgi-bin目錄用來運行CGI程序
#chown linuxhero_com:linuxhero_com cgi-bin
#mkdir sites/WEB-INF用來存放Tomcat發布的程序
#chown linuxhero_com:linuxhero_com sites/WEB-INF
2.設置Apache的虛擬主機
#vi /usr/local/httpd/conf/httpd.conf
找到DirectoryIndex在文件表中加上index.jsp,然后在文件尾添加虛擬主機配置信息:
NameVirtualHost 192.168.0.230:80
#www.linuxhero.com
ServerAdmin ? ? ?webmaster@linuxhero.com
DocumentRoot ? ? /home/linuxhero_com/sites
ServerName ? ? ? www.linuxhero.com
ServerAlias ? ? ?linuxhero.com
ErrorLog ? ? ? ? /home/linuxhero_com/logs/error_log
CustomLog ? ? ? ?/home/linuxhero_com/logs/access_log common
alias ?/cgi-bin ?/home/linuxhero_com/cgi-bin
Options ExecCGI
JkUriSet worker ajp13:localhost:8009
JkUriSet worker ajp13:localhost:8009
JkUriSet worker ajp13:localhost:8009
1.設置Tomcat的虛擬主機:
vi /usr/local/tomcat/conf/server.xml
在上面加入如下:
------------------------------------------------------------------------------
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
linuxhero.com
directory="logs" ?prefix="linuxhero_com_log."
suffix=".txt"
timestamp="true"/>
到此linuxhero_com這目錄就可以同時支持PHP+JSP+mysql+mssql,啦,相當于LINUX下的WEB全能服務器.
五,Web服務環境支持測試
1.php環境的支持測試
上傳了一個QQ面板的PHP程序,簡單測試成功,顯示如下:
在IE輸入:http://www.linuxhero.com/qq/qq.php
1.JSP環境的測試
呵呵,暫時還不懂JAVA,抄了一個JSP程序,改寫了一下,測試一下JSP配置,顯示如下:
成功了。
附:相關軟件包下載地址
Apache(httpd)
www.apache.org
PHP
www.php.net
freeTDS
http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
JDK
java.sun.com
Tomcat
JK2
JDBC(Mysql,MsSql)
其它:(優化PHP)
ZendOptimizer
總結
以上是生活随笔為你收集整理的tomcat设置php root,apache+tomcat+php搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php编程用空格,shell 编程中空格
- 下一篇: clearbom.php,clearBO