资讯专栏INFORMATION COLUMN

记一次奇怪的debug:Tomcat部署网站每一个页面第一次打开404刷新后才正常显示

CompileYouth / 789人阅读

摘要:第二次尝试以为是打包过程中出现了问题,清理项目重新打,然后重新部署到上,仍然没有解决问题。于是我在所有目录下都找了一遍,果然在目录下发现了一个项目的同名文件关,删除之。重新把新的包到目录下后重启。

不久前毕设网站的第三版上线,然后我遇到了一个奇怪的bug:

访问页面的时候,第一次打开404,必须F5刷新后才能正常显示

简直 第一次尝试

最开始以为是浏览器缓存没有清理【思路大概是:浏览器发现这网页访问过,于是直接加载了缓存,但缓存是404】,然后清理缓存,重新访问,结果发现不是缓存的问题。

第二次尝试

以为是打包过程中出现了问题,清理项目重新打war,然后重新部署到tomcat上,仍然没有解决问题。

话说我部署的方式特别简单粗暴:

STS导出war包,传到服务器备份

停止Tomcat运行

删除Tomcat的webapp目录下上个版本的war包和文件夹

将war包拷贝到webapp目录下

重新启动Tomcat

第三次尝试

stackoverflow上有人说打包过程中不能出现任何warning(P!我有warning前几次还不是运行得好好的)和error(废话),总之当成死马医医看,把warning们都搞掉了

这时我想了一下,感觉还是Tomcat的问题,如果我想访问新文件,但是Tomcat还是找旧文件去了,但是旧文件已经rm -rf,就会404了

于是我猜是之前的旧文件没有删除干净。

于是我在Tomcat所有目录下都找了一遍,果然在work/Catalina目录下发现了一个项目的同名文件!

关Tomcat,删除之。

重新把新的war包cp到webapp目录下后重启Tomcat。

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

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/65904.html

相关文章

  • Django搭建个人博客:日志记录

    摘要:每一条日志记录也包含级别,代表对应消息的严重程度。即格式化器,主要功能是确定最终输出的形式和内容。最好是日志能够按自然天进行记录和分割。 上一章学习了自动化测试,很好,现在我们可以绞尽脑汁写出一份全面的测试,来保证代码永远健康了。 话虽如此,但是作为一个独立开发者很难写出真正全面的测试代码。这是因为用户在使用你的网站时可不会循规蹈矩,而是会以各种怪异的姿势浏览网页、上传数据。但这也不是...

    Lowky 评论0 收藏0
  • 一次上古项目限时开发

    摘要:钉钉新需求沟通后了解到,是一个临时需求。开始部署环境一个项目开发的前提是什么是正常运行并开启调试模式。及时复盘项目的开发流程,记录开发计划中遇到的协作问题和技术问题。 ➢ 钉钉新需求 沟通后了解到,是一个临时需求。 在一个老项目上。 具体有多老,直到开发完也不知道。 showImg(https://segmentfault.com/img/remote/1460000019364396...

    mykurisu 评论0 收藏0
  • 一次上古项目限时开发

    摘要:钉钉新需求沟通后了解到,是一个临时需求。开始部署环境一个项目开发的前提是什么是正常运行并开启调试模式。及时复盘项目的开发流程,记录开发计划中遇到的协作问题和技术问题。 ➢ 钉钉新需求 沟通后了解到,是一个临时需求。 在一个老项目上。 具体有多老,直到开发完也不知道。 showImg(https://segmentfault.com/img/remote/1460000019364396...

    crossea 评论0 收藏0
  • 项目一点总结

    摘要:项目名称后勤保障指挥系统项目部署环境银河麒麟系统基于的公司框架协议启动方式启功服务器脚本一键全启,第一次开启需要脚本文件名称进行授权。 项目名称:后勤保障指挥系统项目部署环境:银河麒麟系统+myEclipse+mySql5.6+tomcat7+rabbitmq+基于ssm的公司框架+sip协议启动方式: 启功sip服务器:cd /home/wisdom/build_mpms/b...

    terro 评论0 收藏0

发表评论

0条评论

CompileYouth

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<