1. 程式人生 > >Tomcat中配置多個工程使用不同埠訪問問題

Tomcat中配置多個工程使用不同埠訪問問題

因為沒有深入的去學習Tomcat,所以下面的方法只是簡單的解決了這個問題。
第一種方式是:
Eclispse使用的是安裝版的Tomcaat,專案直接釋出到Tomcat/webapps目錄下。
直接去Tomcat中去修改server.xml檔案,將檔案內容修改為:

<?xml version="1.0" encoding="UTF-8"?>
<Server port="9005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
<Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/> <Listener className="org.apache.catalina.core.JasperListener"/> <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/> <GlobalNamingResources> <Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname
="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
</GlobalNamingResources> <Service name="Catalina"> <Connector connectionTimeout="20000" port="9080" protocol="HTTP/1.1" redirectPort="8443"/> <Connector port="9009" protocol="AJP/1.3" redirectPort="8443"/> <Engine defaultHost="localhost" name="Catalina"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log." suffix=".txt"/> <Context docBase="livingstudio" path="/livingstudio" reloadable="true" source="org.eclipse.jst.jee.server:livingstudio"/> </Host> </Engine> </Service> <Service name="Catalina1"> <Connector connectionTimeout="20000" port="9081" protocol="HTTP/1.1" redirectPort="8443"/> <Connector port="9009" protocol="AJP/1.3" redirectPort="8443"/> <Engine defaultHost="localhost" name="Catalina1"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host appBase="webapps2" autoDeploy="true" name="localhost" unpackWARs="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log." suffix=".txt"/> <Context docBase="project" path="/project" reloadable="true" source="org.eclipse.jst.jee.server:project"/> </Host> </Engine> </Service> </Server>

然後複製一份到Eclipse中,將Server資料夾下的server.xml檔案替換成上述文字即可。
在Tomcat資料夾下進行如下操作:複製webapps目錄,改名webapps2,然後將釋出的專案2複製到webapps2裡面即可。
因為Eclispse在釋出時會將專案都發布到webapps資料夾下,還需要將專案2刪掉。然後再次啟動Eclipse才可以。
注意:埠號port的修改,service 名name和Engine 名name的修改,appBase的修改。

第二種方式是:
Eclipse中引用的Tomcat是解壓版的,專案釋出呢按照預設釋出,就是釋出在工作空間的目錄中。
然後再Eclipse中分別啟動兩個Tomcat伺服器,用來分別釋出這兩個專案。
然後分別在Server資料夾下的server.xml分別替換成下面的文字即可。

<?xml version="1.0" encoding="UTF-8"?>
<Server port="8010" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
<Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/>
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<GlobalNamingResources>
<Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
</GlobalNamingResources>
<Service name="Catalina">
<Connector connectionTimeout="20000" port="8011" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector port="8012" protocol="AJP/1.3" redirectPort="8443"/>
<Engine defaultHost="localhost" name="Catalina">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log" suffix=".txt"/>
<Context docBase="livingstudio" path="/" reloadable="true" source="org.eclipse.jst.jee.server:livingstudio"/></Host>
</Engine>
</Service>
</Server>

<?xml version="1.0" encoding="UTF-8"?>
<Server port="8015" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
<Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/>
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<GlobalNamingResources>
<Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
</GlobalNamingResources>
<Service name="Catalina2">
<Connector connectionTimeout="20000" port="8016" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector port="8017" protocol="AJP/1.3" redirectPort="8443"/>
<Engine defaultHost="localhost" name="Catalina2">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host appBase="webapps2" autoDeploy="true" name="localhost" unpackWARs="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log" suffix=".txt"/>
<Context docBase="project" path="/" reloadable="true" source="org.eclipse.jst.jee.server:project"/></Host>
</Engine>
</Service>
</Server>

然後依次啟動tomcat即可。
注意:<Server port="8015" shutdown="SHUTDOWN">段裡port的修改。和下面程式碼行中port 的修改。

推薦使用第二種方法,更方便一點。當然如果有更好的方法歡迎留言討論。

相關推薦

Tomcat配置工程使用不同訪問問題

因為沒有深入的去學習Tomcat,所以下面的方法只是簡單的解決了這個問題。 第一種方式是: Eclispse使用的是安裝版的Tomcaat,專案直接釋出到Tomcat/webapps目錄下。 直接去Tomcat中去修改server.xml檔案,將檔案內容修

Tomcat配置網站,站點的方法

最近想要在tomcat中部署多個網站,但是不知道怎麼配置,通過查詢資料和摸索,發現要實現這一點其實還是很簡單的。 如何利用Tomcat建立多個Web應用 呢? 重點就是:server.xml檔案的配置 找到server.xml配置檔案中的<Host>節點,通過增加h

在Linux的Tomcat配置域名與對應工程相連

