天天看點

Tomcat 下部署多個項目,映射不同的域名。

總是急于求成,然後一次次的敗北重來。

                            ---By ugoodigood.com

過去遇到了這種情況:兩個人租用同一個伺服器,安裝了tomcat之後,部署了各自的項目,出現一個問題是:兩個人的域名都要映射到同一個ip,那麼怎麼對應到自己的項目呢?

比如 name1.com name2.com 映射到用一個ip 4.4.4.4,這個IP主機上有兩個項目 web1 web2,該怎麼做呢?

起初我們想的是,一個項目設定為預設的項目,即:通路name1.com 的時候預設指向項目1,如果通路name2.com的時候,建一個Filter判斷request來源,轉向web2. 後來沒有實施,覺得這兩個項目扯到一起了。。。

今天翻書,看到tomcat原來支援這種多個虛拟主機的部署方式,頓時懊惱極了,以前都沒注意過這些東西。

方法很簡單: 在tomcat下server.xml中,Engine 節點下,可以設定多個host,每一個host對應一個虛拟主機。

例如可以添加<host name="name1.com" appBase="the web1 dir">

 和              <host name="name2.com" appBase="the web2 dir">

這樣,及時兩個域名映射到同一個ip,那麼兩個域名對應的項目目錄是不一樣的,也就實作了多域名映射到同一個ip的問題。

另外,如果有其他的域名映射到這個ip,但是沒有設定對應的host資訊,那麼就會打開的是預設的localhost對應的目錄,預設是webapps/ROOT路徑。

就是這樣。

轉載于:https://www.cnblogs.com/ofyou/archive/2012/09/12/2682581.html