2013-02-13 146 views
0

我正在使用Linux 12.04 Precise。我的機器上只有sudo權限。我創建了一個JSP網站,並試圖建立在我的機器上的虛擬主機,這樣的網站URL看起來區別,如:虛擬主機不在tomcat6中工作

www.myapp.com 

而不是

127.0.0.1/myapp/ 

這樣,通過在互聯網上的許多文章會後。像

Virtual-hosting-how-to

我創建像下面server.xml中的條目爲我的虛擬主機

<Engine name="Catalina" defaultHost="localhost"> 
<Host name="localhost" appBase="webapps" 
      unpackWARs="true" autoDeploy="true" 
      xmlValidation="false" xmlNamespaceAware="false"> 
</Host> 
<Host name="www.myapp.com" appBase="libapps" unpackWARs="true" 
     autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> 
</Host> 
</Engine> 

爲此,在本教程中提到的,我已經創造了$ CATALINA_HOME一個名爲libapps並將我的應用程序戰爭文件放在裏面。當我查看tomcat6的主機管理器應用程序時,它顯示我的虛擬主機,但它在啓動時不起作用。在此之前,我已經在更改server.xml上重新啓動了tomcat6。

我還能做些什麼來使我的應用程序功能?

回答

2

完成簡單的步驟後,一個長通網絡教程:)

第1步如下:在你的server.xml中添加一個條目

<Host name="www.your-domain.com" appBase="libapps" 
      unpackWARs="true" autoDeploy="true" 
      xmlValidation="false" xmlNamespaceAware="false"> 
</Host> 

第2步:創建你的$ CATALINA_HOME爲目錄在應用平臺

sudo mkdir /var/lib/tomcat6/libapps 

創建虛擬主機配置以下目錄

sudo mkdir /var/lib/tomcat6/conf/Catalina/www.your-domain.com 

複製從

/var/lib/tomcat6/conf/Catalina/localhost 

目錄下面的文件到該目錄

host-manager.xml 
manager.xml 
ROOT.xml 

3步:添加在/ etc中的條目/ hosts文件

XX.XX.XX.XX  www.your-domain.com 

第四步:之後使用時只需重新啓動你的tomcat以下命令

sudo service tomcat6 restart 

第5步:現在,您可以訪問以下網址新的虛擬主機通過鍵入您的瀏覽器

www.your-domain.com:8080 

第6步:從剛剛訪問管理器應用程序這個主機並部署你的戰爭文件。:)

第7步:現在,如果你想從URL中移除IP地址,並使用一個漂亮的URL就像

www.your-domain.com 

然後,你必須在

/etc/apache2/httpd.conf 
條目

象下面這樣:

ProxyPass/http://www.your-domain.com:8080/app-name/ 
ProxyPassReverse/http://www.your-domain.com:8080/app-name/ 

第8步:現在,您可以從

訪問應用程序
www.your-domain.com 
+0

我的localhost文件夾中缺少ROOT.xml文件。事實上,該文件不在Catalina文件夾中的任何文件夾中。任何解決方案如何將我的域名添加爲虛擬主機? – shrishaster 2013-10-09 04:35:40

+0

ROOT.xml只是ROOT Web應用程序的上下文文件,爲了託管您的網站,只需使用主機管理器 – 2013-10-27 17:29:14