我們遇到了一個問題,Googlebot試圖訪問Ajax功能上的某個網址,並且由於某些網址編碼問題而失敗。首先我們有點困惑,爲什麼googlebot試圖訪問JS腳本中JS函數內的URL。Ajax通過Google訪問的網址
JS代碼:
ajaxFunction(siteid) {
$.get(location.protocol + '//' + location.hostname + '/ajax/?ajaxscript=detail&siteid='+ siteid, function() { ... });
}
以上函數是在JS腳本包括我們的網頁上點擊一個鏈接/按鈕時被調用。 Googlebot以某種方式嘗試直接轉到由上述函數生成的URL,並且由於「?」字符被URL編碼而導致錯誤,所以siteid值沒有通過。
示例網址,谷歌正試圖訪問:
http://www.google.com/url?sa=t&rct=j&q=duo%2Bboots&source=web&cd=4&ved=0CDQQFjAD&url=http%3A%2F%2Fwww.MYSITE.com%2Fajax%2F%253Fajaxscript%3Ddetail%26siteid%3D1
你有任何想法,爲什麼Googlebot的直接試圖訪問由JS函數生成的URL,並有可能是Googlebot的訪問基於AJAX功能,網址直接?基本上主要的問題是,正在轉換爲%2F,因此它不會將所需的數據傳遞給我的腳本,並且在我們的服務器錯誤日誌中記錄爲錯誤。
謝謝,我已經修復了您定義的人 –
不錯,標記爲已解決! –