我已经检查了类似的问题,但我不认为这个具体的案例已被提出并已经回答。
我想阻止页面参数高于10的所有网址(我可能选择的值低于10)。
Disallow: /events/world-wide/all-event-types/all?page=11
Allow : /events/world-wide/all-event-types/all?page=3
我有很多类似的URL,其他"参数"可以改变一些近150页的列表。
Disallow: /events/germany/triathlon/all?page=13
Allow : /events/germany/triathlon/all?page=4
如何在不列出所有网址的情况下完成此操作(这基本上是不可能的)
请让我再次强调一下,页面参数在这里很重要。
我可能会做这样的事情:
Disallow: *?page=
Allow: *?page=(1-10)
这里有什么正确的方法?
答案 0 :(得分:2)
robots.txt" regEx"语法相当有限,所以不幸的是它会导致不必要的大型robots.txt文件。虽然其他答案解决了主要用例,但您可能还需要考虑添加一些变体来解决其他参数的混乱问题。
Disallow: *?page=
Disallow: *&page=
Allow: *?page=1$
Allow: *?page=2$
Allow: *?page=3$
...
Allow: *?page=1&
Allow: *?page=2&
Allow: *?page=3&
...
Allow: *&page=1&
Allow: *&page=2&
Allow: *&page=3&
....
答案 1 :(得分:0)
您可以这样使用:
Allow: /*?page=1
Allow: /*?page=2
Allow: /*?page=3
Allow: /*?page=4
Allow: /*?page=5
Allow: /*?page=6
Allow: /*?page=7
Allow: /*?page=8
Allow: /*?page=9
Allow: /*?page=10
Disallow: /*?page=1*
Disallow: /*?page=2*
Disallow: /*?page=3*
Disallow: /*?page=4*
Disallow: /*?page=5*
Disallow: /*?page=6*
Disallow: /*?page=7*
Disallow: /*?page=8*
Disallow: /*?page=9*
所以我们允许1到10页 不允许页面高于10。
您可以阅读google docs there