posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          關于Tomcat虛擬主機域名的設置

          Posted on 2007-09-07 16:05 semovy 閱讀(1540) 評論(0)  編輯  收藏 所屬分類: J2EE綜合

          1.設置本地主機域名
               Hosts是一個沒有擴展名的系統文件,可以用記事本等工具打開,其作用就是將一些常用的網址域名與其對應的IP地址建立一個關聯“數據庫”,當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址,一旦找到,系統會立即打開對應網頁,如果沒有找到,則系統再會將網址提交DNS域名解析服務器進行IP地址的解析。
               通過修改本地主機上的一個hosts文件,可以進行對ip地址與本地域名的映射,從而解決在本地調試JSP項目的時候,通過本地域名進行訪問。
               hosts文件在系統目錄C:\WINDOWS\system32\drivers\etc\下,這個目錄不容易記憶,如果要經常修改這個文件的話不是很方便找,可以 建立一個批處理hosts.bat文件,用文本編輯器打開,寫入內容explorer "C:\WINDOWS\system32\drivers\etc",保存退出,可以把這個hosts.bat文件放在桌面,每次雙擊它就能打開hosts文件所在的目錄。也可以將hosts.bat文件放到C:\WINDOWS下,這樣,每次只要從點“開始”->“運行”,輸入hosts,點回車就可以打開hosts文件所在的目錄了,另外在命令行也可以輸入hosts打開hosts文件所在的目錄。
               找到hosts文件后,用文本編輯器打開,默認狀態下,hosts文件里只有一個映射關系:
               127.0.0.1        localhost
               按照這個格式再添加一個映射:
               202.112.113.171   
          www.yujiaxin.com
               保存,退出。這時候本地IP地址202.112.113.171已經和www.yujiaxin.com這個本地域名做了對應的映射關系。

          2.server.xml配置簡介
          server.xml的基本配置信息,更具體的配置信息見tomcat的文檔
          server:
          port 指定一個端口,這個端口負責監聽關閉tomcat的請求
          shutdown 指定向端口發送的命令字符串
          service:
          name 指定service的名字
          Connector (表示客戶端和service之間的連接):
          port 指定服務器端要創建的端口號,并在這個斷口監聽來自客戶端的請求
          minProcessors 服務器啟動時創建的處理請求的線程數
          maxProcessors 最大可以創建的處理請求的線程數
          enableLookups 如果為true,則可以通過調用request.getRemoteHost()進行DNS查詢來得到遠程客戶端的實際主機名,若為false則不進行DNS查詢,而是返回其ip地址
          redirectPort 指定服務器正在處理http請求時收到了一個SSL傳輸請求后重定向的端口號
          acceptCount 指定當所有可以使用的處理請求的線程數都被使用時,可以放到處理隊列中的請求數,超過這個數的請求將不予處理
          connectionTimeout 指定超時的時間數(以毫秒為單位)
          Engine (表示指定service中的請求處理機,接收和處理來自Connector的請求):
          defaultHost 指定缺省的處理請求的主機名,它至少與其中的一個host元素的
          name屬性值是一樣的
          Context (表示一個web應用程序,通常為WAR文件,關于WAR的具體信息見servlet規范):
          docBase 應用程序的路徑或者是WAR文件存放的路徑
          path 表示此web應用程序的url的前綴,這樣請求的url為
          http://localhost:8080/path/****
          reloadable 這個屬性非常重要,如果為true,則tomcat會自動檢測應用程序的/WEB-INF/lib 和/WEB-INF/classes目錄的變化,自動裝載新的應用程序,可以在不重起tomcat的情況下改變應用程序
          host (表示一個虛擬主機):
          name 指定主機名
          appBase 應用程序基本目錄,即存放應用程序的目錄
          unpackWARs 如果為true,則tomcat會自動將WAR文件解壓,否則不解壓,直接從WAR文件中運行應用程序
          Logger (表示日志,調試和錯誤信息):
          className 指定logger使用的類名,此類必須實現
          org.apache.catalina.Logger 接口
          prefix 指定log文件的前綴
          suffix 指定log文件的后綴
          timestamp 如果為true,則log文件名中要加入時間,如下例:localhost_log.2001-10-04.txt
          Realm (表示存放用戶名,密碼及role的數據庫):
          className 指定Realm使用的類名,此類必須實現org.apache.catalina.Realm接口
          Valve (功能與Logger差不多,其prefix和suffix屬性解釋和Logger 中的一樣):
          className 指定Valve使用的類名,如用org.apache.catalina.valves.AccessLogValve類可以記錄應用程序的訪問信息directory 指定log文件存放的位置
          pattern 有兩個值,common方式記錄遠程主機名或ip地址,用戶名,日期,第一行請求的字符串,HTTP響應代碼,發送的字節數。combined方式比common方式記錄的值更多

          3.配置虛擬主機(Virtual Hosts)
                 關于server.xml中“Host”這個元素,只有在你設置虛擬主機的才需要修改。虛擬主機是一種在一個web服務器上服務多個域名的機制,對每個域名而言,都好象獨享了整個主機。實際上,大多數的小型商務網站都是采用虛擬主機實現的,這主要是因為虛擬主機能直接連接到Internet并提供相應的帶寬,以保障合理的訪問響應速度,另外虛擬主機還能提供一個穩定的固定IP。
            基于名字的虛擬主機可以被建立在任何web服務器上,建立的方法就是通過在域名服務器(DNS)上建立IP地址的別名,并且告訴web服務器把去往不同域名的請求分發到相應的網頁目錄。在Tomcat中使用虛擬主機,需要設置DNS或主機數據。在server.xml中設置內容,如下:

          <Server port="8005" shutdown="SHUTDOWN" debug="0">
          <Service name="Tomcat-Standalone">
          <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="80" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443"/>
          <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8443" minProcessors="5" maxProcessors="75" acceptCount="10" debug="0" scheme="https" secure="true"/>
          <Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory" clientAuth="false" protocol="TLS" />
          </Connector>
          <Engine name="Standalone" defaultHost="localhost" debug="0">
          <!-- This Host is the default Host -->
          <Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">
          <Context path="" docBase="ROOT" debug="0"/>
          <Context path="/orders" docBase="/orders" debug="0" reloadable="true" crossContext="true">
          </Context>
          </Host>

          <!-- This Host is the first "Virtual Host": http://www.yujiaxin.com -->
          <Host name="
          www.yujiaxin.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
          <Context docBase="jspwebsite" path="" reloadable="true" />
          </Host>

          </Engine>
          </Service>
          </Server>
            

            Tomcat的server.xml文件,在初始狀態下,只包括一個虛擬主機,但是它容易被擴充到支持多個虛擬主機。增加虛擬主機只要增加完整Host標簽即可。每一個Host元素必須包括一個或多個context元素,所包含的context元素中必須有一個是默認的context,這個默認的context的顯示路徑應該為空(例如,path="")。

          主站蜘蛛池模板: 郴州市| 清苑县| 东安县| 会泽县| 太谷县| 彭泽县| 广安市| 甘洛县| 安丘市| 锡林郭勒盟| 格尔木市| 安岳县| 井研县| 乐山市| 长宁区| 博乐市| 潮安县| 华坪县| 鄂州市| 鹿邑县| 赣榆县| 高碑店市| 永胜县| 中牟县| 望江县| 高密市| 景谷| 芒康县| 霞浦县| 开化县| 白水县| 海宁市| 贺州市| 安福县| 乃东县| 闻喜县| 高青县| 申扎县| 银川市| 吉林省| 确山县|