有時(shí)候我們需要將多個(gè)域名指向同一個(gè)項(xiàng)目,那么在tomcat服務(wù)器下該如何實(shí)現(xiàn)呢修然?
之前查過(guò)有人說(shuō)在 tomcat安裝目錄/conf/server.xml 中的server.xml配置文件中配置多個(gè)<Host>來(lái)實(shí)現(xiàn)這個(gè)功能~過(guò)程如下:
<Host name="www.xxxx.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >
<Context path="" docbase="" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="qunasao_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="xxxx.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >
<Context path="" docbase="" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="qunasao_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="m.xxxx.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >
<Context path="" docbase="" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="qunasao_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
這樣雖然可以實(shí)現(xiàn)陕赃,但是會(huì)有一個(gè)大問(wèn)題鼠锈,那就是會(huì)導(dǎo)致多虛擬機(jī)的情況
關(guān)于岭粤、標(biāo)簽的知識(shí)點(diǎn)可以參考:
當(dāng)tomcat啟動(dòng)的時(shí)候它就會(huì)讀取該server.xml文件麸拄,tomcat每讀到一個(gè)就會(huì)加載該標(biāo)簽下指定的應(yīng)用派昧,所以,我們上面的3個(gè)標(biāo)簽都是指定同一個(gè)應(yīng)用拢切,也就是說(shuō)tomcat重復(fù)加載了三遍該應(yīng)用蒂萎,雖然我們我們成功將不同的域名綁定到了該應(yīng)用,不過(guò)這方法確實(shí)讓tomcat加載了3次該應(yīng)用淮椰,同時(shí)跑動(dòng)三個(gè)相同的應(yīng)用五慈!這是非常消耗資源的纳寂,而且這也不是安全、正確的方法泻拦。
所以下面毙芜,我將開(kāi)始介紹如何正確的配置多域名的項(xiàng)目,其實(shí)在標(biāo)簽內(nèi)部有一種標(biāo)簽(注意大小寫)聪轿,該標(biāo)簽就是可以將其他也需要配置的域名配置到該項(xiàng)目中去爷肝。其中Host標(biāo)簽的name屬性可以配置一個(gè)域名,一對(duì)標(biāo)簽也可以配置一個(gè)域名陆错,如果有多個(gè)域名要配置灯抛,那么我們就可以多寫幾個(gè)標(biāo)簽便可。
<Host name="www.xxxx.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >
<Alias>xxxx.com</Alias>
<Alias>m.xxxx.com</Alias>
<Context path="" docbase="" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="qunasao_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
這樣我們便完成了多域名的應(yīng)用配置~~
轉(zhuǎn)自:https://blog.csdn.net/wxh160901/article/details/84997973