Tomcat 僅用ip和埠 不用專案名就能訪問專案

執筆記憶的空白發表於2015-01-07

今天發現生產上tomcat專案 僅用ip+埠 就能訪問專案,覺得很奇怪,百思不得其解,各種嘗試,終於找出原因


例:

       http://192.168.50.248:8081/login.htm     能直接進入專案的登入頁面

       http://192.168.50.248:8081/project/login.htm  也能進入專案的登入頁面


於是,我本地tomcat嘗試了下,發現如果不加專案名,訪問就404了,

後來我加了專案名,登入頁面能訪問,但是登入成功,跳轉到index.htm的時候,專案名又不見了  而且響應又是404


後面發現,原來是tomcat預設啟動專案惹的禍,如果配置了tomcat預設啟動專案,就可以不用專案名也能訪問專案


具體操作如下:

 

1、開啟tomcat安裝根目錄,開啟conf目錄下service.xml找到<Host>節點,並且在該節點下新增:

<Context   docBase="/home/tomcat/webapps/project"  path="" debug="0" reloadable="true"  />    

說明:紫色部位為 你的專案路徑,由於我是放到webapps目錄下,所以就指向webapps


2、開啟tomcat目錄下的webapps目錄,找到ROOT專案,將其改成另一個名字


3、重啟Tomcat


重啟成功後就能直接在瀏覽器中用 ip地址+埠 訪問專案了

例:http://localhost:8081/login.htm  



最後:我還存在一個疑問,按道理我最開始的路徑有專案名,那麼我接下來的 相對路徑請求 應該也會帶有專案名的 

就好像http://192.168.50.248:8081/project/login.htm   請求是可以訪問登入頁面的,但是為什麼我請求成功,return "/index"  的時候,

按正常來說應該返回到http://192.168.50.248:8081/project/index.htm    

可是返回的時候把專案名也丟了,地址變成了http://192.168.50.248:8081/index.htm    ,這就是我很疑問的地方,試了很多地方,也不知道哪裡配置的


相關文章