激情五月天婷婷,亚洲愉拍一区二区三区,日韩视频一区,a√天堂中文官网8

<ul id="buwfs"><strike id="buwfs"><strong id="buwfs"></strong></strike></ul>
    <output id="buwfs"></output>
  • <dfn id="buwfs"><source id="buwfs"></source></dfn>
      <dfn id="buwfs"><td id="buwfs"></td></dfn>
      <div id="buwfs"><small id="buwfs"></small></div>
      <dfn id="buwfs"><source id="buwfs"></source></dfn>
      1. <dfn id="buwfs"><td id="buwfs"></td></dfn>
        始創(chuàng)于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊有禮 登錄
        • 掛牌上市企業(yè)
        • 60秒人工響應(yīng)
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補償
        全部產(chǎn)品
        您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

        整合apache和tomcat構(gòu)建Web服務(wù)器 (2)

        發(fā)布時間:  2012/7/31 19:41:26

        是上面假定的/webdata/www目錄。
          “!/*.jpg=tomcat1”則表示在根目錄下,以“*.jpg”結(jié)尾的文件都不由JK進(jìn)行處理,其它設(shè)置含義類似,也就是讓apache處理圖片、js文件、css文件以及靜態(tài)html網(wǎng)頁文件。
          特別注意,這里有個先后順序的問題,JK模塊在處理網(wǎng)頁根目錄文件的時候,會首先過濾掉不讓自己處理的設(shè)定,剩下的設(shè)定自己全部處理。
          例如上面的設(shè)定中,JK模塊會首先在/webdata/www目錄過濾掉所有圖片、flash、js文件、css文件和靜態(tài)網(wǎng)頁,將剩下的文件類型自己全部處理。
          2.Apache的配置
         。1)apache的目錄結(jié)構(gòu)
          上面我們通過源碼方式把apache安裝到了/usr/local/apache2下,詳細(xì)的目錄結(jié)構(gòu)如表8.1所示:
          表8.1
          目錄名稱 目錄作用
          bin Apache二進(jìn)制程序及服務(wù)程序目錄
          lib 庫文件目錄
          conf 主配置文件目錄
          logs 日志文件目錄
          htdocs 默認(rèn)web應(yīng)用根目錄
          cgi-bin 默認(rèn)的cgi目錄
          modules 動態(tài)加載模塊目錄,上面生成的JK模塊,就放在了這個目錄下。
          manual Apache使用文檔目錄
          man Man幫助文件目錄
          error 默認(rèn)的錯誤應(yīng)答文件目錄
          include 包含頭文件的目錄
          icons Apache圖標(biāo)文件目錄
         。2)apache的配置文件
          l /usr/local/apache2/conf/httpd.conf(apache主要配置文件)
          httpd.conf是包含若干指令的純文本文件,配置文件的每一行包含一個指令,指令是不區(qū)分大小寫的,但是指令的參數(shù)卻對大小寫比較敏感,“#”開頭的行被視為注解并被忽略,但是,注解不能出現(xiàn)在指令的后邊。配置文件中的指令對整個web服務(wù)器都是有效的。
          l /usr/local/apache2/bin/apachectl (apache啟動/關(guān)閉程序)
          可以通過“/usr/local/apache2/bin/apachectl start/stop/restart”的方式啟動/關(guān)閉/重啟apache進(jìn)程。apachectl其實是個shell腳本,它可以自動檢測httpd.conf的指令設(shè)定,讓apache在最優(yōu)的方式下啟動。
          l /usr/local/apache2/bin/httpd
          httpd是一個啟動apache的二進(jìn)制文件。
          l /usr/local/apache2/modules
          Apache是模塊化的web服務(wù)器,所有編譯的模塊默認(rèn)都會放到這個目錄下,然后可以在httpd.conf文件中指定模塊位置,動態(tài)加載!
          l /usr/local/apache2/logs/access_log
          /usr/local/apache2/logs/error_log
          這兩個分別為apache的訪問日志文件和錯誤日志文件,通過監(jiān)測這兩個文件,我們可以了解apache的運行狀態(tài)。
         。3)httpd.conf基本設(shè)定
          httpd.conf配置文件有3個部分組成,分別是:全局變量、配置主服務(wù)器、配置虛擬主機。
          下面我們詳解講述下/usr/local/apache2/conf/httpd.conf文件各個指令的含義。
          [root@webserver ~]#vi /usr/local/apache2/conf/httpd.conf
          全局變量配置部分
          ServerRoot "/usr/local/apache2"
          ServerRoot用于指定守護(hù)進(jìn)程httpd的運行目錄, httpd在啟動之后自動將進(jìn)程的當(dāng)前目錄切換到這個指定的目錄下,可以使用相對路徑和絕對路徑。
          PidFile logs/httpd.pid
          PidFile指定的文件將記錄httpd守護(hù)進(jìn)程的進(jìn)程號,由于httpd能自動復(fù)制其自身,因此apache啟動后,系統(tǒng)中就有多個httpd進(jìn)程,但只有一個進(jìn)程為最初啟動的進(jìn)程,它為其他進(jìn)程的父進(jìn)程,對父進(jìn)程發(fā)送信號將影響所有的httpd進(jìn)程。
          Timeout 300
          Timeout用來定義客戶端和服務(wù)器端程序連接的超時間隔,單位為秒,超過這個時間間隔,服務(wù)器將斷開與客戶端的連接。
          KeepAlive On
          KeepAlive用來定義是否允許用戶建立永久連接,On為允許建立永久連接,Off表示拒絕用戶建立永久連接,例如,要打開一個含有很多圖片的頁面,完全可以建立一個tcp連接將所有信息從服務(wù)器傳到客戶端即可,而沒有必要對每個圖片都建立一個tcp連接。此選項建議設(shè)置為On。
          MaxKeepAliveRequests 100
          MaxKeepAliveRequests用來定義一個tcp連接可以進(jìn)行HTTP請求的最大次數(shù),設(shè)置為0代表不限制請求次數(shù),這個選項與上面的KeepAlive相互關(guān)聯(lián),當(dāng)KeepAlive設(shè)定為On,這個設(shè)置開始起作用。
          KeepAliveTimeout 15
          KeepAliveTimeout用來限定一次連接中最后一次請求完成后延時等待的時間,如果超過了這個等待時間,服務(wù)器就斷開連接。
          <IfModule prefork.c>
          ServerLimit  300
          StartServers         5
          MinSpareServers      5
          MaxSpareServers     20
          MaxClients         300
          MaxRequestsPerChild  2000
          </IfModule>
          <IfModule worker.c>
          StartServers         2
          MaxClients         150
          MinSpareThreads     25
          MaxSpareThreads     75
          ThreadsPerChild     25
          MaxRequestsPerChild  0
          </IfModule>
          上面的兩段指令其實是對web服務(wù)器的使用資源進(jìn)行的設(shè)置,apache可以運行在prefork和worker兩種模式下,可以通過/usr/local/apache2/bin/httpd –l來確定當(dāng)前apache運行在哪種模式,在編譯apache時,如果指定“--with-mpm=MPM”參數(shù),那么apache默認(rèn)運行在prefork模式下,如果指定的是“--with-mpm=worker”參數(shù),那么默認(rèn)運行在worker模式下。如果沒有做任何模式指定,那么apache默認(rèn)也運行在prefork模式下。
          prefork采用預(yù)派生子進(jìn)程方式,用單獨的子進(jìn)程來處理不同的請求,進(jìn)程之間彼此獨立。
          l StartServers表示在啟動apache時,就自動啟動的進(jìn)程數(shù)目。
          l MinSpareServers設(shè)置了最小的空閑進(jìn)程數(shù),這樣可以不必在請求到來時再產(chǎn)生新的進(jìn)程,從而減小了系統(tǒng)開銷以增加性能。
          l MaxSpareServers設(shè)置了最大的空閑進(jìn)程數(shù),如果空閑進(jìn)程數(shù)大于這個值,apache會自動關(guān)閉這些多余進(jìn)程,如果這個值設(shè)置的比小MinSpareServers,則Apache會自動把其調(diào)整為 MinSpareServers+1。
          l MaxRequestsPerChild設(shè)置了每個子進(jìn)程可處理的最大請求數(shù),也就是一個進(jìn)程能夠提供的最大傳輸次數(shù),當(dāng)一個進(jìn)程的請求超過此數(shù)目時,程序連接自動關(guān)閉。0意味著無限,即子進(jìn)程永不銷毀。這里我們設(shè)置為2000,已經(jīng)基本能滿足中小型網(wǎng)站的需要。
          l MaxClients設(shè)定Apache可以同時處理的請求數(shù)目。是對Apache性能影響最大的參數(shù),默認(rèn)值150對于中小網(wǎng)站基本夠了,但是對于大型網(wǎng)站,是遠(yuǎn)遠(yuǎn)不夠的,如果請求總數(shù)已達(dá)到這個值,那么后面的請求就必須排隊,這就是系統(tǒng)資源充足而網(wǎng)站訪問卻很慢的主要原因。理論上這個值設(shè)置的越大,可以處理的請求的越多,但是apache默認(rèn)限制不能超過256,如果要設(shè)置的值大于256,可以直接使用ServerLimit指令加大MaxClients。這里我們設(shè)置的值是300。
          相對于prefork,worker是全新的支持多線程和多進(jìn)程的混合模型,由于是使用線程來處理請求,所以可以處理更多的請求,對系統(tǒng)資源的使用開銷也比較小。
          l MinSpareThreads設(shè)置了最少的空閑線程數(shù)。
          l MaxSpareThreads設(shè)置了最多的空閑線程數(shù)。
          l MaxClients設(shè)定同時連入客戶端的最大數(shù)。如果現(xiàn)有子進(jìn)程中的線程總數(shù)不能滿足請求的負(fù)載,控制進(jìn)程將派生出新的子進(jìn)程。默認(rèn)最大子進(jìn)程數(shù)是16,加大時需要通過ServerLimit來進(jìn)行聲明,ServerLimit最大值為20000,注意,如果指定了ServerLimit,那么此值乘以ThreadsPerChild必須大于等于MaxClients,而MaxClients必須是ThreadsPerChild的整數(shù)倍,否則 Apache將會自動調(diào)節(jié)到一個相應(yīng)值。
          l ThreadsPerChild設(shè)定每個子進(jìn)程的工作線程數(shù),此選項在worker模式下與性能密切相關(guān),默認(rèn)最大值為64,如果系統(tǒng)負(fù)載很大,不能滿足需求的話,需要使用 ThreadLimit指令,此指令默認(rèn)最大值為20000,Worker模式下所能同時處理請求總數(shù)由子進(jìn)程數(shù)乘以ThreadsPerChild值來確定,保證大于等于MaxClients的設(shè)定值。
          Listen 80
          此指令是設(shè)置apache的監(jiān)聽端口,默認(rèn)的http服務(wù)都是運行在80端口下,當(dāng)然也可以修改為其它端口。
          LoadModule access_module modules/mod_access.so
          LoadModule auth_module modules/mod_auth.so
          LoadModule jk_module modules/mod_jk.so
          加載mod_jk模塊,上面我們已經(jīng)生成了JK模塊,并且放到了modules目錄下,這里這需指定加載即可。
          ……以下省略……
          配置主服務(wù)器
          User nobody
          Group nobody
          這里是設(shè)定執(zhí)行httpd的用戶和組,默認(rèn)是nobody用戶啟動apache,這里將組也設(shè)置為nobody。
          ServerAdmin you@example.com
          這里指定的是網(wǎng)站管理員的郵件地址,如果apache出現(xiàn)問題,會發(fā)信到這個郵箱。
          ServerName www.example.com:80
          這里是指定系統(tǒng)的主機名,如果沒有指定,會以系統(tǒng)的hostname為依據(jù)。特別注意,這里設(shè)定的主機名一定要能找到對應(yīng)的IP地址(主機名和IP的對應(yīng)關(guān)系可以在/etc/hosts設(shè)置)。
          UseCanonicalName Off
          設(shè)定是否使用標(biāo)準(zhǔn)的主機名,如果設(shè)置為On,則以ServerName指定的主機名為主。如果web主機有多個主機名,請設(shè)置為Off。
          DocumentRoot "/usr/local/apache2/htdocs"
          此指令非常重要,是用來放置網(wǎng)頁的路徑,apache會默認(rèn)到這個路徑下尋找網(wǎng)頁,并顯示在瀏覽器上。
          <Directory />
          #這里的“/”是相對路徑,表示DocumentRoot指定的目錄。
          Options FollowSymLinks
          AllowOverride None
          </Directory>
          <Directory "/usr/local/apache2/htdocs">
          Options Indexes FollowSymLinks
          Order allow,deny
          Allow from all
          </Directory>
          上面這段信息是對DocumentRoot指定目錄的權(quán)限設(shè)定,有3個必須知道的參數(shù):
          Options 表示在這個目錄內(nèi)能夠執(zhí)行的操作,主要有5個可設(shè)定的值:
          l Indexes:此參數(shù)表示,如果在DocumentRoot指定目錄下找不到以index打頭的文件時,就將此目錄下所有文件列出來,很不安全,不建議使用這個參數(shù)。
          l FollowSymLinks:表示在DocumentRoot指定目錄下允許符號鏈接到其它目錄。
          l ExecCGI:表示允許在DocumentRoot指定的目錄下執(zhí)行cgi操作。
          l Includes:準(zhǔn)許SSI(Server-side Includes)操作。
          l MultiViews:不常用,根據(jù)語言的不同顯示不通的信息提示。
          AllowOverride 通過設(shè)定的值決定是否讀取目錄中的.htaccess文件,來改變原來所設(shè)置的權(quán)限,其實完全可以在httpd.conf中設(shè)置所有的權(quán)限,但是這樣對apache使用者的其它用戶如果要修改一些權(quán)限的話,就比較麻煩了,因此apache預(yù)設(shè)可以讓用戶以自己目錄下的. htaccess文件復(fù)寫權(quán)限,常用的選項有兩個:
          l All:表示可以讀取.htaccess文件的內(nèi)容,修改原來的訪問權(quán)限。
          l None:表示不讀取.htaccess文件,權(quán)限統(tǒng)一控制。
          Order 用來控制目錄和文件的訪問授權(quán),常用的組合有2個:
          l Deny,Allow:表示先檢查禁止的設(shè)定,沒有禁止的全部允許。
          l Allow,Deny:表示先檢查允許的設(shè)定,沒有允許的全部禁止。
          DirectoryIndex index.html index.htm index.jsp index.html.var
          這里是對apache打開網(wǎng)站默認(rèn)首頁的設(shè)定,apache在打開網(wǎng)站首頁時一般會查找index.*之類的網(wǎng)頁文件,DirectoryIndex指令就是設(shè)置apache依次尋找能打開網(wǎng)站首頁的順序,例如我們要打開www.ixdba.net網(wǎng)站,apache會首先在DocumentRoot指定的目錄下尋找index.html,也就是www.ixdba.net/index.html,如果沒有找到index.html網(wǎng)頁,那么apache會接著查找index.htm,如果找到就執(zhí)行www.ixdba.net/index.htm打開首頁,以此類推。


        億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
           聯(lián)系:億恩小凡
           QQ:89317007
           電話:0371-63322206


        本文出自:億恩科技【mszdt.com】

        服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

      2. 您可能在找
      3. 億恩北京公司:
      4. 經(jīng)營性ICP/ISP證:京B2-20150015
      5. 億恩鄭州公司:
      6. 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
      7. 億恩南昌公司:
      8. 經(jīng)營性ICP/ISP證:贛B2-20080012
      9. 服務(wù)器/云主機 24小時售后服務(wù)電話:0371-60135900
      10. 虛擬主機/智能建站 24小時售后服務(wù)電話:0371-60135900
      11. 專注服務(wù)器托管17年
        掃掃關(guān)注-微信公眾號
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
          1
         
         
         
         

        0371-60135900
        7*24小時客服服務(wù)熱線