【发布时间】:2020-06-28 13:13:40
【问题描述】:
我正在实施一些 SEO 更改,包括 robots.txt 更改,我正在解决这个问题。
我需要禁用(或者准确地说是不允许)每个包含一些查询 URL 参数 (?xy=...) 的 URL 所以我添加了这条规则
Disallow: /*?*
但是有一个小问题。我需要允许特定子 URL 的特定查询参数。 所以假设我需要允许 /picture?path=XY。这应该被允许,但例如 /picture-other?path=XY 不允许,如 /picture?other_param=XY em>(/picture 没问题,但不只是名为 path 的参数)
是否可以在 robots.txt 中执行此操作?
编辑: (也许添加了更清晰的说明)
禁用所有包含查询参数的 URL(如 /x?param=1),但允许 URL /picture 上的查询参数路径。 因此,只有一个允许的带有查询参数的 URL 将是 /picture?path=XY 不允许机器人使用其他包含查询参数的 URL
例子
允许
/picture?path=XY
/literally/any/route/without/query/param/you/can/imagine
/home
/
现在允许
/picture?param=1
literally/any/route/with/query/param/you/can/imagine?param=1
/some/other/url?query=5¶m=1
/some/other/route/with/path/param?path=XY
【问题讨论】:
-
这个问题似乎是题外话,因为它是关于 SEO 这在 Stack Overflow 上是题外话。请阅读"Which SEO questions should be closed as non-programming/non-admin?",以更好地了解何时可以在此处提出 SEO 问题(大多数情况不可以)以及您可以在哪里获得帮助。
-
@JohnConde 你好,是的,我一直在思考它是否是关于 SO 的正确问题,并且它主要是要编写正确的正则表达式,这是常见的问题。但如果我误解了规则,我可以将此问题移至 Webmasters SE
-
@Joel 这就是问题所在,我想禁止所有包含查询参数的 URL,除了一个包含一个特定查询参数的特定 URL。
-
还要确保您要执行的操作需要 robots.txt 或者您的意思是
X-Robots-Tag
标签: regex .htaccess robots.txt