Boloop 閱讀示意圖(AI 生成):為合格公開圖片提供窄入口,保留其他附件的權限邊界。
Boloop 的一篇指南已經有相關配圖:圖片能打開,圖片尺寸正常,頁面沒有破圖。單看閱讀體驗,似乎可以結束檢查。
2026 年 10 月 22 日下午複查結構化數據時,我們順著實際圖片 URL 看了下去,發現它仍走通用附件接口。響應是 200,但路徑受到 /api/ 的 robots 規則限制,圖片響應又帶有 X-Robots-Tag: noindex, follow。頁面能顯示,與搜索引擎可以發現並採用圖片,原來是兩個問題。
先檢查圖片本身,再檢查引用它的地方
這次核對從指南裡的真實 img 開始。我們隨後比較了文章的 BlogPosting.image 和 og:image,三處都引用同一個附件地址。
這很有幫助:如果只改其中一處,讀者、結構化數據和分享抓取器會看到不同的入口,故障很容易被暫時掩蓋。圖片改地址時,應先找清它的所有公開調用方,而不是看到哪個測試提示就只改哪個字段。
接著檢查四件事:完整 GET 返回的確實是圖片位元組;MIME 與實際文件類型一致;匿名訪問不依賴管理員會話;爬取規則和響應頭允許目標用途。HEAD 可以快速看狀態和頭,但不能替代完整圖片內容的核對。
只看圖片能否顯示,還沒有回答匿名訪問與爬取規則這兩個問題。
robots 與 noindex 是不同的限制
robots.txt 決定爬蟲是否允許抓取某個路徑;響應中的 noindex 則對已經取得響應的抓取系統表達不要索引。如果路徑本身被禁止抓取,爬蟲也未必有機會讀到該響應頭。
因此,不能把其中一個地方改成允許,就假定另一個限制同時消失。更不能因為圖片沒有遵循爬蟲規則、成功顯示了圖片,就認定搜索引擎也會得到同樣結果。
Google 的圖片說明提醒,圖片除了遵守搜索的技術條件,還需要能夠被發現。落在受限制的接口後面,是我們這次要處理的具體機制;圖片是否最終被索引,則是另一個後續結果。
公開範圍應該由內容發布狀態決定
最容易想到的辦法,是給整個附件目錄加一條抓取例外。但 Boloop 的附件系統還服務草稿、私有內容和非公開預覽。公開文章需要一張圖,不代表同一目錄下所有文件都應獲得同樣資格。
我們先前給作品截圖建立過專用公開路徑。它不是一個靜態複製目錄,而是在请求時檢查:圖片是否仍被有效、已發布、公開、非演示的作品引用,資源和圖片是否處於允許狀態,類型是否是支持的圖片格式。
這次對原創指南主圖沿用同一個思路,提供專用的 /article-images/ 入口。正文、文章結構化數據與分享圖引用同步指向它。該入口只服務符合規則的公開原創文章主圖,不把所有文章附件一併放開。原來的通用附件訪問規則繼續服務自己的用途,不因為这次 SEO 修正而成為任意文件的公開出口。
這也說明公開發現應複用 CMS 的發布事實。用戶在編輯器裡上傳一張圖、或者管理員能預覽它,都不構成對匿名訪問者的公開發布。
地址公開了,安全頭和撤下規則仍要保留
圖片是公開可抓取資源,並不代表需要去掉所有保護。我們保留了圖片沙箱、nosniff、既有訪問預算,並對公開資格不使用可長期複用的共享快照。
private, no-store 在這裡用來避免共享緩存保存過期的可見性結論。它和允許搜索索引表達的是不同事情:前者控制 HTTP 緩存,後者描述搜索用途,不能僅憑出現 private 這個詞就認定公開圖失效。
當文章撤下或圖片不再被合格內容引用時,新的訪問應重新檢查資格。已經被外部下载的副本無法藉此召回;權限判斷也不能靠改一個不可猜的文件名來代替。
生產環境不適合為了演示撤下規則,隨意把真實文章反覆下架。相關狀態變化在隔離數據中驗證,線上再檢查已經公開的資源和拒绝入口,證據邊界要分別保留。
這次修正之後,能確認到哪一步
2026 年 10 月 22 日北京時間 15:13 的只讀檢查中,指南 HTML 已經引用新的文章圖片路徑;同一圖片匿名 GET 返回 200、正確的 PNG MIME,以及允許索引的響應頭。這證明新入口已經線上提供圖片,不再只是一個本地改動。
該發布的 Google 富媒體測試記錄覆蓋了英文、簡體與繁體指南:三頁都識別到有效文章與麵包屑,新的圖片地址也進入結果。它們的抓取時間分別是當天北京時間 15:12:43、15:12:56 和 15:13:02。
這比圖片能顯示多了一層實際抓取證據,仍沒有證明圖片搜索已經收錄或展示了它。原先的綠色測試不能忽略舊限制,修復後的綠色測試也不能替代後續索引觀察。
如果你的圖片也遇到「能看但搜不到」,可以沿這條路徑檢查:從線上頁面取真實地址,核對完整響應與抓取規則,找齊正文、Schema 和分享信息中的引用,最後再驗證公開資格與撤下行為。先弄清哪一層擋住了圖片,比反覆上傳新文件更容易找到原因。