你剛上線一個(gè)內(nèi)容站,100多頁面,地圖也交了。然后就開始等。兩周過去,Google爬了15頁。剩下的內(nèi)容像沒存在過。這場(chǎng)景熟嗎?
我碰上過。副業(yè)項(xiàng)目,270頁內(nèi)容,5個(gè)語言版本。一周后只索引了35頁左右。等爬蟲?太慢了。需要更快的方法。
![]()
大部分開發(fā)者不知道Google有個(gè)Indexing API。不是只能發(fā)招聘帖——任何你擁有的URL都能主動(dòng)推送。配合Bing的提交接口,兩邊一起跑。
![]()
第一步,OAuth2配置。去Google Cloud控制臺(tái),建一個(gè)OAuth 2.0客戶端ID(選桌面應(yīng)用類型),啟用"Web Search Indexing API"。跑一遍OAuth流程,拿到refresh token。之后用代碼換access token:
POST請(qǐng)求到oauth2.googleapis.com/token,帶上client_id、client_secret、refresh_token,grant_type填refresh_token。返回的access_token就是后面用的鑰匙。
第二步,推送URL。拿到token后,一個(gè)POST請(qǐng)求搞定:
endpoint是indexing.googleapis.com/v3/urlNotifications:publish,Header里帶上Bearer token,body里放url和type(URL_UPDATED)。返回200就是成功。
第三步,別硬編碼URL。從內(nèi)容目錄讀。遍歷你的content文件夾,把.mdx文件轉(zhuǎn)成slug,拼上站點(diǎn)域名。這樣新增內(nèi)容自動(dòng)覆蓋,不用改腳本。
第四步,加上Bing。更簡(jiǎn)單,只要一個(gè)API key。POST到ssl.bing.com/webmaster/api.svc/json/SubmitUrl,參數(shù)里帶apikey、siteUrl,body里再傳一遍siteUrl和url。不用OAuth,不用換token。
![]()
第五步,自動(dòng)化。塞進(jìn)CI/CD,或者部署后手動(dòng)跑。全量推送:npx tsx scripts/indexing.ts --all。只推最近更新的:加--recent 7參數(shù),走git log或者文件mtime判斷。
我跑了98個(gè)URL,Google全收。48小時(shí)內(nèi)Search Console里索引數(shù)明顯跳漲。API有配額限制——每天200次調(diào)用,單次最多100個(gè)URL。但新站夠用了。Bing那邊限額更松,每天1萬條。
幾個(gè)坑。OAuth第一次配置容易錯(cuò)redirect_uri,確保選的是桌面應(yīng)用類型,別選Web應(yīng)用。token存環(huán)境變量,別進(jìn)代碼庫。Bing的siteUrl必須和驗(yàn)證過的站點(diǎn)完全一致,帶www和不帶www算兩個(gè)。
這套流程適合內(nèi)容型站點(diǎn)、文檔站、博客。電商頁面也行,但產(chǎn)品變動(dòng)太頻繁的話,配額可能吃緊。更重的場(chǎng)景可以考慮Indexing API的批量端點(diǎn),或者走PubSubHubbub協(xié)議。
核心邏輯就一句:別等爬蟲,主動(dòng)敲門。Google和Bing都開了這扇窗,只是文檔藏得深,大部分人沒注意到。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.