1.如何實現修改Linux下Tomcat的埠號。 我們都知道,你的Linux伺服器上的Tomcat安裝配置好後,可以通過ip+:8080埠號訪問,如果想修改埠號,可以通過修改conf目錄下的server.xml檔案來實現。(溫馨提示:以下server.xml配置的修改在修改

xampp配置監聽不同的網站目錄

1.配置Apache檔案httpd.conf 開啟xampp安裝目錄下的Apache-》conf資料夾下的httpd.conf,用記事本開啟 首先在Listen 80埠下新增其他監聽埠: Listen 8001 Listen 8002 Listen 8003 然後在httpd.conf最

tomcat配置虛擬host,訪問不同的web專案

      想要在一個tomcat下訪問兩個web專案時,可以通過新增虛擬host的方式來解決。       詳細步驟如下:        1、將兩個專案打包放入tomcat的webapps目錄下;         2、修改tomcat的server.xml檔案,原來的程式

Apache配置監聽不同的網站目錄的簡單方法

由於開發的多專案,每個專案又要獨立,要用根目錄地址。 所以這時候我們需要配置多個不同目錄的Apache,如果是外部網可能用多個域名,可以虛擬主機的方式配置; 但本地的開發環境就一個地址或者就是localhost 那就要配置多個埠來區別不同的目錄。 之前一篇文章提到用增加不同的apache服務來實現。 原來一

在Windows配置tomcat伺服器

一:正常部署一個解壓版tomcat,步驟 1:安裝jdk 2:環境便利配置 a:CATALINA_BASE E:\apache-tomcat b:CATALINA_HOME E:\apache-tomcat c:CLASS_PATH  .;%JAVA_HOME%\l

django配置mongodb數據庫

默認 bsp def imp test string body mode name 在Djnago中使用MongoDB數據庫時,使用mongoengine模塊。在settings中配置數據庫連接如下: from mongoengine import co

在一個form表單實現submit不同的action

var ctype 編號 表單 顯示 col 格式 action 否則 在button中用JS的事件綁定onclick實現,如下: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "

c++配置環境的格式

alt bsp c++ ++ 分享 image acp tdi bin 例:環境1=$(QTDIR)\bin 環境2=$(PATH) 環境3=E:\軟件\辦公\Vimba_2.1\VimbaCPP\Bin\Win64 具體配置為 PATH=$(QTDIR)\bin%3b$(

spring security 配置 AuthenticationManager

基於spring-security4.2.x和security-oauth2.3.x 在使用Security配置Oauth2.0的時候需要多個authenticationManager來管理來自不同方向的認證管理,比如一個clientAuthenticationManager用來認證client

JavaWeb 如何在web.xml配置servlet

之前遇到這個問題,被困擾的不行,終於在學習我們學校大神的程式碼後明白了,決定發出來,也方便以後自己檢視 ​ <servlet> <description></description> <display-name>ListBook

log4j.xml 配置輸出檔案

現在的專案中,對於日誌的配置,我們有時候需要配置對應不同的輸出日誌檔案,例如按照模組劃分,按照功能劃分,分別輸出到不同的日誌檔案中,下面介紹一下,怎麼配置不同的輸出日誌檔案。 下面是一整塊的log4j.xml配置。如果對怎麼配置spring 和 log4j不瞭解的話,可以參

classpath:和classpath*:的區別以及web.xml配置xml檔案

首先我們都知道要使用spring,則需要在web.xml中增加如下程式碼:  Xml程式碼    <listener>  <listener-class>org.springframework.web.context.ContextLoaderList

在spring boot配置DispatcherServlet

spring boot為我們自動配置了一個開箱即用的DispatcherServlet,對映路徑為‘/’,但是如果專案中有多個服務,為了對不同服務進行不同的配置管理,需要對不同服務設定不同的上下文,比如開啟一個DispatcherServlet專門用於rest服務。 傳統springMVC專案 在傳統的spr

tomcat部署專案時遇到問題

SEVERE: Error listenerStart 2017-2-27 16:24:48 org.apache.catalina.core.StandardContext start SEVERE: Context [/JYZX2] startup failed due

ehchche配置配置快取物件

Ehcache不允許建立同樣名稱的CacheManager物件。如果我們沒有ehcache.xml中配置CacaheManager的名稱,那麼預設的名稱是__DEFAULT__。解決方式是<ehcache name="">中配置CacheManager的名稱,並

同一tomcat下部署工程log4j衝突的問題

本文來自多個播客轉載拼接而成,時間比較長,因此對於出處不能描述詳盡,在此對各位作者致敬並表示歉意。 同一tomcat伺服器下部署多個專案,容易發生衝突,日誌檔案會同時寫入同一個專案的log目錄中,正常情況下在一個tomcat中只會部署一個專案,此情況發生不多,但是一旦發生,

Maven pom配置遠端倉庫

原文地址:http://www.xuebuyuan.com/1124933.html <repositories> <repository> <id>datanucleus</id> <url>

struts2配置struts.xml配置檔案

  一般來說我們在做開發的時候,是一個團隊,我們可能會按照人來分不同的模組,每個人維護自己不同的struts配置檔案,但在最後整合的時候,一定要把各人所用到的配置檔案都整合進來,這裡有一個方法,用是在你寫的主要的配置檔案中把別的配置檔案導進來,   在struts.