記一次奇怪的debug:Tomcat部署網站每個頁面第一次打開404刷新後才正常顯示

不久前畢設網站的第三版上線,而後我遇到了一個奇怪的bug:web

  • 訪問頁面的時候,第一次打開404,必須F5刷新後才能正常顯示瀏覽器

簡直

第一次嘗試

最開始覺得是瀏覽器緩存沒有清理【思路大概是:瀏覽器發現這網頁訪問過,因而直接加載了緩存,但緩存是404】,而後清理緩存,從新訪問,結果發現不是緩存的問題。緩存

第二次嘗試

覺得是打包過程當中出現了問題,清理項目從新打war,而後從新部署到tomcat上,仍然沒有解決問題。tomcat

話說我部署的方式特別簡單粗暴:服務器

  • STS導出war包,傳到服務器備份app

  • 中止Tomcat運行webapp

  • 刪除Tomcat的webapp目錄下上個版本的war包和文件夾網站

  • 將war包拷貝到webapp目錄下code

  • 從新啓動Tomcat部署

第三次嘗試

stackoverflow上有人說打包過程當中不能出現任何warning(P!我有warning前幾回還不是運行得好好的)和error(廢話),總之當成死馬醫醫看,把warning們都搞掉了

這時我想了一下,感受仍是Tomcat的問題,若是我想訪問新文件,可是Tomcat仍是找舊文件去了,可是舊文件已經rm -rf,就會404了

因而我猜是以前的舊文件沒有刪除乾淨。

因而我在Tomcat全部目錄下都找了一遍,果真在work/Catalina目錄下發現了一個項目的同名文件!

關Tomcat,刪除之。

從新把新的war包cp到webapp目錄下後重啓Tomcat。

萬事OK。o(* ̄▽ ̄*)ブ

相關文章
相關標籤/搜索