tomcat 通過不同的域名綁定不同的項目

方式一:

https://blog.csdn.net/fachunfc/article/details/77883513 (原文地址)

             網上有很多tomcat目錄下server.xml的配置的文章,但是對於初學者來說,如何理解host的標籤的配置內容確實一下轉不過彎。至少本人就是這個傻樣。

    我希望我能幫助一些初學者去理解。先了解配置步驟,再理解配置的目的。

           首先,host標籤的意思,根據大家的普遍意思,它表示“虛擬主機”的意思。而虛擬主機在我理解就是實際主機IP經過DNS解析後的普通文字。

         

   
<!--server.xml中host的示例配置如下-->
 
 <Host appBase="D:\test" autoDeploy="true" name="www.test.com" unpackWARs="true">
 
        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->
        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log" suffix=".txt"/>
          
           <Context docBase="index" path="" reloadable="true" />
<Context docBase="E:\test\app2" path="/app2" reloadable="true" />
          <Context docBase="app3" path="/app3" reloadable="true" source="org.eclipse.jst.jee.server:download"/>

 </Host>
       
各個標籤的意義:  
  
appBase:顧名思義,就是程序基地的意思,也是是存放應用程序的路徑,類似於tomcat默認的webapps,當自定義host標籤時,這個值是可以自定義的絕對路徑
 
aotuDeploy:是否設置程序自動裝載。不多解釋
 
name:你的主機名,根據需要任意命名。
 
unpachWARs:是否自動解壓war包。true值時,appdase下打成war包的項目會在tomcat啓動時自動解壓
 
Context:配置上下文,也就是對應主機下的具體子項目。
         docBase指定項目的位置,可以是相對appBase的路徑,也可以是絕對路徑。如果使用相對appBase路徑的位置,則直接寫應用文件夾名字即可;
                否則應該寫絕對位置,如:E:\test\app1
path:設置該項目訪問的路徑名,如:/app1 .如果path爲""--即空字符串,則訪問該主機時默認訪問該path所在的context元素下docBase所指定的項目,
path值爲""的context只能有一個。
        source:沒有深究,大概意思應該是來源於某個ide。

         瞭解完上訴意思之後,就可以配置了。

        步驟1:配置tomcat安裝目錄下的conf目錄下的server.xml文件,直接按照上訴說明配置,保存即可。

        步驟2:在C:\Windows\System32\drivers\etc 路徑下找到名爲hosts的文件,注意不是hosts.txt,是無後綴名的hosts。

                      用記事本打開,在最後一行添加,    域名(主機名)-------ip的映射,如,127.0.0.1       www.test.com   ,保存。

                     !保存不了? ,那是因爲你的權限不夠,參考: http://jingyan.baidu.com/article/624e7459b194f134e8ba5a8e.html

                        注意:映射名應該與之前配置serverxml文件中的host配置中的name值一致,否則配置無效; 行首不能有#,其代表註釋。

         完成以後,如果按示例配置,即可通過主機名 www.test.com訪問了。

                          www.test.com:8080:訪問index項目

                         www.test.com:8080/app2:訪問app2項目

                         www.test.com:8080/app3:訪問app3項目

               PS: 瞭解映射:      127.0.0.1(映射前)-------------ip地址不好記----》dns--(本地或英特網)域名解析設備映射--------------------www.test.com(映射後)

                    

        總結:

        host是什麼:
             多個子項目組成的大項目,他是一個功能完整、能實現實際業務完整性的項目,此時需要使用一個主機這樣的邏輯單元來管理。顯像的說,我希望這些業務由一臺電腦(假設)來完成,此時這樣的電腦就叫主機,這個主機的標識就是主機名---域名。比如淘寶,他可以買東西、買東西,瀏覽東西,這些完整的實際業務的完成,實際可以簡單的理解爲通過 www.taobao.com來完成,也可以叫這臺主機爲www.taobao.com。

         什麼時候要配置多個host: 
                  開發時可以用來測試;上線時可以分離完整的實際業務,方便管理。如:淘寶、支付寶的分離,他們都有完整(是否完整由人自定義)的業務功能。
————————————————
版權聲明:本文爲CSDN博主「Jasonfong436」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/fachunfc/article/details/77883513

 

 

 

方式二:https://www.cnblogs.com/yueshutong/p/9381566.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章