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