问题描述:
之前在本地上跑的好好的项目,部署到Linux远程服务器上,有的请求可以访问到,有些请求访问不到,爆出500错误。一看后台,报错信息如下:
原因分析:
经过多方排查及上网搜寻,原因大致是以下几条:
-
在controller层请求处理完了返回时,没有使用@RestController或@ResponseBody而返回了非json格式
-
在你的controller层对应的方法返回html路径及名称时,在前面多加了一个/ 。
笔者就是因为这个原因报错!写请求的返回值时手贱多加一个/
解决方案:
访问不到的请求形如: return “/message”
解决:去掉前面的/即可:return “message”
疑问
但是在本地环境,以上的两种写法都是可以的,也没报错,thymeleaf引擎也能正确解析,一说是SpringBoot版本过高问题(笔者是2.3.7),具体到底是什么原因造成的,待考证。