<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Believe it,do it!

    Ideal is the beacon. Without ideal, there is no secure direction; without direction ,there is no life.
    理想是指路明燈。沒有理想,就沒有堅定的方向;沒有方向,就沒有生活。
    CTRL+T eclipse
    posts - 35, comments - 3, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Apache整合Tomcat

    Posted on 2012-02-08 19:30 三羽 閱讀(1168) 評論(0)  編輯  收藏

     

    1           前言

    最近有個需要我的團隊開發一個BBS,當然我們不會自己去開發,因為現在成熟的BBS比比皆是,就拿Discuz來說好了,應該是目前國內比較的好的版本了吧。大家可以打開http://www.discuz.net/這個網址來訪問他們的論壇,現在成熟的論壇當然是PHP的,網站上有很多的資源可以下來,比如搭建的用戶手冊啦,都寫的非常的不錯,那我為什么還要寫這個文檔呢,因為我發現沒有基于apache下面的用戶手冊,因為我們已經給用戶開發了一套系統是基于J2EE的,運行在Tomcat下面,當然Tomcat無法支持PHP,所以我一定要把這個論壇部署apache下面,這樣能形成apache+tomcat+j2ee+php的環境即能支持java相關web技術的訪問,又能支持phpweb訪問,這個就是我的目的。然后我就查閱了相關的資料來搭建這個環境,中間遇到了非常多的問題,提出來跟大家說,希望能給大家一點點的幫助,能給一些自己想動手搭建apache下面論壇的朋友一點幫助,寫的不好的地方往見諒,好了廢話不說了,我們現在就開始。

     

    2           前期準備

    搭建BBS之前所需要準備的軟件:

    (1)       PHP

    官方下載的網址:http://snaps.php.net/win32/php5.2-win32-200808060430.zip

     

    (2)       Mysql

    官方下載的網址:http://dev.mysql.com/downloads/

    或者百度去搜索mysql,我這里給出了華軍的下載:http://www.onlinedown.net/soft/3573.htm

     

    (3)       Jdktomcat

    這里先不寫了,因為我這里搭建論壇,至于想整合的人,應該這2個都有。

    Tomcat下載地址:http://apache.mirror.phpchina.co ... e-tomcat-6.0.16.zip

    Jdk下載地址:http://cds.sun.com/is-bin/INTERS ... -windows-i586-p.exe

    (4)       Apache

    官方下載的網址:

    華軍的下載:http://www.onlinedown.net/soft/11528.htm

     

    (5)       Discuz! 6.1.0_UC1.0.0 整合安裝包【20080725

    下載的網址:http://download.comsenz.com/Discuz/6.1.0/Discuz610_UC100_GBK.zip

    直接下載這個DiscuzUCenter Home合在一起的,裝起來特別的方便。

    (6)       UCenter Home 使用手冊正式發布

    下載的網址:http://dz.s18.mydiscuz.com/doc/UCenter_Home_usersguide.zip

    強烈建議先看這個用戶手冊。

     

    系統約定

    環境軟件下載后存放位置:X:/Server_Tools

    環境軟件安裝位置:X:/Server_Core

    PHP安裝位置:X:/Server_Core/PHP

    MySQL安裝位置:X:/Server_Core/MySQL

    Apache網站站點根目錄:X:/wwwroot

    MySQL 數據庫位置:X:/Database

    Apache安裝位置:X:/ Server_Core/apache

    這個可以跟用戶手冊上一樣。

     

    3           安裝

    3.1        安裝apache

    安裝成功,且已運行,在IE中輸入http://localhost/可以看到
    apache
    的主頁。安裝成功!

    接下來就需要配置httpd.conf文件, apache的配置文件是httpd.conf,位于apache根目錄的下的conf文件夾下

    (1).修改默認網站根目錄:
    X:/下建立文件夾wwwroot,以此作為網站的根目錄
    DocumentRoot "X:/
     Server_Core /Apache Group/Apache2/htdocs"
    改為DocumentRoot "X:/wwwroot"

    注意:Apache修改DocumentRoot后訪問頁面出現403錯誤,解決辦法如下:

    修改Apache配置文件httpd.conf中的:

    <Directory />
         Options FollowSymLinks
         AllowOverride None
         Order deny,allow
         Deny from all
         Satisfy all
    </Directory>

    <Directory />
         Options FollowSymLinks
         AllowOverride None
         Order deny,allow
    #     Deny from all
         Satisfy all
    </Directory>

    即刪除Deny from all

    (2).修改默認主頁
    當訪問目錄時,apache會自動導入的主頁,優先級以先后順序為準
    DirectoryIndex index.html改為
    DirectoryIndex index.html index.jsp index.php default.jsp default.php index.html.var

     

    (3).  Apache 解析 php 頁面

    用你喜歡的文本編輯器打開httpd.conf文件,讓我們加幾行進去,這樣我們Apache 就可以解析.php .phps文件了。我們需要注意conf文件的兩個部分,第一部分是 Dynamic Shared Object (DSO) Support list,第二部分是 cgi-bin directory

    首先讓我們找到如下所示的 DSO 列表. 


    # Dynamic Shared Object (DSO) Support 
    # 
    # to be able to use the functionality of a module which was built as a DSO you 
    # have to place corresponding `LoadModule' lines at this location so the 
    # directives contained in it are actually available _before_ they are used. 
    # Statically compiled modules (those listed by `httpd -l') do not need 
    # to be loaded here. 
    # 
    # Example: 
    # LoadModule foo_module modules/mod_foo.so 
    這還有許多,一直找到最后一行:

    #LoadModule ssl_module modules/mod_ssl.so 
    上面一行是該列表的最后一行,按回車產生一個空的行,在這個空行內加入下面這行:

    LoadModule php5_module X:/Server_Core/PHP /
     php5apache2_2.dll

    注意:這里是根據你自己apachephp的版本來確認的,如果你是PHP4設置就不一樣了,有可能是:

    LoadModule php4_module X:/Server_Core /php/sapi/php4apache2.dll

    在關閉conf文件之前,我們需要再加入兩行。找到CGI-BIN目錄,為了節省時間,可以這樣找:按CTRL+F(譯者注:如果你是在記事本而不是寫字板里編輯這個文本,那么,應該用快捷鍵F3)查找 <Directory "C:/Apache2/cgi-bin"> ,在第二個</Directory>后面兩次回車,以便加入下面兩行:
    AddType application/x-httpd-php .php .phtml .php3 .php4 
    AddType application/x-httpd-php-source .phps 
    添加好后,保存你的conf文件,并重新啟動你的apache服務器,如果不能啟動apache,這個時候要查看哪里設置錯誤了。

     

    3.2        安裝PHP

    (1) 解壓縮下載的 php-5.2.4-Win32.zip 文件,并將其復制到:X:/Server_Core/PHP 

    (2) 進入 X:/Server_Core/PHP 文件夾,將 php.ini-dist 重命名為 php.ini 

    (3) 打開 php.ini 文件,找到:extension_dir = "./"

    將其改為;

    extension_dir = "X:/Server_Core/PHP/ext"

    (4) 找到:Windows Extensions

     Windows Extensions 下方的動態模塊配置中,需要打開以下模塊支持:(去掉模塊配置每行前面的;號即可)

    extension=php_mbstring.dll

    extension=php_gd2.dll

    extension=php_mysql.dll

    (5) 找到:

    disable_functions =

    改為:

    disable_functions = phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

    (6) 保存 php.ini 文件,并將其復制到 C:/Windows/

    以上是用戶手冊的配置方法,可以按照如上的方法配置PHP,沒有問題,但是中間我們會有一些東西需要更改進行校驗,避免后期部署產生問題。

    在第(5)步

    disable_functions =phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

    去掉紅色部分的字,這個是PHP的一個函數,官方的把這個函數給禁用了,造成函數不能運行,先把“phpinfo”先去掉,可以讓我們測試PHP的環境有沒有部署好。

     

    現在就開始測試我們的PHP環境部署好了沒有?

    打開apache,在X:/wwwroot建立phpinfo.php,編輯輸入如下內容

    <?php

    phpinfo();

    ?>

    保存。

    重新啟動apache

    IE中輸入http://localhost/phpinfo.php ,如果出現php的環境變量,說明php,安裝成功一半,為什么說一半呢,因為有可能你的機器以前裝過php,可能配置文件的讀取是不正確的。

    現在就讓我們校對下相關的配置正確不?

    現在特別要注意:紅色框框出現的php.iniC:/Windows/,如果不是就需要你注意了,這個時候需要刪除其他路徑下面的配置文件,然后重新啟動apache

    如果這個成功了以后,這樣PHP就完全的成功了,這個時候可以把這個phpinfo的函數重新加入disable_functions中去了。

    現在php也配置好了,現在就開始部署工程吧。

     

    3.3        安裝MYSQL

    Mysql的安裝完全按照用戶手冊上的內容進行安裝就ok了,不過有些機器因為環境的問題可能相關mysql的動態鏈接庫dll需要進行更改。

     

    (4) 準備 LibMySQL 動態鏈接庫

     X:/Server_Core/MySQL/bin/libmySQL.dll 文件復制到 C:/Windows/System32 

    在安裝手冊是拷貝了mysql的安裝目錄的libmySQL.dllsystem32下面,在后期安裝BBS驗證數據庫的時候就會不通過,

    重要:需要復制php目錄下的libmysql.dll文件到system32下。

     

    3.4        安裝Discuz論壇

    (1)       X:/wwwroot/下面建立bbs目錄

    (2)       講下載好的Discuz610_UC100_GBK.zip打開,

            然后把upload下面所有文件拷貝到你的X:/wwwroot/bbs/下面。

    (3)       重新啟動apache

    (4)       完畢后,在瀏覽器中運行安裝程序(http://localhost/install)進入準備安裝頁面,如下圖所示:

     

    (5)       驗證數據庫安裝

    有些安裝不能通過,需要留意下3.3安裝mysql這個地方。

    恭喜你成功安裝了BBS了,這個時候你就可以享受自己的成果了。

    由于apache已經占了機器的80端口,如果你原先需要有Tomcat80端口上跑的就麻煩了,這個時候就需要往下看了,這個時候我們需要整合apacheTomcat了。

     

    3.5        整合Tomcatapache

    整合,需要下載JK-1.2.26-httpd-2.2.4
    下載地址:
    http://www.apache.org/dist/tomca ... 2.26-httpd-2.2.4.so
    注意JK的版本一定要與Apache版本相同。如果你的版本與我的不同,可以去官網下載,有多種版本,適用于各種操作系統,下載適用的既可,地址:
    http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/

     

    1配置Tomcat
    查找Tomcat目錄下的 conf/server.xml文件,在<host></host>中間加入以下語句以修改其默認的目錄:

    <Context path="" docBase="X:/wwwroot" reloadable="true" crossContext="true"/>

    在這里,如果 path 不為空,則設置的是虛擬目錄,path 的值為虛擬目錄名。Docbase表示你現在工程的目錄,工程的目錄要在X:/wwwroot下面。

    查找Tomcat目錄下的 conf/workers.properties文件,并對比下方文本內容,如有不同處,以下方文本為準進行修改。

    workers.tomcat_home=D:/Program Files/Tomcat #mod_jk模塊知道Tomcat的位置
    workers.java_home=D:/Program Files/Java/jre1.6.0_07 #
    mod_jk模塊知道jre的位置
    ps=/
    worker.list=ajp13 #
    模塊版本
    worker.ajp13.port=8009 #
    工作端口,若沒占用則不用修改
    worker.ajp13.host=localhost #
    本機,若上面的Apache主機不為localhost,作相應修改
    worker.ajp13.type=ajp13 #
    類型
    worker.ajp13.lbfactor=1 #
    代理數,不用修改

    如果此文件不存在,則依以上內容創建。對Tomcat的設置進行任何修改后都要重啟才可以生效。

    2)配置Apache
    打開D:/Program Files/Apache2.2/conf下的httpd.conf,在最后加入下面這段代碼并保存。

    LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so
    #
    此處mod_jk的文件為你下載的文件

    JkWorkersFile "D:/Program Files/Tomcat/conf/workers.properties"
    #
    指定tomcat監聽配置文件地址
    JkLogFile "D:/Program Files/Tomcat/logs/mod_jk2.log" 
    #
    指定日志存放位置
    JkLogLevel info

    JkMount /servlet/* ajp13 
    #
    Apache支持對servlet傳送,用以Tomcat解析

    JkMount /*.jsp ajp13 
    #
    Apache支持對jsp傳送,用以Tomcat解析
    JkMount /*.do ajp13 
    #
    Apache支持對.do傳送,用以Tomcat解析

    注意:以上語句的基本意思是:
    loadModule
    一行:加載mod_jk.dll動態鏈接庫模塊,使之與tomcat通訊
    jkWorkersFile:
    指明工作時tomcat相關文件workers.properties位置
    jkMount:
    兩行指明當遇到*.jspservlet時,交由ajp13協議,繼而轉發給tomcat處理。

     

    3)設置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,tomcatapache互相通訊,如果下面的部分

    <!---->注釋掉,一定要把<!---->去掉.
    <!-- 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"/>

     

    4)配置httpd.conf文件
    這種方法把tomcatapache的根目錄設置為同一目錄,但是必須限制客戶對目錄下一些文件的訪問,比如存入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將會拒絕.

    到此為至,tomcatapache的整合就完成啦.重新啟動tomcatapache,
     
    jsp網頁放到X:/wwwroot/下,例如
    :
     <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漫長艱辛的道路上邁出了一大步~!


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 99热在线精品免费全部my| 亚洲精品无码成人片久久不卡| 国产免费一区二区三区在线观看| 亚洲AV无码成人网站久久精品大| 亚欧在线精品免费观看一区| 亚洲成av人在线观看网站| 亚洲欧洲日产国码av系列天堂| 99在线精品视频观看免费| 免费看黄福利app导航看一下黄色录像 | 久久99久久成人免费播放| 亚洲影视一区二区| 国产成人精品日本亚洲专区| 91频在线观看免费大全| 久久国产乱子伦精品免费午夜| 亚洲人成电影青青在线播放| 国产精品亚洲高清一区二区| 歪歪漫画在线观看官网免费阅读 | 亚洲三级在线免费观看| 亚洲午夜无码AV毛片久久| 久久久久久免费视频| 久久国产乱子伦精品免费午夜| 亚洲色一区二区三区四区| 亚洲AV永久无码精品一百度影院| 日韩免费电影在线观看| 91精品视频在线免费观看| 日本永久免费a∨在线视频| 亚洲剧场午夜在线观看| 人人狠狠综合久久亚洲88| 国产男女猛烈无遮档免费视频网站| 人妻无码一区二区三区免费| 一个人看的hd免费视频| 亚洲日韩精品国产3区| 91亚洲导航深夜福利| 青青草原亚洲视频| 国产成人免费A在线视频| 免费精品人在线二线三线区别| 99久久99久久精品免费观看| 国产免费黄色无码视频| 日日摸日日碰夜夜爽亚洲| 亚洲一卡2卡三卡4卡无卡下载| 亚洲毛片一级带毛片基地|