網頁開發有許多枝節需求注意,除了UI、可用性(易用性)、簡單而強大的功能、實用的內容…,細節之多可是要K很多書,但其中最重要的還是「安全」,沒有安全什麼都是白談,例如,你會不會把錢存在一家隨時會倒的銀行裡?或著你會去使用一家三天二頭就出現安全漏洞的網路交易平台呢?
我不是第一次看到網頁出現錯誤訊息,其實我每天都在看,錯誤訊息是非常重要的”資訊”,一個好的開發工具一定會有一個好的Debug Tool,但重點是這些資訊只能給”對”的人看,例如”我”^.^。為什麼只能給對的人看到,因為這些資訊的內容都非常極密,他會把你最底層的資訊一字不漏的展示出來,而這些資訊讓”有心人”看了就會是一項武器。
我看過在網頁上直接Show出SQL語法那裡錯誤的資訊,看了讓人…心跳加速…因為看得懂的人就知道,差不多可以進去資料庫裡…嘿、嘿、嘿…尤其是現在攻擊工具、知識的取得都更方便及容易。
所以呢?現在好的程式架構都會把”錯誤訊息”包裝起來,當使用者瀏覽的頁面出現錯誤時,自動轉向”自訂錯誤訊息頁面”,然後快快通知系統管理者查明問題。例如,公司電腦絕大多數都是買ASUS的設備(愛用國貨$.$),所以我常上ASUS的網站,但常常看一看就出現”現在網頁維護中”的頁面,因為他用的和我學的一樣(*.aspx),所我知道怎麼回事。
現在許多程式語言都有try~catch機制,這是一個不錯的好設計,想起我們早期用「記事本」寫程式的痛苦經驗加磨練,雖然事前想了許多「防呆」的設計,但實際上線後才發現,這些使用者有90%以上是白痴等級,防呆根本不夠,不要以為會使用電腦都是很利害,會打線上游戲、會外掛就是高手。有了白痴這層的經驗後,讓我在開發網頁時會盡量回到「我如果不會電腦」的狀態來想要如何來滿足這些會流口水的人。
今天在Blog下的Plug-in,出現了Error Message,你想,我看到了什麼,這是完整訊息:
Warning: mysql_connect(): Can't connect to MySQL server on 'localhost' (10049)
in d:\tw\com\kiss\php\adodb\drivers\adodb-mysql.inc.php on line 358。
簡單說一些:
- 他們使用MySQL這一套資料庫系統。
- 他們MySQL與PHP網頁(Web Server)安裝在同一台。
- 他們PHP與MySQL是使用adodb函式庫來連接。
- 他們PHP的路徑在…
反正來說,這些訊息不應該給網路上任何人看到,雖然我歌一樣的聽,但讓我更警惕,更小心。
沒有留言:
張貼留言
感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。