新商家不該選擇安裝 OpenCart 2.2 版,就如同不該再購買二行程機車

資深電商工匠
4 min readDec 23, 2018

--

近期受託協助的幾個案件中,有很高的比例是採用 opencart 2.2 版所架設的,比較難以理解的是,竟然有不少是今年才架設的新網站!!

目前主流的 OpenCart 3.0.2.0 版已釋出約一年半了,現在還在安裝老舊的 2.2 版,就如同現在還在購買一部二行程的機車一樣,雖然還是可以跑得很順很快,但有很多地方,真的已經跟不上時代了。

主流的 opencart 3.x 版與老舊的 2.2 版,主要的差異,我簡單的整理一下,供大家參考了解 :

一、 PHP 版本效能及安全性問題
opencart 2.2 版系統最低要求是 PHP 5.4,於是許多擴充模組、版型,或二次修改過的程式,都是採用 PHP 5.4 相容的語法,使得系統極可能無法在 PHP 7.x 的環境上運行,只能一直待在 PHP 5.x 的環境,而 opencart 3.x 版則是在 PHP 7.x 的環境下開發的,雖然也可以在 PHP 5.x 的環境上運行,但系統本身、及大部分的擴充模組,都可以在 PHP 7.x 上運行。
要注意的是,PHP 5.x 升級成 7.x 不只有 40% 的效能提升,PHP 5.4 版早在 2015 年就已被停止安全性更新,即使是 PHP 5.6 也將在幾日後的 2018年12月31日,終止安全支援。(資料來源: https://www.ithome.com.tw/news/126419)
所以目前我們都只幫客戶安裝 opencart 3.0.2.0 在 PHP 7.1 版上。

二、 更安全的 Storage 目錄保護
在 opencart 3.x 版,允許(並強烈建議)您將 Storage 目錄,搬移至網站根目錄之外,可以避免重要的暫存檔案、資料庫快取檔案,被有心人直接連結盜取,而 2.2 版沒有這樣的安全設計。

三、 更安全的版型引擎 Twig
opencart 3.x 版改用了 Twig 版型引擎,Twig 的語法嚴謹,無法在版型檔中放置 php 程式碼,而 2.x 版系統中的 .tpl 版型檔,可以任意在版型檔中使用 php 程式碼,改用 Twig 版型引擎,能為系統提高不少安全性。

四、 更簡單的會員註冊
2.2 版會員註冊時,必須填寫地址資料,整個註冊表單相當冗長,容易讓買家望而卻步,而 3.x 版已移除地址的欄位,讓註冊畫面變得簡潔許多。

五、 最新模組或版型都陸續不再支援 opencart 2.2
例如目前最燙手的版型 Journal 3,已不再支援 opencart 2.2 或更舊的版本,只支援 opencart 2.3 及 3.x,安裝了 opencart 2.2 將無緣安裝 Journal 3。(參考資料: https://docs.journal-theme.com/v3/docs/)

六、 解決前後端帳號 token 衝突的問題
在 opencart 3.x 版以前,前端會員登入後的 token 資料,與後端管理者登入後的 token 資料,採用了相同的變數名稱,造成管理者登入會員帳號後會造成管理者的 token 失效,及產生一些帳號安全性控管上的問題,如今在 opencart 3.x 版上,修正了這個重要的問題。

我實在想不出有任何理由,到現在還在安裝 opencart 2.2 而不選擇 opencart 3.x 版,唯一可能的理由是,廠商的技術能力還停留在 2.2 版,對於較新的版本不熟悉,不敢貿然的幫您安裝主流的 3.0.2.0 版,如果您已不幸已被推薦安裝好了 opencart 2.2 版,但如果您尚未投入過多的裝修成本,建議您考慮升級或重新安裝 3.0.2.0 版,長痛不如短痛,換掉您的二行程機車,改騎 GOGORO 放肆狂飆吧 !!

--

--

資深電商工匠
資深電商工匠

Written by 資深電商工匠

開源電商首席工程師,18年購物網站設計、商家輔導上線經驗 ... https://www.osec.tw

No responses yet