Win2K下Apache2+TomCat5.0整合解決方案
Win2K下Apache2.0+TomCat5.0解決方案
操作系統:windows 2000 professional 中文版+sp4
java 環境:j2sdk1.4.2_01 JAVA_HOME= C:/j2sdk1.4.2_01
apache 2.0.48 for win32:apache_2.0.48-win32-x86-no_ssl.msi下載地址
http://archive.apache.org/dist/httpd/
tomcat 5.0.16 for win32:jakarta-tomcat-5.0.16.exe下載地址
http://jakarta.apache.org/site/binindex.cgi
jk2 模塊 for win32: mod_jk2-2.0.43.dll 下載地址
http://apache.scarlet.be/jakarta/tomcat-connectors/jk2/binaries/win32/
以上軟件的下載網址:http://www.apache.org
1. 安裝並測試Apache和TomCat5.0;
注意事項: Apache默認端口爲80,與IIS衝突,更改端口或關閉IIS,
TomCat安裝完後配置環境變量。
2. 開始整合;
首先,將文件mod_jk2.so 複製到Apache 的模塊目錄(%Apache%/Apache2/modules)中。
備份Tomcat 和Apache 的缺省配置文件,以防不測。
其次,編輯配置文件。具體的配置文件有四個,
它們分別是:httpd.conf、jk2.properties、server.xml、workers2.properties。
a、 修改ApacheRoot/Apache2/conf/httpd.conf 文件
1>修改web 主目錄,即將
DocumentRoot "D:/websrv/Apache2/htdocs" 改爲自己的web主目錄
eg: DocumentRoot "D:/websrv/myweb"
2>修改web 主目錄對應的目錄,即將
改爲
eg:
此目錄塊要與DocumentRoot的路徑對應,塊中的語法是對此塊對應Web主目錄的操作權限設置。
3>修改目錄缺省的web 文件,即將
DirectoryIndex index.html index.html.var 改爲
eg: DirectoryIndex index.html index.html.var index.jsp
語法說明:當向Apache 發出請求時容器將順次去找index.html,如果沒有,將接着找index.htm,最後找index.jsp。
4>修改cgi-bin 所在目錄,即將
ScriptAlias /cgi-bin/ "D:/websrv/Apache2/cgi-bin/"改爲
ScriptAlias /cgi-bin/ "D:/websrv/myweb/cgi-bin/"
改爲
如果程序中需要用到cgi時修改以上兩處。
5>添加指定的虛擬目錄(別名),及其對應目錄的屬性
#這是測試用的文件夾,能執行jsp 文件。
Alias /jj/ "D:/websrv/myweb/jj/"
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html
AddHandler type-map var
Order allow,deny
Allow from all
Alias /chengxin/ "D:/websrv/myweb/chengxin/"
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html
AddHandler type-map var
Order allow,deny
Allow from all
#在web主目錄myweb中添加了兩個測試應用程序jj和chengxin
語法說明:
Alias /web程序別名/ "程序根目錄/" ##別忘啦最後有“/”
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html 對此程序的具體操作權限設置
AddHandler type-map var
Order allow,deny
Allow from all
注意:
程序根目錄必須和%Tomcat5%/conf/server.xml中配置的虛擬目錄相吻合。
6>修改缺省的字符集,使之支持中文,即將
AddDefaultCharset ISO-8859-1 改爲
AddDefaultCharset GB2312
7>在文件最後添加如下內容,以加載jk2 模塊
LoadModule jk2_module modules/mod_jk2.so
b、 修改Tomcat5Root/conf/jk2.properties 文件
在文件最後添加如下內容,打開shm 文件設置
#Shared memory directive
shm.file=ApacheRoot/Apache2/logs/jk2.shm
可以在ApacheRoot/Apache2/logs/下新建jk2.shm文件
c、 修改Tomcat5Root/conf/server.xml 文件
在apache 中對應指定的虛擬目錄,server.xml 中也應指定,所以在
的下面添加
d、 修改ApacheRoot/Apache2/conf/workers2.properties 文件
注意:如果此文件不存在,則在目錄ApacheRoot /Apache2/conf 下新建一個。
添加如下內容
#***************************************************************************
# only at beginnin. In production uncomment it out 必須在文件開頭定義
[logger.apache2]
level=DEBUG
#define the shared memory file 定義shm 文件
[shm]
file=ApacheRoot /Apache2/logs/jk2.shm #指向Apache文件下的logs/jk2.shm文件
size=1048576
# Define the communication channel 定義信道
[channel.socket:localhost :8009]
tomcatId=localhost :8009
# define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009
#jk2 的狀況,可通過http://localhost/status 查看
[status:]
info=Status worker, displays runtime information
channel=channel.socket:localhost:8009
# Uri mapping Uri 映射
#[uri:/path/*]會把http://域名/path/裏的所有請求發給tomcat。
#而[uri:/path/*.jsp]會把http://域名/path 裏的jsp 文件請求發給tomcat 處理。
#此path 可以是apache 的虛擬目錄,也可以是tomcat 的虛擬目錄,
#還可以是tomcat 的物理目錄,這兒是配置jk2 的關鍵,試試就知道了。
[uri:/status/*]
worker=status:localhost:8009
group=status:
#[uri:/*] ###表示web主目錄下的所有請求都給TomCat處理
[uri:/jj/*.jsp] ###表示web主目錄下的jj程序中所有jsp文件請求都給TomCat處理
[uri:/chengxin/*] ###表示web主目錄下的changxin程序中所有請求都給TomCat處理
#[uri:/jsp/*.jsp]
worker=ajp13:localhost:8009
info=Map the whole webapp
注意:此文件中的8009端口設置必須與TomCatRoot/conf/server.xml文件中
對應。
到此已基本配置完成。
如果要通過配置虛擬主機的方法來訪問還要進行以下配置:
以下配置的是一個IP對應多個域名的方法。
1> 在apacheRoot/apache2/conf/httpd.conf修改
Listen 80 #監聽端口爲80
#NameVirtualHost *:80 爲
NameVirtualHost 192.168.1.208:80
##################################Ip影射到程序主目
#管理員Email
ServerAdmin [email protected]
#jj web程序目錄
DocumentRoot d:/websrv/myweb/jj
#域名
ServerName ccjg.test.com
#日誌
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
#多個域名對應一個程序是可以在此添加
ServerAlias ccjg.test.gov.cn
#注意:
#每在ServerName或ServerAlias添加一個域名時相應的就應該在
#TomcatRoot/conf/server.xml文件中添加相應的塊標記與之對應
#如果要在本機測試則在C:/WINNT/system32/drivers/etc/hosts須添加相應
#的IP對應於你的所設置域名,域名解析時用到
#eg: 192.168.1.208 ccjg.test.gov.cn
# 192.168.1.208 ccjg.test.com
ServerAdmin [email protected]
#chengxin web程序目錄
DocumentRoot d:/websrv/myweb/chengxin
ServerName chengxin.test.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
ServerAlias ccjg.test.gov.cn
以上是一個IP對應兩個web程序。
2> 在TomCatRoot/conf/server.xml中添加對應的塊
到此OK
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.