Apache Web讓JSP“動”起來_伺服器

來源:互聯網
上載者:User
 
---- JSP是一種較為常用的動態網頁製作技術,但Apache本身只支援靜態網頁,因此需要與其他特定的應用服務結合使用。本文要介紹的是一種將Apache與Tomcat服務相結合來支援JSP動態網頁的最新實用技術,即用"apache/jk"方式支援JSP動態網頁。 
---- 起初,Apache與Tomcat結合支援JSP動態網頁是通過一個名為"mod_jserv" 的外掛程式來實現的。採用這種Apache/Jserv方式配置參數十分複雜,運行效率很低,而且對SSL(一種加密傳輸方式)的支援也不理想,因此Jakarta工作群組新近開發了"mod_jk"外掛程式,它很好地彌補了mod_jserv的缺點,而且能支援Apache以外的多種Web服務。 
---- 關於這種Apache/Jk方式的實現原理,大家可到網站上閱讀有關資料,本文只簡單介紹其實現的方法,對原理部分不做討論。 
---- 一、在Unix平台上安裝 
---- 本文以最常用的Solaris作業系統為例進行說明。 
---- (一)應用環境 
---- 在此,我們選用的作業系統為Solaris 2.7,而應用環境為Java 1.2(假定安裝在/usr/java1.2目錄下)、perl 5.005(假定安裝在/usr/local/bin目錄下)和gzip(假定安裝在/usr/local/bin目錄下)。 
---- (二)軟體包的下載、編譯與安裝 
---- 1.下載地址 
---- 在可下載最新的Apache原始碼軟體包apache_1.3.19.tar.gz。 
---- 在可下載Tomcat原始碼軟體包jakarta-tomcat-3.2.1-src.tar.gz。 
---- 在可下載已編譯的Tomcat應用軟體包jakarta-tomcat-3.2.1.tar.gz。 
---- 2.編譯與安裝 
---- 假設各軟體包已下載到當前的某個工作目錄(如: /home/tmp)下,Apache和Tomcat將安裝在/home目錄下。在目前的目錄我們可以進行如下操作。 
(1)編譯和安裝Apache 應用服務 
①解包 
$ /usr/local/bin/gzip -dc ./ apache_1.3.19.tar.gz | tar xf - 
②編譯 
$ cd apache_1.3.19 
$ ./configure --prefix=/home/apache-1.3.19 
--with-perl=/usr/local/bin/perl --enable-module=so  
假設perl的解釋命令安裝在/usr/local/bin 目錄下, 
Apache服務安裝在/home/apache-1.3.19 目錄下。 
$ make 
③安裝 
$ su 
# make install 
(2)編譯與安裝mod_jk外掛程式 
①解包 
$ /usr/local/bin/gzip-dc jakarta-tomcat-3.2.1-src.tar.gz|tar xf- 
②編譯 
$ cd jakarta-tomcat-3.2.1-src/src/native/apache1.3 
$ /home/apache-1.3.19/bin/apxs -o mod_jk.so -DSOLARIS -I../jk -I/ 
usr/java1.2/include-I/usr/java1.2/include/ 
solaris -lposix4 -c *.c ../jk/*.c 
假定Java安裝在/usr/java1.2目錄下。 
③安裝 
$ su 
# /home/apache-1.3.19/bin/apxs -i -a -n jk mod_jk.so 
當螢幕顯示如下內容時,表示安裝成功。 
cp mod_jk.so /home/apache-1.3.19/libexec/mod_jk.so 
chmod 755 /home/apache- 
1.3.19/libexec/mod_jk.so 
[activating module `jk in /home/apache-1.3.19/conf/httpd.conf] 
(3)安裝Tomcat服務 
用超級使用者身份把已編譯的Tomcat 3.2.1解包到/home目錄下即可。 
$ su 
# /usr/local/bin/gzip -dc jakarta-tomcat-3.2.1.tar.gz| 
(cd /home;tar xf -) 
3.參數配置 
(1)配置Apache服務 
用vi命令開啟Apache的設定檔httpd.conf。 
# cd /home/apache-1.3.19/conf 
# vi httpd.conf 
在末尾添加以下內容。 
JkWorkersFile /home/jakarta-tomcat-3.2.1/conf/workers.properties 
JkLogFile /home/apache-1.3.19/logs/mod_jk.log 
注意: 記錄檔可根據具體情況調整。 
JkLogLevel warn 
JkMount /*.jsp ajp13 
JkMount /servlet/*.jsp ajp13 
注意: 關於該設定檔中其他重要的、但與Tomcat無關 
的參數(如Port和DocumentRoot等),可參見Apache的文檔資料,本文不涉及。 
(2)配置Tomcat服務 
首先,修改server.xml檔案。 
這裡假定存放Apache的Web網頁的根目錄為/home/htdocs。 
# cd /home/jakarta-tomcat-3.2.1/conf 
# vi server.xml 
然後,在Connectors部分嵌入如下內容。 
< Connector className="org.apache.tomcat.service. 
PoolTcpConnector"> < Parameter name="handler" 
value="org.apache.tomcat.service.connector.Ajp 
13ConnectionHandler"/> 
< Parameter name="port" value="8009"/> 
< /Connector> 
接著,在 Special Webapps 部分嵌入如下內容。 
< Context path=" " 
docBase="/home/htdocs" 
debug="0" > 
< /Context> 
進一步修改workers.properties檔案。 
# vi workers.properties 
... 
workers.tomcat_home=/home/jakarta-tomcat-3.2.1 
... 
workers.java_home=/usr/java1.2 
... 
ps=/ 
... 
隨後,修改Tomcat 啟動和關閉命令檔案。 
# cd ../bin 
# vi startup.sh 
再在"BASEDIR=`dirname $0` "語句前嵌入如下內容。 
PATH=/usr/java1.2/bin:$PATH:. 
JAVA_HOME=/usr/java1.2 
TOMCAT_HOME=/home/jakarta-tomcat-3.2.1 
export PATH JAVA_HOME TOMCAT_HOME 
# vi shutdown.sh 
最後,在"BASEDIR=`dirname $0` "語句前嵌入如下內容。 
PATH=/usr/java1.2/bin:$PATH:. 
JAVA_HOME=/usr/java1.2 
TOMCAT_HOME=/home/jakarta-tomcat-3.2.1 
export PATH JAVA_HOME TOMCAT_HOME 
4.測試 
分別啟動Apache和Tomcat。 
# /home/apache-1.3.19/bin/apachectl start 
# /home/jakarta-tomcat-3.2.1/bin/startup.sh 
然後,編輯簡單的.jsp測試檔案。 
# vi /home/apache/-1.3.19/htdocs/test.jsp 
< html> 
< head> 
< title> This is a jsp test file! 
< /title> 
< /head> 
< body> 
< % out.print("This is a jsp test file!n"); %> 
< /body> 
< /html> 
最後,進行網頁瀏覽。 
---- 開啟瀏覽器,訪問該.jsp檔案: http://主機名稱(或IP地址)/test.jsp。若螢幕顯示如附圖所示的內容,表示運行正常,此時,可以正常運行JSP動態網頁檔案了。 

二、在Windows NT/2000平台上安裝 
---- 本文以Windows 2000平台為例。 
---- (一)應用環境 
---- 作業系統採用Windows 2000,應用環境為Java 1.2.2(假定已安裝在c:jdk-1.2.2上)和Winzip。 
---- (二)軟體包的下載與安裝 
---- Windows NT2000上的安裝比較簡單,應用軟體不必重新編譯,只下載網站上已經編譯好的軟體包即可。 
---- 1.下載地址 
---- 在 可下載編譯好的最新Apache軟體包apache_1.3.19-Windows32-no_src-r2.msi。 
---- 在 可下載mod_jk.zip。 
---- 在可下載jakarta-tomcat-3.2.1.zip。 
---- 2. 安裝 
---- 首先,雙擊"apache_1.3.19-Windows32-no_src-r2.msi",安裝Apache 服務。 
---- 然後,將"mod_jk.zip"解壓縮到Apache服務的"modules"子目錄下;最後,將"jakarta-tomcat-3.2.1.zip"解壓縮到C:目錄下。 
---- 3.參數配置 
---- (1)修改Apache服務的設定檔httpd.conf 
---- 注意: 本文只涉及與Tomcat有關的參數,其餘的參數設定可參考Apache的有關文檔資料。 
---- 首先用滑鼠點擊 "開始"*"程式 "*"apache httpd server"*"configure apache server"*"edit configuration"。 
---- 然後,在"Dynamic Shared Object (DSO) Support"部分嵌入如下內容。 
LoadModule jk_module modules/mod_jk.dll 
最後,在檔案尾部添加如下內容。 
JkWorkersFile c:jakarta-tomcat-3.2.1confworkers.properties 
JkLogFile c:jakarta-tomcat-3.2.1logsmod_jk.log 
JkLogLevel warn 
JkMount /*.jsp ajp13 
JkMount /servlet/* ajp13 
(2)配置Tomcat服務 
---- 對server.xml和workers.properties檔案的參數調整,讀者可參照Unix部分對應的段落。但讀者要注意,對於不同層次的目錄,Unix用"/"分隔,而Windows用""分隔。 
---- 分別編輯startup.bat和shutdown.bat檔案,在檔案的第2行嵌入如下內容。 
set TOMCAT_HOME=c:jakarta-tomcat-3.2.1 
set JAVA_HOME=c:jdk1.2.2 
set PATH=C:jdk1.2.2bin;.;%PATH%. 
4.測試 
參照Unix部分的對應段落進行測試。 
---- 本文只對apache/jk方式的配置和使用方法做了簡單介紹,在Tomcat的設定檔(如server.xml)中還有很多參數可根據實際情況進行調整,這裡不多介紹。有興趣的讀者可以參考設定檔中的提示資訊或網站上的有關資料,進行進一步的調整與測試。 
---- (閆鵬 作者地址:北京市西城區三裡河路58號國家資訊中心中經網公司,100045) 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.