共計 404 個字符,預計需要花費 2 分鐘才能閱讀完成。
在使用百度站平臺的【抓取診斷】功能時,發現百度抓取失敗,提示為 socket 讀寫錯誤。
然后我也查看了網站的抓取頻次,發現百度也沒少來光顧網站,但無論是收錄還是快照都更新很慢,所以,這一定跟 socket 讀寫錯誤脫不了干系,查找一番,博主了解一下 socket 通信原理,
百度官方對 socket 讀寫錯誤的解讀
當百度 spider 訪問服務器,進行 tcp 通信的時候,socket 讀寫發生異常,導致數據不能正常返回。請檢查服務器連接狀況和防火墻設置是否符合預期。
想來是服務器出現了問題,索性登錄寶塔面板后臺查看一番,然后去百度搜索尋找幫助,發現是寶塔面板設置了【強制 https】,只要將其關閉即可。
后來了解到由于 nginx 將 http 強制轉換成 https,導致 http 無法直接訪問,而百度抓取的是 http 站點,如此就會導致 socket 讀寫錯誤問題。當【強制 https】關閉后,再次使用百度抓取診斷功能發現抓取成功,如此問題解決。
正文完