教學

網站拒收 WebP?一分鐘解決上傳錯誤

koboshiCo-founder
·1 分鐘閱讀
概述

網站拒絕你的 WebP 檔案時,出問題的是網站,不是你的檔案。它的上傳流程只認一張固定的格式清單。本文解釋原因、給出一分鐘解法,並說明該轉 JPG 還是 PNG。

本教學使用免費的批次 WebP 轉 JPG——它完全在你的瀏覽器中執行。開啟工具

上傳表單提示「不支援的檔案格式」,而你的檔案是 .webp。解法如下:用我們的 WebP 轉 JPG 工具把它轉成 JPG——工具在你的瀏覽器裡運作,不會上傳到我們這裡,大約一分鐘後你就有一個能被接受的檔案。被拒不代表你的檔案壞了,它代表網站的上傳流程太老。下面講清楚到底發生了什麼,以及各種變體怎麼處理。

網站為什麼拒收 WebP

上傳流程天生保守。網站接受你的圖片後,伺服器必須解碼它——縮放、產生縮圖、安全掃描。解碼靠的是網站多年前安裝的函式庫,而格式白名單也是那時候寫下的。常見原因有四個:

來自 WebP 之前的格式白名單。 表單只接受 .jpg, .jpeg, .png, .gif,因為 2014 年有人在 CMS 設定裡敲下了這行字,此後再沒人碰過。這是大多數情況——老 WordPress 網站、論壇程式、政府和學校入口網站、電商上架工具。

伺服器端影像函式庫沒有 WebP 支援。 老版本的 GD 和一些 ImageMagick 編譯時沒帶 WebP。就算表單收了檔案,後面的處理環節也解不開,所以網站乾脆提前拒絕。

安全掃描。 正常的上傳處理器會在儲存任何東西之前,對照允許清單檢查檔案的 magic bytes。WebP 的 RIFF....WEBP 簽名根本不在舊清單上。

表單的 accept 屬性。 有時拒絕發生在你的瀏覽器裡,什麼都還沒發出去:檔案選擇器把清單之外的副檔名全部變灰。同一張白名單,只是離你更近。

WordPress 值得單獨提,因為它驅動著網路的巨大份額。它的允許類型存在一張 MIME 白名單裡,WebP 上傳直到 2021 年的 WordPress 5.8 才被官方支援——而且前提是代管伺服器的影像函式庫能解碼。任何更老的安裝,或者跑在老 GD 構建上的新安裝,都會拒收。如果你是網站的管理員,修復是一行過濾器的事。如果你只是想傳張照片上去,轉換才是更快的那扇門。

這一切底下的共同模式是:網路積極地遞送 WebP,因為瀏覽器愛它(網頁圖片格式指南解釋了原因),而同一張網路的上傳一側還活在 2014 年。你正站在這兩者之間的縫隙裡。

解法:轉成被接受的格式

把 WebP 拖進 WebP 轉 JPG 工具,下載 JPG,上傳它。轉換完全在你的裝置上進行——檔案不去我們的伺服器,也不去任何人的伺服器——而結果能通過有史以來寫過的所有白名單,因為每張名單上都有 JPG。

如果轉換之後錯誤訊息抱怨的是別的東西——「檔案太大」、「尺寸超出限制」——格式只是第一道門。體積問題有專門的工具:我們的圖片縮放工具以同樣的方式在本機把檔案縮小。

轉 JPG 還是 PNG

先看錯誤訊息——如果表單列出了接受的格式,99% 的情況下 JPG 和 PNG 都在上面。然後按內容選:

  • 照片、產品圖、一切來自相機的內容 → JPG。 檔案更小,而上傳體積限制是真實存在的。JPG 不可能有透明度,但照片本來也沒有。
  • 截圖、標誌、圖形、一切帶文字或透明的內容 → PNG。 無損的邊緣和真正的 alpha 色版;用 WebP 轉 PNG 工具,透明背景完整存活。

拿不準的照片一律轉 JPG。完整的畫質說明見 如何將 WebP 轉成 JPG

批次場景:上架和目錄

電商賣家天天撞牆——供應商發來一整個資料夾的 WebP 產品圖,而平台只收 JPG。用桌面應用程式一次轉一張,二十張照片就是一個下午。瀏覽器轉換器一次吃下整個資料夾:目錄拖進去,等它跑完,全部打包成一個 ZIP 下載。檔名保留,你的 SKU 命名規則安然抵達。

相關的問題,別的門

如果 WebP 檔案根本到不了網站那一步——在你自己電腦上都打不開——那是同一個支援缺口的桌面版,見 為什麼打不開 WebP 檔案。如果你的下載資料夾因為 Chrome 不停儲存而堆滿 WebP,如何阻止 Chrome 儲存 WebP處理的是源頭那一側。

至於此刻正在拒收你的那個表單:轉換檔案,再傳一次——錯誤訊息要麼換成抱怨別的,要麼乾脆消失。多半是後者。

準備好試試看了嗎?

免費且不限次數。無需上傳、無需註冊——你的檔案永遠不會離開你的裝置。

開啟批次 WebP 轉 JPG

更多推薦閱讀