这么写有点标题党了,不过确实是很坑的一件事。
Thinkphp开发的项目,从部署模式改为调试模式后,因为改了数据库的表结构(增加了一个varchar(105)的字段),测试的时候好好的没有任何问题,改为部署模式上线后,怎么都存不了这个中文字段。
最后发现:部署模式开了字段缓存,在动了数据库之后,改为部署模式上线之前,一定要先清除字段缓存(3.1.3在Data/_fields下面)。
为啥写这么一篇莫名其妙的日志记录?因为熬了这么晚,调试程序没有发现任何问题,最后因为字段缓存问题,搞得挺郁闷的。希望能给遇到同样问题的朋友多一点思路吧,也提醒自己以后注意。
其实这种情况还是操作不规范,因为很多小公司或者客户出于预算原因,生产环境就是开发环境。即便是标准规范操作,上传到生产服务器之前,也应该提前删掉项目的所有缓存再复制到生产服务器。