记一次奇怪的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(* ̄▽ ̄*)ブ

相关文章
相关标签/搜索