一、前期準備情況
1。一個安裝好的WIN2000伺服器,注意:如果預裝了IIS,請先將IIS服務停掉或禁用。
2。下栽軟體
APACHE:版本:1.3.22 ——apache_1.3.22-win32-x86.msi
JDK:版本: 1.3 ——j2sdk1_3_0-win.exe
PHP: 版本: 4.0.4 ——php4.0.4pl1-win32.zip
MYSQL: 版本:3.23.32 ——mysql-3.23.32-win.zip
TOMCAT:版本: 4.0.4 ——jakarta-tomcat-4.0.4.exe
Mod_jk:這是Jakarta組織開發的使Apache支援Tomcat的外掛程式,比ApacheJserv更強大,因為ApacheJserv
只能用在Apache上,而不能用在別的WebServer 上,Mod_jk可以和很多伺服器搭配起來用。
:http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.3/bin/win32/i386/
(如果在提供的網址內找不到相應的軟體,請在各大網上軟體庫找,一般都有!或發郵件至apollo@risesun-cn.com)
3。準備好足夠的乾糧和水,作好反覆安裝和重新啟動的心理準備,但只要細心按照要求去做,一次成功不是什麼
難事!
4。做一口深呼吸,別在想MM了!開始安裝!
二、安裝開始
1。APACHE安裝
第一步:運行apache_1.3.22-win32-x86.msi,一路點確定和接受就行,基本比較傻瓜,為了方便期間和符合我
的習慣我安裝的預設路徑是 c:\ ,這樣就安裝在C盤下的APACHE的路徑下,同時預設域為root.dev。
第二步:(我在這裡作了一個虛擬機器主機,此步可以不做,根據你自己的需求)
編輯c:\apache\conf\httpd.conf
找到 #NameVirtualHost *
修改為 NameVirtualHost 192.168.0.16 #注意這個IP為你自己主機設的IP
找到 ServerName root.dev
修改為 #ServerName root.dev
添加
<VirtualHost 192.168.0.16>
ServerAdmin root@localhost
ServerName root.dev
DocumentRoot c:/apache/htdocs
ErrorLog c:/apache/logs/error_log
TransferLog c:/apache/logs/access_log
ScriptAlias /cgi-bin c:/apache/cgi-bin
</VirtualHost>
第三步:將檔案名稱 c:\apache\htdocs\index.html.en 改為c:\apache\htdocs\index.html
第四步:重新啟動,訪問 http://root.dev 瀏覽正常,顯示APACHE歡迎頁面
------------小小的成功!可以喝口水了!----------------------------
2。MYSQL安裝
第一步: 解壓 mysql-3.23.32-win.zip 到目錄 D:\MYSQL
第二步: 進入D:\MYSQL 運行SETUP.EXE 一路斷行符號,預設安裝到 C:\MYSQL
------------這一步應該沒有什麼問題!-------------------------------
3。PHP安裝
第一步: 解壓 php4.0.4pl1-win32.zip 到目錄 D:\PHP
第二步: 將D:\PHP下拷貝到C盤根目錄下
第三步: 進入C:\PHP ,開始配置PHP
將檔案名稱 php.ini-dist 改為 php.ini
同時拷貝 php.ini 和 php4ts.dll 到WIN2000的系統安裝目錄下
的 system32和system目錄下 (很重要,別忘了)
再次修改APACHE的設定檔httpd.conf (忘了吧!在c:\apache\conf\httpd.conf)
添加:
LoadModule php4_module c:/php/sapi/php4apache.dll
AddType application/x-httpd-php .php4
ScriptAlias /php4/ "C:/php/"
Action application/x-httpd-php4 "/php4/php.exe"
AddType application/x-httpd-php4 .php
第四步: 重新啟動系統
第五步: 測試
編寫測試檔案 info.php (拷貝到目錄 c:\apache\htdocs\ 下)
檔案內容:(就一行)
<? phpinfo(); ?>
訪問: http://localhost/info.php 或 http://root.dev/info.php
如果看到PHP的歡迎測試頁面,說明安裝成功!
到目前為止,你的系統已經可以運行PHP程式了!
你已經配置好了 win2000+apache+php+mysql
----------------成功在望!吃些乾糧,想5分鐘MM,上趟廁所,或者騷擾一下隔壁的大哥---------
---如果你能確定2件事就可以往下進行了:
1.你的智商確實比中國足協的那堆廢物高
2.真的很想進入JSP的世界遨遊
4。JDK的安裝
第一步:直接運行 j2sdk1_3_0-win.exe,一路斷行符號安裝,我這裡預設的安裝路徑為d:\jdk1.3
第二步:配置環境變數
在我的電腦上點擊滑鼠右鍵-屬性-點選進階-點選環境變數
彈出環境變數對話方塊,建立以下變數名和值:
-------------------------------------
變數名:path
變數值:d:\jdk1.3\bin
變數名:JAVA_HOME
變數值:d:\jdk1.3
變數名:CLASSPATH
變數值:.\;d:\jdk1.3\lib\dt.jar;d:\jdk1.3\lib\tools.jar;
第三步:重新啟動電腦使配置的環境變數生效
5。TOMCAT安裝
第一步:直接運行安裝jakarta-tomcat-4.0.4.exe,我這裡預設的安裝路徑是c:\Apache Tomcat 4.0
這時如果單獨啟動TOMCAT(到Tomca目錄下運行startup.bat啟動Tomcat或在功能表列運行start
tomcat),就已經可以運行JSP檔案了,但是我們還沒有將APACHE和TOMCAT整合在一起,因為
雖然TOMCAT有內建的一個APACHE的HTTP服務,但是他僅僅對JSP程式體現出比較好的執行效率
和效能,對於靜態頁面的處理速度遠不如APACHE,所以為了一個完美的WEB系統,我們要將
APACHE和TOMCAT整合在一起!
(下面就是整合他們的具體配置步驟,請注意仔細認真,我搞了1天才終於搞定!)
第二步:先配置APACHE
開啟c:\apache\conf\httpd.conf
添加以下語句:
#------------------------------------------
LoadModule jk_module libexec/mod_jk.dll
AddModule mod_jk.c
JkWorkersFile "c:\Apache Tomcat 4.0\conf\worker.properties"
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
#-----------------------------------------------------
注意:以上語句的基本意思是:
第一、二句:指定APACHE和TOMCAT串連外掛程式的位置和名稱
第三句:指出mod_jk工作所需要的工作檔案的位置
第七、八句:是將所有和jsp和servlet的請求通過Apj13的協議送給Tomcat,讓Tomcat來處理
第三步:將下載的mod_jk.dllcopy到安裝Apache目錄下的libexec下就可以了
第四步:TOMCAT配置
首先是在c:\Apache Tomcat4.0\conf目錄下建一個worker.properties
檔案內容如下:
#----------------------------------------------------------
# $Header: /home/cvs/jakarta-tomcat/src/etc/Attic/workers.properties,v 1.3.2.2 2000/10/16 01:59:22 larryi Exp $
# $Revision: 1.3.2.2 $
# $Date: 2000/10/16 01:59:22 $
#
#
# workers.properties -
#
# This file provides jk derived plugins with with the needed information to
# connect to the different tomcat workers.
#
# As a general note, the characters $( and ) are used internally to define
# macros. Do not use them in your own configuration!!!
#
# Whenever you see a set of lines such as:
# x=value
# y=$(x)something
#
# the final value for y will be valuesomething
#
# Normaly all you will need to modify is the first properties, i.e.
# workers.tomcat_home, workers.java_home and ps. Most of the configuration
# is derived from these.
#
# When you are done updating workers.tomcat_home, workers.java_home and ps
# you should have 3 workers configured:
#
# - An ajp12 worker that connects to localhost:8007
# - An ajp13 worker that connects to localhost:8009
# - A jni inprocess worker.
# - A load balancer worker
#
# However by default the plugins will only use the ajp12 worker. To have
# the plugins use other workers you should modify the worker.list property.
#
#
#
# workers.tomcat_home should point to the location where you
# installed tomcat. This is where you have your conf, webapps and lib
# directories.
#
workers.tomcat_home=c:\Apache Tomcat 4.0
#
# workers.java_home should point to your Java installation. Normally
# you should have a bin and lib directories beneath it.
#
workers.java_home=d:\jdk1.3
#
# You should configure your environment slash... ps= on NT and / on UNIX
# and maybe something different elsewhere.
#
ps=\
# ps=/
#
#------ ADVANCED MODE ------------------------------------------------
#---------------------------------------------------------------------
#
#
#------ DEFAULT worket list ------------------------------------------
#---------------------------------------------------------------------
#
#
# The workers that your plugins should create and work with
#
worker.list=ajp12, ajp13
#
#------ DEFAULT ajp12 WORKER DEFINITION ------------------------------
#---------------------------------------------------------------------
#
#
# Defining a worker named ajp12 and of type ajp12
# Note that the name and the type do not have to match.
#
worker.ajp12.port=8007
worker.ajp12.host=localhost
worker.ajp12.type=ajp12
#
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
# ----> lbfactor must be > 0
# ----> Low lbfactor means less work done by the worker.
worker.ajp12.lbfactor=1
#
#------ DEFAULT ajp13 WORKER DEFINITION ------------------------------
#---------------------------------------------------------------------
#
#
# Defining a worker named ajp13 and of type ajp13
# Note that the name and the type do not have to match.
#
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
#
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
# ----> lbfactor must be > 0
# ----> Low lbfactor means less work done by the worker.
worker.ajp13.lbfactor=1
#
# Specify the size of the open connection cache.
#worker.ajp13.cachesize
#
#------ DEFAULT LOAD BALANCER WORKER DEFINITION ----------------------
#---------------------------------------------------------------------
#
#
# The loadbalancer (type lb) workers perform wighted round-robin
# load balancing with sticky sessions.
# Note:
# ----> If a worker dies, the load balancer will check its state
# once in a while. Until then all work is redirected to peer
# workers.
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=ajp12, ajp13
#
#------ DEFAULT JNI WORKER DEFINITION---------------------------------
#---------------------------------------------------------------------
#
#
# Defining a worker named inprocess and of type jni
# Note that the name and the type do not have to match.
#
worker.inprocess.type=jni
#
#------ CLASSPATH DEFINITION -----------------------------------------
#---------------------------------------------------------------------
#
#
# Additional class path components.
#
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes
#
# The XML parser provided with Tomcat
#
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar
#
# Tomcat`s implementation
#
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar
#
# Javac as available from Java2SE
#
worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar
#
# Setting the command line for tomcat
# Note: The cmd_line string may not contain spaces.
#
worker.inprocess.cmd_line=-config
worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml
worker.inprocess.cmd_line=-home
worker.inprocess.cmd_line=$(workers.tomcat_home)
#
# The JVM that we are about to use
#
# This is for Java2
#
worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll
#
# And this is for jdk1.1.X
#
#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)bin$(ps)javai.dll
#
#
# Setting the place for the stdout and stderr of tomcat
#
worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout
worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr
#
# Setting the tomcat.home Java property
#
worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)
#
# Java system properties
#
# worker.inprocess.sysprops=java.compiler=NONE
# worker.inprocess.sysprops=myprop=mypropvalue
#
# Additional path components.
#
# worker.inprocess.ld_path=d:$(ps)SQLLIB$(ps)bin
#
#--------------------------------------設定檔完畢-------------------------------------
在這個檔案中需要注意的是要修改只有兩個地方,一個是workers.tomcat_home,
這是指定Tomcat工作的目錄,另外一個是workers.java_home,這是指定Jdk的目
錄,大家可以做適當修改!我這裡的配置沒有修改,都是符合我安裝系統的配置!
其次,配置TOMCAT核心檔案,開啟 c:\Apache Tomcat4.0\conf\server.xml
修改如下:
將<!-- Define an AJP 1.3 Connector on port 8009 -->
<!--
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8009" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0"/>
-->
的<!-- --> 去掉,這句話熟悉XML的人都知道它是注釋,因為預設的Tomcat4
是沒有啟用Apj13的8009的連接埠即mod_jk所使用,修改後如下:
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8009" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0"/>
然後儲存,現在你的Tomcat和Apache的配置基本完成了。
第五步:所有配置基本完成,重新啟動電腦,開始整體測試!
測試:大家首先啟動Apache,然後在瀏覽器裡輸入http://localhost,如果能看
到Apache的歡迎頁面,那麼恭喜您,第一步成功了。然後回到Tomca目錄下
運行startup.bat啟動Tomcat,再開啟瀏覽器輸入:http://localhost:8080/
如果看到可愛的Tomcat,那麼恭喜您,Tomcat也沒有問題,最後最重要的是
Apache下可以解釋jsp和Servlet,把下面的代碼copy到文字編輯器中命名為
hello.jsp,
內容如下:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<%String str="Hello World!";%>
<%str=str+"你好";%>
<%=str%>
</body>
</html>
將它儲存到C:\Apache Tomcat 4.0\webapps\ROOT下,然後在瀏覽器裡輸入
http://localhost/hello.jsp如果看到了Hello,那麼您的確成功了。
------------------至此你已經大功告成,可以哼一個小曲了--------------------------
我的這個配置文檔是經過考驗,確實可以正常通過並啟動並執行,希望能給你有所協助,如果在進
行過程中有任何問題,請通知我!
我的QQ:5359496
EMAIL:apollo@risesun-cn.com
其次我再闡述兩個問題:
1。由於我在配置APACHE中使用了虛擬機器主機,所以訪問地址可以是:
http://localhost和http://root.dev,但是如果想http://root.dev訪問成功的話,請在
瀏覽器裡做如下設定:
INTERNET選項-串連-區域網路設定
選擇 “使用Proxy 伺服器”,地址:192.168.0.16 (寫你主機的IP) 連接埠:80
2。對於APACHE主機下訪問的JSP檔案,實際上物理上不存在與APACHE的主機上,而是存在在
TOMCAT的主機目錄裡,例如:
http://localhost/hello.jsp 中hello.jsp檔案實際不在 c:\apache\htdocs\下,而在
C:\Apache Tomcat 4.0\webapps\ROOT 下。這點請注意,不要混淆概念!