最近有一个客户原先的服务器快到期了,不打算续费了,决定放在公司这边托管,于是就着手进行迁移工作。没想到迁移后,有一个系统碰到了不少问题,排查下去都是开发的时候太过随意造成的。
很多客户定制系统时,往往最在意的是价格从而忽视了开发质量等其他细节,等到发现问题费时费力。那么奇站网络今天就从这个真实案例来详情分析,软件开发中可能踩到的有那些陷阱。
1、目录不区分大小写
迁移完成后,客户反映该系统一直无法登录。查看后台代码,排查数据库连接,排查session是否正常,查找了一圈都是正常。再仔细对比了代码跟项目实际目录,最于发现导致问题的罪魁祸首:目录不区分大小写。
通常情况下开发人员都是在windows电脑下开发,开发完成后才上传服务器。windows系统是不区分目录大小写的,例如在windows系统下,Abc文件夹,在代码中写abc这样的名称也是正常的。
但是对于linux系统,它是区分大小写的。而厦门奇站网络全部采用Linux系统,一方面统一管理,另一方面安全性更高,这样一来客户原来是部署在windows下,迁移到新服务器就出错了。
2、代码中数据库名称不区分大小写
解决完系统登录的问题,又发现后台的功能全部不能使用。排查到sql就发现,代码中的表名竟然跟数据库中不一致?
最后只能通过手动设置mysql的参数,开启“表名不区分大小写”的参数。
3、随处可见的拼接sql语句
打开代码文件,看到许多地方的都使用了拼接sql来查询数据,这其实是比较危险的写法。拼接sql的最大危害就是给了黑客sql注入的可能,导致网站或系统被黑,轻则被挂非法链接,重则被挂木马病毒,数据被盗、丢失等等。
由此可见不规范的开发问题有多严重。
轻微的影响可能是系统换个空间或服务器就无法使用,这时没有专业的人员排查,根本无法解决。严重的话系统被攻击都有可能。
- 版权所有:奇站网络 转载请注明出处
- 厦门奇站网络科技有限公司,专业提供网站建设,响应式网站建设,小程序开发,系统定制开发。
- 软件开发咨询热线:吴小姐 13313868605