2016-11-15 42 views
0

我嘗試將我的域設置爲vhost。Tomcat和vHost在特定子目錄上失敗

我的配置是這樣的:

<Host name="example.de" appBase="webapps" 
     unpackWARs="true" autoDeploy="true"> 
    <Alias>www.example.de</Alias> 
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
      prefix="example_access" suffix=".log" 
      pattern="%h %l %u %t &quot;%r&quot; %s %b" /> 
    <Context path="" docBase="/opt/tomcat/webapps/app1" debug="0" reloadable="true" /> 
</Host> 

這個配置與工作中的webapps目錄每子目錄,除了我想要的目錄。如果我嘗試打開域,則會有一個空的browsertab。 (錯誤404),但如果我這樣稱呼它www.example.de/app1,應用程序仍然有效,一切IST罰款:/

我沒有任何想法:/

PS:這是一個乾淨的設置Tomcat,只需提取並編輯vHost設置的server.xml

+0

哪個網址適用?哪個網址不起作用?什麼是你想要的目錄? –

+0

標準配置可以工作,它指向/ opt/tomcat/webapps /目錄,...所以我調用的域在root-dir(標準Tomcat頁面)中顯示了我的網站。 使用此配置,我可以用www.example.de/app1調用我的應用程序。 我刪除了標準vHost並添加自己的指向.../webapps/app1,嘗試打開www.example.de獲得404錯誤。 但也可以打開www.example.de/app1並且它可以工作。 vHost-Settings適用於tomcat中的其他應用程序.... – valsel

+0

因此'http:// www.example.de/app1'可以工作,但'http:// www.example.de /'會返回404嗎?你有沒有部署一個ROOT webapp?如果不是這樣,那麼在請求'/'時我絕對會期望404。 –

回答

0

請記住部署每個您希望顯示在虛擬主機中的應用程序,包括ROOT應用程序。如果您沒有ROOT應用程序,那麼Tomcat不會返回到「默認」應用程序,並且請求/時,您的客戶端將得到404響應。