2013-03-07 27 views
2

我有我的Web應用程序,其名稱爲myApp.war。我複製我的戰爭檔案$CATALINA_BASE/webapps。現在,我可以使用以下URL打開我的網站:更改Tomcat中的應用程序的路徑6

http://localhost:8080/myApp/ 

不過,我想改變我的應用程序(例如:newName)的路徑,所以我在$CATALINA_BASE/conf/Catalina/localhost添加文件ROOT.xml

下面是代碼:

<Context docBase="myApp" path="/newName" debug="0" reloadable="true"/> 

現在我用的是新的URL:

http://localhost:8080/newName/ 

,但它不工作。

回答

0

您是否在tomcat webapps路徑中添加了NewName目錄並將內容複製到它?我希望這能解決你的問題。

3

加入線之下在server.xml

<Context docBase="myApp" path="/newName" debug="0" reloadable="true"/> 

像:

<Host> 
    . 
    . 
    . 
    <Context docBase="myApp" path="/newName" debug="0" reloadable="true"/> 
</Host> 
</Engine> 
</Service> 
</Server> 

我建議使用Apache Web服務器的另一種方法。編輯httpd.conf寫:

ProxyPass /newName http://localhost:8080/myApp 
ProxyPassReverse /newName http://localhost:8080/myApp 

您可以通過http://localhost/newName訪問你的應用程序。

注意: Apache在端口80上運行,所以在訪問時您不需要在localhost之後提供端口號。

+0

但在Tomcat的文檔中說:對於Tomcat 6,與Tomcat 4.x不同,不建議將元素直接放在server.xml文件中。這是因爲它使得修改Context配置更具侵入性,因爲在不重新啓動Tomcat的情況下無法重新加載主conf/server.xml文件。 @neonleo – stevey 2013-03-08 13:16:10

+0

您好marssteve,因爲這個原因,我提供了一個解決方案,通過使用Apache Web服務器。您可以粘貼我已經寫入並由所提到的URL訪問的兩行代碼。服務器中的任何xml配置更改都會要求重新啓動才能生效。 – neonleo 2013-03-08 13:34:43

1

嘗試將ROOT.xml重命名爲newName.xml,並將其放入「$ CATALINA_BASE/conf/Catalina/localhost」文件夾中。 Tomcat試圖找到相同的appName和xml文件。 我希望它對你的要求有用。

Tomcat 6 Documentation - Context

見介紹標題: 「[...]在單個文件(用」 在$ CATALINA_BASE/conf目錄的.xml」擴展名)/ [引擎]/[主機名] /目錄文件的名稱(少.xml擴展名)將被用作上下文路徑[...]「

告訴我,如果它的工作, 關心。

對不起,我的英語! ;)

相關問題