前言
最近前端在登录的时候调用的时候部分接口出现了token错误/token不存在的情况。token是我自己用单例的ConcurrentHashMap
实现的之前在操作的时候一直没有问题。分析了我记录的日志,也没有发现问题的所在。今天终于发现了问题是出现在Tomcat的Context配置上面。
什么是Context
The Context element represents a web application, which is run within a particular virtual host.
context的元素代表一个web应用。
当我在Tomcat的官方文档看到这句话的时候就明白了问题的所在。
出现问题的原因
我在配置了context之后还是把war放到了webapp下面,相当于我实际是启动了两个webapp。
<Context path=”” docBase=”/usr/local/tomcat/webapps/cug_sms/” debug=”0″/>
然后就导致旧的接口链接没有废弃,前端调用一部分用旧的一部分用新的,实际是在调用两个web应用。最后就boom。。。
解决方案
若使用context配置的话,其实可以不把war放到webapp下面,直接使用context配置就好了。