2

在谷歌網站管理員工具,根據檢索錯誤/其他,我們看到一個400錯誤針對URL是這樣的:如何防止Googlebot抓取我的Underscore客戶端模板?

/family-tree/<%=tree.user_url_slug%>/<%=tree.url_slug%> 

enter image description here

這是不是一個真正的URL,或者說,我們預期的URL被抓取。這是一個下劃線/骨幹網的模板:

<script type="text/template" class="template" id="template-trees-list"> 
    <% _.each(trees, function(tree) { %> 
    <a href="/family-tree/<%=tree.user_url_slug%>/<%=tree.url_slug%>" rel="nofollow"> 
     <%= tree.title %> 
    </a> 
    <% }); %> 
</script> 
  1. 爲什麼谷歌的script塊的內部爬行?
  2. 爲什麼Google會忽略rel="nofollow"屬性?
  3. 我們還有什麼可以讓Googlebot遠離我們的Underscore模板嗎?

更新:如果我能找到正確的模式,可以保留好的頁面並阻止不良頁面,我願意使用robots.txt。例如,我想保留/surnames/Jones/queries,同時阻止/surnames/Jones/queries/<%=url_slug%>。我有這樣的數千人。看起來像Googlebot may support basic patterns,但不是完整的正則表達式。

更新2:好了,這不,在根源得到的,它似乎有點脆作爲一個長期的解決方案,但我在GWT測試,下面的robots.txt模式將工作:

User-agent: Googlebot 
Disallow: /*url_slug%%3E$ 
Disallow: /*url_slug%%3E/$ 

回答

1

只是通過robot.txt阻止這些,你會被罰款

+1

,我不相信你可以阻止*部分* robots.txt的頁面,這是OP想要什麼的。 – idbehold

+0

更新了關於robots.txt的問題 - 也許這是一個選項。 – richardkmiller