回答
從一開始你有一個單一的 「主機」,在你的的conf/server.xml中爲localhost
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
現在你可以添加一個 「主機」 記錄的記錄,例如
<Host name="anotherclient.com" appBase="anotherclient" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="anotherclient_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
其中name="anotherclient.com"
是新客戶的域,appBase="anotherclient"
是其Web應用程序根目錄名(其中您部署的戰爭);它是相對於tomcat home dir。 Tomcat啓動後
的變化將被接受。
要求去任何其他領域(在server.xml
未上市),但指向你的服務器的IP地址將被傳遞到默認的應用程序,它在Engine
元素
<Engine name="Catalina" defaultHost="localhost">
通常你有口由80種不同(如8080或7001或任何你想要的)一個Tomcat(或其他應用服務器)。 之後,你把一個Web服務器(如Apache HTTP服務器)上的80端口,並配置一個或多個連接器,以指向不同的端口使用不同的地址不同的應用服務器上。
爲Apache HTTP + tomcat的,你可以看看這個鏈接:
http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html
指定沒有什麼特別的理由添加另一個產品到OP的環境中:這個問題可以單獨使用Tomcat來解決。 –
這只是在專業的環境中有Web和應用服務器的最佳做法。 – Guaido79
馬拉:Tomcat是完全可以接受的web服務器。稱呼某種「最佳做法」並不是最佳做法。這是一種常見的做法,但絕對不是「最佳」做法。 –
在默認配置下,Tomcat接受任何主機的請求,並將它們全部發送到「本地主機」 <主機>在conf/server.xml中定義。如果你還沒有改變,那麼所有你需要做的是確保你已建立了兩個主機名來指向您的服務器的DNS記錄。
如果您希望爲每個主機名擁有一組不同的webapps,那麼您必須在conf/server.xml中定義第二個<主機>,併爲其使用適當的主機名。 (請注意,您總是必須有一個「默認」的主機,所有的請求去不匹配任何明確定義的主機)。
你可以閱讀<的文檔主機>在這裏:http://tomcat.apache.org/tomcat-7.0-doc/config/host.html(這是對於Tomcat 7.0.x.你沒有提到你的版本,所以我給你一個鏈接到最新版本的文檔)。
謝謝 - 它的版本7,WAR文件怎麼樣?每個客戶需要不同的部署? – user648026
@ user648026每個
因此,在端口80上運行的單個tomcat可以使用多個「主機」配置通過單個WAR處理同一端口(80)上的多個主機。 – user648026
- 1. Tomcat和子域
- 2. Zend和多領域應用
- 3. tomcat中的多個域到單個webapp
- 4. 將Apache鏈接到Tomcat與多個域
- 5. tomcat的域名
- 6. 具有多個域和SSL的Tomcat URL重寫
- 7. Openshift多個域應用
- 8. 多dokku應用一個域
- 9. Tomcat中的多個Web應用程序
- 10. 如何配置apache服務於多個Tomcat應用作爲子域
- 11. 如何使tomcat 6運行與非ROOT應用程序名稱的多個域
- 12. Apache 2.2和tomcat重定向的子域
- 13. 單個tomcat和postgres實例上的多個應用程序?
- 14. tomcat域名問題
- 15. oauth2的Tomcat領域?
- 16. Apache/Tomcat中的多個子域使用mod_jk
- 17. Dockerfile和Tomcat + MYSQL +文件系統應用
- 18. Tomcat + Hudson和測試Django應用程序
- 19. 應用程序級線程池和tomcat
- 20. 使用子域和無子域的多租戶Ruby應用程序
- 21. Tomcat塊和沒有響應
- 22. 我怎麼能服務於多個域(Java應用程序)和Tomcat Apache服務器9(如IIS)
- 23. 將域名映射到Tomcat應用程序
- 24. 如何屏蔽apache子域後面的tomcat應用程序?
- 25. 到Web應用程序域訪問 - Tomcat的
- 26. 如何配置Apache子域重定向到Tomcat應用
- 27. 通過域名訪問tomcat應用程序
- 28. Glassfish的應用領域配置像tomcat中的上下文
- 29. Azman和多個域
- 30. nutch和solr多域
這是否意味着戰爭在原始foo.org網站的'/ opt/tomcat/webapps/ROOT.war'中,然後是新的bar.org網站的'/ opt/tomcat/anotherclient/ROOT.war' ? – CodeMed
@CodeMed是的,這是正確的。我只是自己嘗試過,把這樣的WAR似乎對我有用。 –
我們必須創建另一個客戶端自己的目錄,或者在重新啓動tomcat7後創建該目錄 – dollar