• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Windows下Apache+Tomcat+MySQL+jsp+php的服務器整合配置經驗總結

    發布: 2007-7-04 13:34 | 作者: admin | 來源:  網友評論 | 查看: 12次 | 進入軟件測試論壇討論

    領測軟件測試網

    1.作者:moonsbird
    題目:Windows下Apache+Tomcat+MySQL+jsp+php的服務器整合配置經驗總結
    時間:2004.8.19
    最初發表于西南交通大學錦城驛站
    2.本文是作者學習幾年來學習jsp/配置服務器環境的經驗總結?梢赞D載,但請注明出處.

    開始學習jsp很久了,網上有許多關于jsp整合的例子,但存在著許多問題。
    對于Apache+Tomcat+MySQL+jsp+php的整合,針對不同的Tomcat和apache的版本,稍微有些區別。
    即使你E文很好,去看Tomcat和Apache的手冊,也不一定能完全整合成功。暑假在家,網速不像
    在交大那樣---老黃牛拉破車樣的慢,所以基于此作者查閱大量網上資料,汲其精華,寫這篇文
    章希望能為初學者提供方便,也可以作為高手的參考手冊。
    jsp是優秀的,它基于Java技術,利用JavaBean/Servlet制作動態網站,Java強大的面向對
    象編程使Jsp相對于php和asp有著得天獨厚的優勢。但學習jsp相對于php和asp來說是有難度的。
    我想原因之一就是jsp服務器環境的配置要棘手一些。對于動態網頁制作,在交大asp曾很長時
    間占據上風,不太多的“高手”(也許很多人認為使用jsp的是高手吧)使用jsp,交大比較成功的
    jsp網站如世紀星網(Tomcat)、網絡教育學院網站(Resin)、交大招生就業網(Tomcat),服務器是
    Linux 9,運行相對來說比較穩定可靠。Linux下的Apache和Tomcat整合我曾經發過一篇文章,需
    要的大家在錦城搜搜。linuxwindows下整合思想是相同的,利用apache來解析*.html/*.htm
    靜態網頁,當遇到*.jsp和servlet時,通過一個apache中的module把jsp頁面拋給Tomcat(或者
    resin)來處理,在linux下通過編譯來制作這個module,要麻煩一些,本文通過現成的win下的一
    個module來完成整合。
    廢話不說啦,下面開始整合:

    所需軟件
    (1) j2sdk-1_4_2-windows-i586.exe
    jdk的版本關系倒不是很大,不影響Apache和Tomcat的整合,配置環境變量時注意一些就行了.
    (2) apache_2.0.49-win32-x86-no_ssl.exe
    apache版本對整合影響不是太大,但最好利用此版本。
    (3) jakarta-tomcat-4.1.30.exe
    版本最好用這個版本,其他的我沒有試過,有可能會導致整合不成功。
    (3) php-4.3.3-Win32.zip
    是一個壓縮包,下載下來直接解壓就行了。
    (4) mod_jk.dll
    這個module是放到apache中的module中去的,利用它來使Tomcat和Apache之間通訊。
    (5) mysql-max-3.23.46a-win.zip
    數據庫mysql,其版本對整合影響不大.
    (6) jdbc驅動
    mysql的驅動程序,和數據庫連接時用
    以上軟件我就不把down的地址貼出來啦,去網上搜baidu、北大天網,只要用心找,應該問題
    不大,如果真的找不到,發信找我要吧。

    一.安裝j2sdk
    在Windows下,直接運行下載的j2sdk-1_4_1_01-windows-i586.exe文件,根據安裝向導安裝
    到一個目錄,例如安裝到d:\server\j2sdk
    1.配置環境變量:
    添加CLASSPATH變量
    變量值為
    ./;%CLASSPATH%;D:\server\j2sdk1.4.0\lib\dt.jar;d:\server\j2sdk1.4.0\lib\tools.jar;
    d:\server\j2sdk1.4.0\bin
    這個配置保證java運行時可以找到class類。
    2.添加JAVA_HOME變量,變量值為d:\server\j2sdk1.4.0
    3.在原來的path變量中,添加d:\server\j2sdk1.4.0\bin,這樣無論在何處運行java名令都行。
    重新啟動

    cmd進入dos,運行java和javac看有沒有反應,如果出現命令的幫助,那么java就安裝成功了
    也可以運行一個java小程序看看.

    public class test{
    public static void main(String args[]){
    System.out.println("看到這個說明java安裝成功!");
    }
    }
    把上以程序存放在test.java文件中,一定要是test.java才行,然后利用命令編譯
    javac test.java
    如果沒有錯誤,則說明編譯成功,如果有錯,在程序書寫正確的基礎上,剛說明java環境變量沒
    有配置好,剛重新配置。如果編譯成功,則運行:
    java test
    注意,不是java test.java!如果無誤,剛會打印出:

    看到這個說明java安裝成功!

    gxgx,jdk安裝成功啦!可以進行下一步.

    二.apache安裝
    1.運行apache_2.0.49-win32-x86-no_ssl.exe,一路點"確定"和"接受"就行,路徑選
    d:\server\apache group\apache2。
    此時apache已經安裝成功,且已運行,在IE中輸入http://localhost/可以看到
    apache的主頁。安裝成功!
    2.修改httpd.conf
    apache的配置文件是httpd.conf,位于apache根目錄的下的conf文件夾下
    (1).修改默認網站根目錄:
    在d:\server下建立文件夾www,以此作為網站的根目錄
    DocumentRoot "D:/server/Apache Group/Apache2/htdocs"
    改為DocumentRoot "D:/server/www
    (2).修改字符設置
    apache解析中文網頁時會產生亂碼,
    修改AddDefaultCharset ISO-8859-1為AddDefaultCharset GB2312
    (3).修改默認主頁
    當訪問目錄時,apache會自動導入的主頁,優先級以先后順序為準
    把DirectoryIndex index.html index.html.var改為
    DirectoryIndex index.html index.jsp index.php default.jsp default.php index.html.var
    (4).設置錯誤頁面
    這樣對于你的網站會更安全些,如果沒設置,別人在你的網址后隨便輸入一個路徑,會顯示404錯
    誤,并且會顯示你的服務器版本號,服務器配置一目了然,為了避免這種情況,可以設置錯誤頁面。
    當出現404錯誤,即找不到網頁時,把訪問者導入到一個錯誤頁面
    找到:
    #
    # Customizable error responses come in three flavors:
    # 1) plain text 2) local redirects 3) external redirects
    #
    # Some examples:
    #ErrorDocument 500 "The server made a boo boo."
    #ErrorDocument 404 /missing.html
    #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
    #ErrorDocument 402 http://www.example.com/subscription_info.html
    #
    httpd.conf中的這一部分,#ErrorDocument 404 /missing.html
    一行修改為ErrorDocument 404 /error/noFile.htm,其中noFile.htm為d:\server\www\error\下一個錯誤文件,需
    要你自己建立。當發生404錯誤時,進入noFile.htm頁面,可以提示網頁沒有找到。這樣就不可能看到
    你的服務器軟件信息了。也可以設置其它的錯誤導向的頁面,具體http響應錯誤編號請查閱相關資料。
    重新啟動apache,如果沒意外,此時已經安裝成功,把靜態頁面放到d:\server\www\error\目錄下,看能不能成功解析。
    隨便輸入一個:http://localhost/sdagasgdasasg.htm,看是不是導向你設置的404錯誤,即noFile.htm錯誤頁面.
    成功了吧!
    關于apache中其他參數的意義,我就不說啦,你可以去網上查,其實最好的方法是看httpd.conf中的注釋部
    分,已經說得很清楚啦。
    好啦,到此apache安裝成功,你可以休息一下,聽首音樂,開始下一步的安裝:)

    三.php安裝
    解壓php-4.3.3-Win32.zip,到d:\server\php目錄下.下配置PHP和Apache,使之能解析php程序。
    將d:\server\php\目錄中的“php.ini-dist”改名“php.ini”,并復制到C:\windows\system32
    (Win2K目錄為:C:\winnt\system32)下,在apache的配置文件httpd.conf中下入以下幾行,使之
    支持php.
    ScriptAlias /php/ "d:/server/php/"
    AddType application/x-httpd-php .php3
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .phtml
    Action application/x-httpd-php "/php/php.exe"
    在d:\server\www下建立網頁:index.php,內容為:
    <html>
    <head><title>php測試</title></head>
    <?php
    phpinfo();
    ?>
    </html>
    用文本編輯器編輯好為存為index.php,重新啟動apache,在IE中輸入http://localhost/index.php,如果出現php的
    環境變量,說明php,安裝成功,如果不能解析<?php phpinfo(); ?>中的部分,則說明沒有成功安裝。

    四.Tomcat的安裝
    我用的是jakarta-tomcat-4.1.30.exe安裝文件,在windows下一路點"確定"就行了,比較簡單,安裝目錄為
    d:\server\tomcat
    下面設置環境變量:
    同jdk的環境變量,添加變量TOMCAT_HOME,值為d:\server\tomcat;增加變量CATALINA_HOME,值為
    d:\tomcat\server,在path變量中加入d:\server\tomcat\bin
    下面啟動tomcat,運行tomcat目錄下的,bin/startup.bat文件就行啦,出現tomcat運行控制臺,tomcat成功
    啟動.
    在IE中輸入http://localhost:8080/,看到大貓的吧,則tomcat安裝成功.

    五.安裝MySQL

    第一步:解壓 mysql-max-3.23.46a-win.zip,運行mysql安裝文件,把mysql安裝到d:\server\mysql
    第二步:在環境變量path中加入 d:\server\mysql\bin
    第三步:進入d:\server\mysql\bin目錄,運行winmysqladmin,剛會出現對話框,設置mysql用戶密碼,假設
    帳號為:root 密碼為:123
    第四步:進入dos,進入mysql/bin下,運行以下命令打開mysql
    mysqld-nt --standalone
    則mysql開啟
    然后運行:
    mysql
    如果開啟,則出現以下文字:
    Welcome to the MySQL monitor. Commonds end with ; or \g.
    Your MySQL connection id is 1 to server version: 3.23.46-nt
    Type ''help;'' or ''\h'' for help. Type ''\c'' to clear the buffer.
    mysql>
    注意:此時mysql沒有設置密碼,為了不讓別人進入你的數據庫,請為mysql設置密碼,具體操作請參閱mysql
    的中文說明文檔。
    至此,mysql安裝成功!

    六.安裝MySQL的驅動類jdbc
    解開jdbc驅動包,把里面的org文件夾復制到jsp可以找到的位置就行啦?梢允莟omcat的根目錄common/classes
    文件夾下,也可以是jsp網站class類WEB-INF/class/下。當加載驅動程序時,以便能找到相關的類;蛘甙裫dbc包
    的路徑加入到classpath變量中。

    七.Tomcat和Apache的整合配置
    Tomcat只是一個用來解析*.jsp文件的容器,它不是服務器,其解析靜態htm/html文件的能力遠遠不如apache,
    整合后在同一個端口使apache來解析靜態網頁,而遇到*.jsp網頁時,交由tomcat來解析.
    第一步:把 mod_jk.dll復制到apache根目錄module文件夾下。
    第二步:配置APACHE

    打開apache根目錄下conf\httpd.conf

    添加以下語句:

    #------------------------------------------

    #connecting to tomcat using ajp13
    LoadModule jk_module modules/mod_jk.dll
    JkWorkersFile "d:/server/tomcat/conf/workers.properties"
    JkMount /servlet/* ajp13
    JkMount /*.jsp ajp13


    #-----------------------------------------------------

    注意:以上語句的基本意思是:
    loadModule一行:加載mod_jk.dll動態鏈接庫模塊,使之與tomcat通訊
    jkWorkersFile:指明工作時tomcat相關文件workers.properties位置
    jkMount:兩行指明當遇到*.jsp和servlet時,交由ajp13協議,繼而轉發給tomcat處理。
    第三步:建立workers.properties文件,在tomcat根目錄conf下建立workers.properties文件,內容為:
    workers.tomcat_home=d:\server\tomcat
    workers.java_home=d:\server\j2sdk1.4.0
    ps=\
    # worker.list=ajp13
    worker.list=ajp12,ajp13

    worker.ajp12.port=8007
    worker.ajp12.host=localhost
    worker.ajp12.type=ajp12
    worker.ajp12.lbfactor=1

    worker.ajp13.port=8009
    worker.ajp13.host=localhost
    worker.ajp13.type=ajp13
    worker.ajp13.lbfactor=1

    worker.loadbalancer.type=lb

    worker.loadbalancer.balanced_workers=ajp12, ajp13
    worker.inprocess.type=jni
    worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes
    worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar

    worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar

    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

    worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar

    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)

    worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll


    worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout

    worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr

    worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)

    注意以上文件第一、二行填上tomcat和jdk的相關目錄.

    第四步:配置tomca/conf下的server.xml文件,這個是tomcat的主要配置文件,重要配置如下:
    1.虛擬目錄設置:
    找到下面內容:
    <Host name="localhost" debug="0" appBase="/webapps"
    unpackWARs="true" autoDeploy="true">
    修改為:
    <Host name="localhost" debug="0" appBase="d:/server/www"
    unpackWARs="true" autoDeploy="true">
    使tomcat主目錄為d:\server\www.
    找到下面內容:
    <Context path="examples" docBase="/examples" debug="0"
    reloadable="true" crossContext="true">
    修改為
    <Context path="" docBase="/" debug="0"
    reloadable="true" crossContext="true">
    這個我的理解是應該是使tomcat根目錄下的jsp作為一個虛擬主機吧.
    2.設置tomcat監聽端口,找到下面的內容:
    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
    port="8080" minProcessors="5" maxProcessors="75"
    enableLookups="true" redirectPort="8443"
    acceptCount="100" debug="0" connectionTimeout="0"
    useURIValidationHack="false" disableUploadTimeout="true" />
    默認的端口是8080,但這個大家都知道,最好修改一下,假設修改為:8123,則如下:
    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
    port="8123" minProcessors="5" maxProcessors="75"
    enableLookups="true" redirectPort="8443"
    acceptCount="100" debug="0" connectionTimeout="0"
    useURIValidationHack="false" disableUploadTimeout="true" />
    3.找到以下8009端口的地方,這個很重要,通過8009,tomcat與apache互相通訊,如果下面的部分
    被<!---->注釋掉,一定要把<!---->去掉.
    <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
    port="8009" minProcessors="5" maxProcessors="75"
    enableLookups="true" redirectPort="8443"
    acceptCount="10" debug="0" connectionTimeout="0"
    useURIValidationHack="false"
    protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
    第五步:配置tomcat的conf/web.xml文件:
    類似于apache下404錯誤頁面的配置,在最后</web-app>一行之前加入以下內容:

    <error-page>
    <error-code>404</error-code>
    <location>/error/noFile.htm</location>
    </error-page>
    <error-page>
    <exception-type>java.lang.NullPointerException</exception-type>
    <location>/error/error.jsp</location>
    </error-page>
    第一個<error-page></error-page>之間的是404未找到jsp網頁的錯誤導向頁面,使之發生404錯誤時,
    網頁導向至/error/noFile.htm,也可以用類似方法添加其多的錯誤代碼導向頁面。
    第二個<error-page></error-page>之間的是當jsp網頁出現java.lang.NullPointerException導常時
    導向至/error/error.jsp錯誤頁面。那么需要在第個jsp網頁中加入以下內容:
    <%@ page errorPage="/error/error.jsp" %>
    典型的error.jsp錯誤頁面的程序寫法如下:

    <%@ page contentType="text/html;charset=GB2312"%>
    <%@ page isErrorPage="true"%>
    <html>
    <head><title>錯誤頁面</title></head>

    <body>
    出錯了:</p> 錯誤信息: <%= exception.getMessage() %><br>

    Stack Trace is : <pre><font color="red"><%
    java.io.CharArrayWriter cw = new java.io.CharArrayWriter();
    java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
    exception.printStackTrace(pw);
    out.println(cw.toString());
    %></font></pre>
    </body>
    </html>
    當出現NullPointerException異常時tomcat會把網頁導入到error.jsp,且會打印出出錯信息。
    第五步主要是安全考慮,在正常情況下,如果找不到網頁即出現404錯誤或者jsp程序出錯,在客戶端
    會列舉出類似于如下的信息(以tomcat為例,resin類似):
    HTTP Status 404 - /sdags.jsp

    --------------------------------------------------------------------------------

    type Status report

    message /sdags.jsp

    description The requested resource (/sdags.jsp) is not available.


    --------------------------------------------------------------------------------

    Apache Tomcat/5.0.19

    這樣服務器版本會被別人看到,如果完成第五步的配置,就不會出現這種情況.
    第六步:配置httpd.conf文件
    這種方法把tomcat和apache的根目錄設置為同一目錄,但是必須限制客戶對目錄下一些文件的訪問,比如存入class
    的web-inf,在httpd.conf下添加以下代碼:
    #deny the access to WEB-INF
    <Directory ~ "/WEB-INF/">
    Order allow,deny
    Deny from all
    </Directory>
    這樣,當試圖記問http://localhost/web-inf/時,apache將會拒絕.

    到此為至,tomcat和apache的整合就完成啦.重新啟動tomcat和apache,
    把jsp網頁放到d:\server\www\下,例如:
    <html>
    <h1>JSP test<hr>

    <%out.println("Hello World!");%>

    </html>
    存為index.jsp,在IE中輸入http://localhost:8123/index.jsp
    如果出現了
    Hello World!
    剛說明tomcat運行正常,在IE中輸入http://localhost/index.jsp,如果也出現
    Hello World!
    恭喜你!整合成功啦,你在jsp漫長艱辛的道路上邁出了一大步~!

    以上整合文章我是在倉促的的時間完成的,可能有些錯誤;蚩紤]不周的地方,但是總體應該沒
    太大問題,我是反復使用這種方法整合成功的。如果有疑問,可以直接給我聯系.
    moonsbird: mail:pengw97@163.com

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>