互聯網技術(shù)不停的發展,造成我們過去(qù)的一些網站(zhàn)建設技術(shù)逐漸顯得(de)落後,甚至被淘汰。例如(rú)網站(zhàn)程序處理(lǐ)網站(zhàn)管理(lǐ)員(yuán)在後台上傳的圖片時,有可(kě)能存在低概率故障:網站(zhàn)後台上傳圖片不顯示。在短(duǎn)時間内,對于處理(lǐ)圖片不顯示的問(wèn)題,我們一共處理(lǐ)了三次類似的程序缺陷。
缺陷一:新版浏覽器上傳圖片不顯示,如(rú):IE 11浏覽器
在常規網站(zhàn)後台,一般允許網站(zhàn)管理(lǐ)上傳的圖片格式有jpg、gif、png這三種,如(rú)果網站(zhàn)程序員(yuán)初次接觸圖片處理(lǐ),可(kě)能會不驗證網站(zhàn)管理(lǐ)員(yuán)上傳的圖片(有可(kě)能造成一些僞裝成圖片的惡意程序上傳成功),那麽就(jiù)不會遇到這個缺陷,但(dàn)是這種不驗證圖片性質的程序編寫方式我們比較不推薦,至少我們要在程序中驗證一下圖片的文件(jiàn)類型。對于jpg格式的圖片和png格式的圖片,IE 11浏覽器對其的文件(jiàn)類型解析和其他(tā)浏覽器不一樣,因此就(jiù)會出現圖片上傳失敗的故障。
處理(lǐ)方案:修改程序,考慮jpg格式的圖片文件(jiàn)類型有可(kě)能是image/pjpeg、image/jpeg、image/jpg這三種不同解析方式的情況。如(rú)果程序還(hái)允許上傳png格式的圖片,同時還(hái)要考慮png格式的圖片文件(jiàn)類型有可(kě)能爲:image/png和image/x-png兩種的情況。以後更新版的浏覽器,可(kě)能對圖片還(hái)有别的解析方式,屆時及時修改程序就(jiù)可(kě)以了。
缺陷二:圖片上傳後模糊。本缺陷過去(qù)常見(jiàn)于網站(zhàn)中的産品管理(lǐ)中心,現已升級程序,詳情請(qǐng)關注《提升網站(zhàn)圖片縮略圖清晰度實現高清壓縮》。
缺陷三:圖片擴展名大(dà)小寫不同導緻圖片上傳後不顯示
微軟系統中,文件(jiàn)擴展名的大(dà)小寫沒有關系,例如(rú):pic.jpg和pic.JPG都(dōu)是指的同一個文件(jiàn),但(dàn)是在Linux系統中,這兩個文件(jiàn)名卻是指的不同的文件(jiàn)。因此,如(rú)果用戶上傳的文件(jiàn)擴展名有的是大(dà)寫,有的是小寫,而網站(zhàn)在不同的服務器上托管,那麽就(jiù)有可(kě)能會出現有的圖片顯示,有的圖片不顯示的問(wèn)題,如(rú)下圖所示:
處理(lǐ)方案:文件(jiàn)上傳後,在處理(lǐ)文件(jiàn)名之前,統一将文件(jiàn)名轉換爲小寫(推薦)或者大(dà)寫,以便适應各種服務器環境。
以上提到的兩種圖片不顯示的情況,都(dōu)是屬于低概率缺陷,一般網站(zhàn)用戶比較難以遇到。但(dàn)是不遇到不代表問(wèn)題不存在,所以作(zuò)爲專業網站(zhàn)建設公司,我們應該積極處理(lǐ)性質類似的所有問(wèn)題。