很多站点都會把 PDF、Excel、压缩包、音视频這類文件挂在頁面上供用戶下载。對用戶来说,它們和正文一样重要;對搜尋引擎蜘蛛来说,它們是另一類资源,抓取和處理方式都不太一样。如果不加区分地管理,附件很容易變成抓取预算的黑洞,也會让蜘蛛對站点结构产生誤判。
先分清两類連結:下载頁和文件本身
一個下载入口通常包含两层:一层是 HTML 的下载頁,有标题、說明、版本信息、相關推荐;另一层是真正的文件地址,比如 .pdf、.xlsx、.zip。這两层的管理目标完全不同。
下载頁需要被理解、被索引,它承担的是“解释這個文件是什么”的职责;文件本身如果對搜尋用戶没有獨立價值,就没必要單獨出現在结果里。把两者混為一谈,是後面大部分問题的起点。
三個常见的坑
附件被当成普通頁面收錄
PDF 被直接索引後,搜尋结果里可能冒出一份没有上下文、没有導航的文件。用戶点進来,既回不到站内,也不知道還有没有更新版本。如果不需要收錄,可以在文件响應的头部加上 noindex 一類的标记,而不是只在下载頁上做處理——否則蜘蛛抓到文件时看不到這层意思。
附件 URL 散乱,無法批量管理
随手丢進上传目錄,文件名是時間戳或一串乱碼,结果是既没法用規則批量處理,日誌里也看不出訪問規律。建议按业務、年份或類型分目錄,文件名尽量保留可讀的關鍵詞,方便日後篩選與清理。
失效附件留下断鏈
版本更新後舊文件被删,頁面上却還挂着舊連結。用戶点了打不開,蜘蛛顺着抓也會碰到空地址。刪除文件前,先處理引用它的頁面,比事後补 404 更省事。
一份可执行的自查清單
- 把站内所有附件的連結列出来,按目錄和扩展名归類,看看數量是否和预期一致。
- 逐個確認哪些文件需要被搜尋發現,哪些只是给登入用戶或特定场景使用。
- 检查文件响應的狀態碼與头部信息,確認是否按预期設定了缓存、類型和索引标记。
- 確認每個對外公開的附件,都有一個能說明用途的下载頁,而不是裸連結。
- 抽查失效連結,尤其是歷史版本和更名過的文件。
- 留意体积較大的文件,蜘蛛频繁請求时對带宽和响應時間的影响。
從抓取日誌里看附件
日誌里如果出現大量针對压缩包、PDF 的請求,以及重复請求同一文件、反复確認是否更新的记錄,說明蜘蛛正在這些资源上花時間。若這些文件本来就不需要對搜尋可见,這部分消耗就是白白付出的。反過来,如果真正重要的下载頁長期没被訪問,也要回头检查它是不是被附件連結挤到了角落。
關于站点地图與 URL 發現
站点地图一般只放需要被發現的 HTML 頁面。把附件一並塞進去,會稀释地图本来的信号,反而让蜘蛛分不清主次。确有需要公開索引的文件,可以單獨用規則說明,並在下载頁里给出清晰的文字連結,让蜘蛛顺着頁面路径自然發現,而不是靠一份文件清單硬塞。
附件的管理原則和正文一样:能说清“這是什么、给谁用、還要不要留”的,才值得留在站点里。
附件不是邊角料,也很少需要天天盯。每隔一段時間梳理一次,删掉過期文件、补齐說明頁面、理清目錄規則,抓取路径就會干净不少,用戶找東西也更省力。