1. 程式人生 > >在Linux的Tomcat下配置多個域名與對應工程相連

在Linux的Tomcat下配置多個域名與對應工程相連

1.如何實現修改Linux下Tomcat的埠號。

我們都知道,你的Linux伺服器上的Tomcat安裝配置好後,可以通過ip+:8080埠號訪問,如果想修改埠號,可以通過修改conf目錄下的server.xml檔案來實現。(溫馨提示:以下server.xml配置的修改在修改後一定要重啟tomcat伺服器才能生效)

如上是我們很熟悉的介面,就是Tomcat安裝配置好之後出現的介面,該介面中我已經把埠號去掉了,如果想通過ip訪問到自己的專案而不是這個預設介面需要在server.xml中的<engine>下的<host>中新增如下紅色配置,其中docBase的值是你的專案的所在目錄。

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
              xmlValidation="false" xmlNamespaceAware="false">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />
        <Context path="" docBase="/home/ubuntu/tomcat/webapps/LongBlog" debug="0"/>
</Host>
<Context path="" docBase="/home/ubuntu/tomcat/webapps/LongBlog" debug="0"/> </Host>

①原埠號訪問

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

②將埠號修改為1016

修改埠號,只需在server.xml中將埠號改為你想要的埠號即可

<Connector port="1016" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />1016" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

③去掉埠號訪問

如果你覺得加個埠號贅餘,也可將埠號改為80即可實現無埠號訪問(大家一般都是這麼做的,追求精簡嘛),即

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

2.

一個雲伺服器的雲主機可以與多個域名相連,即讓多個域名解析到同一ip。域名解析在你買域名的地方中進行,如下:

理論上只要域名解析到你的ip,將以上截圖中的ip改為域名,同樣可以訪問網路中的資源,即域名+“:”+埠號或直接訪問域名---一般都是直接訪問域名的,只需按以上步驟去掉埠號。如下是我用域名訪問我的網站的截圖。

問題又來了,很多時候,我們的專案不止一個,也為此買了多個域名,目的就是想通過一個域名訪問一個專案即網站,該怎麼做呢?仍然是修改server.xml配置檔案。在<engine>標籤下新增一個<host>虛擬主機,可將原有的複製下來只需修改以下紅色地方即可。

<Host name="www.zy52113.com"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
			xmlValidation="false" xmlNamespaceAware="false">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />
	 <Context path="" docBase="/home/ubuntu/tomcat/webapps/LongVideos" debug="0"/> 
      </Host> 

www.zy52113.com"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
			xmlValidation="false" xmlNamespaceAware="false">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />
	 <Context path="" docBase="/home/ubuntu/tomcat/webapps/LongVideos" debug="0"/> 
      </Host> 

host新增完畢重啟Tomcat伺服器即可通過域名www.zy52113.com訪問另外一個專案,如圖: