最近有一(one)個(indivual)客戶原先的(of)服務器快到(arrive)期了(Got it),不(No)打算續費了(Got it),決定放在(exist)公司這(this)邊托管,于(At)是(yes)就着手進行遷移工作(do)。沒想到(arrive)遷移後,有一(one)個(indivual)系統碰到(arrive)了(Got it)不(No)少問題,排查下去都是(yes)開發的(of)時(hour)候太過随意造成的(of)。
很多客戶定制系統時(hour),往往最在(exist)意的(of)是(yes)價格從而忽視了(Got it)開發質量等其他(he)細節,等到(arrive)發現問題費時(hour)費力。那麽奇站網絡今天就從這(this)個(indivual)真實案例來(Come)詳情分析,軟件開發中可能踩到(arrive)的(of)有那些陷阱。
1、目錄不(No)區分大(big)小寫
遷移完成後,客戶反映該系統一(one)直無法登錄。查看後台代碼,排查數據庫連接,排查session是(yes)否正常,查找了(Got it)一(one)圈都是(yes)正常。再仔細對比了(Got it)代碼跟項目實際目錄,最于(At)發現導緻問題的(of)罪魁禍首:目錄不(No)區分大(big)小寫。
通常情況下開發人(people)員都是(yes)在(exist)windows電腦下開發,開發完成後才上傳服務器。windows系統是(yes)不(No)區分目錄大(big)小寫的(of),例如在(exist)windows系統下,Abc文件夾,在(exist)代碼中寫abc這(this)樣的(of)名稱也是(yes)正常的(of)。
但是(yes)對于(At)linux系統,它是(yes)區分大(big)小寫的(of)。而廈門奇站網絡全部采用(use)Linux系統,一(one)方面統一(one)管理,另一(one)方面安全性更高,這(this)樣一(one)來(Come)客戶原來(Come)是(yes)部署在(exist)windows下,遷移到(arrive)新服務器就出(out)錯了(Got it)。
2、代碼中數據庫名稱不(No)區分大(big)小寫
解決完系統登錄的(of)問題,又發現後台的(of)功能全部不(No)能使用(use)。排查到(arrive)sql就發現,代碼中的(of)表名竟然跟數據庫中不(No)一(one)緻?
最後隻能通過手動設置mysql的(of)參數,開啓“表名不(No)區分大(big)小寫”的(of)參數。
3、随處可見的(of)拼接sql語句
打開代碼文件,看到(arrive)許多地(land)方的(of)都使用(use)了(Got it)拼接sql來(Come)查詢數據,這(this)其實是(yes)比較危險的(of)寫法。拼接sql的(of)最大(big)危害就是(yes)給了(Got it)黑客sql注入的(of)可能,導緻網站或系統被黑,輕則被挂非法鏈接,重則被挂木馬病毒,數據被盜、丢失等等。
由此可見不(No)規範的(of)開發問題有多嚴重。
輕微的(of)影響可能是(yes)系統換個(indivual)空間或服務器就無法使用(use),這(this)時(hour)沒有專業的(of)人(people)員排查,根本無法解決。嚴重的(of)話系統被攻擊都有可能。
- 版權所有:奇站網絡 轉載請注明出(out)處
- 廈門極極網絡科技有限公司,專業提供網站建設,響應式網站建設,小程序開發,系統定制開發。
- 軟件開發咨詢熱線:吳小姐 13313868605