圖床管理後台看似只是「上傳、搜尋、刪除圖片」,實際上更像一個小型的資產管理系統。當圖片同時分散在本地儲存、遠端 API 與 CDN 線路時,後台若只顯示檔名和時間,管理者很快就會迷路。因此,設計重點不只是功能齊全,而是要讓人清楚知道圖片放在哪裡、目前是否可用,以及刪除後會不會留下孤兒檔案。
概覽頁要回答管理者最在意的問題
一個實用的圖床管理後台,首頁應該直接呈現總圖片數、今日與本週上傳量、訪問量,以及本地和遠端儲存的比例。這些數據不必做得花俏,但要能協助判斷異常。例如平日每天約有 200 張圖片,某天突然增加到 3000 張,管理者就能及早檢查是否遭遇濫用或 API 被外洩。
圖片管理頁則應支援依 ID、檔名、儲存方式與日期篩選,並提供批量刪除。不過批量操作最好加入明確確認、權限檢查及操作紀錄,否則一次誤刪數百張圖片,後果往往比想像中麻煩。
儲存狀態與 CDN 必須透明
本地圖片寫入 storage/uploads,遠端圖片則透過相容 API 轉發,這兩種模式在後台應使用清楚的標籤區分。若採用 Cloudflare R2、Telegram 或其他遠端儲存,還應顯示上游回應、檔案大小與最後同步時間。CDN 線路不可達時自動回退雖然方便,但後台最好保留失敗原因,否則管理者只看到「圖片能開啟」,卻不知道系統其實已經切換線路。
圖片處理也值得納入管理視角。自動轉 WebP 通常能降低檔案體積,在畫質可接受的前提下改善載入速度;本地非加密圖片使用 SHA-256 做秒傳去重,則能避免同一檔案重複佔用空間。這些資訊若能在圖片詳情頁呈現,後續排查會輕鬆很多。
安全功能不能只藏在設定頁
登入限流、上傳限流與查詢限流應有目前狀態或觸發紀錄,例如登入每 5 分鐘最多 8 次、上傳每分鐘 30 次。URL 拉圖時禁止內網位址與跳轉,是防止 SSRF 的基本措施;遠端 API 僅允許 HTTPS 與指定主機,也應在後台以白名單方式管理。
另外,管理員仍使用預設密碼時,頂部持續提醒是很有效的設計。密碼修改要求舊密碼,並限制至少 8 位、包含字母與數字,雖然不是萬無一失,卻比「登入後直接改成任意短密碼」可靠得多。真正成熟的後台,不是把選項堆滿畫面,而是讓每一次上傳、轉發、刪除與異常,都能被看見、被追蹤。

評論(12)
看到首頁直接顯示上傳量,感覺管理起來會比較直觀。
如果一次誤刪了好幾百張圖片,真的會很慘,有沒有人遇過?
我在用 Telegram 作遠端儲存,偶爾會碰到回傳失敗的情況。
自動轉 WebP 後畫質還是保持得不錯,省了不少流量。
登入限流設定 5 分鐘 8 次,這樣的數字會不會太嚴格?
批量刪除前的確認視窗如果能多顯示檔案大小就更好。
CDN 線路掉線自動回退很方便,但想知道失敗原因的時候真的找不到訊息。
使用 SHA-256 去重後,同樣的圖片真的不會再佔空間了,省心。
管理員還在用預設密碼的情況下,提醒真的有用嗎?
如果圖片被存放在多個儲存位置,搜尋時會不會變慢?
我想知道遠端 API 只允許 HTTPS,會不會影響到舊有的 HTTP 圖片來源?
圖床後台如果能直接看到每張圖的最後同步時間,就能更快定位問題。