问题描述
我正在尝试设置我的 robots.txt,但我不确定正则表达式.
I am trying to set up my robots.txt, but I am not sure about the regexps.
我有四个不同的页面,均以三种不同的语言提供.我想我可以使用正则表达式,而不是将每个页面列出 3 次.
I've got four different pages all available in three different languages. Instead of listing each page times 3, I figured I could use a regexp.
nav.aspx
page.aspx/changelang(可能附加了查询字符串,例如?toLang=fr".)
mypage.aspx?id 和
login.aspx/logoff(=12346?...等 - 每次都不同)
nav.aspx
page.aspx/changelang (might have a query string attached such as "?toLang=fr".)
mypage.aspx?id and
login.aspx/logoff (=12346?... etc - different each time)
!所有四种语言的 3 种不同语言,例如:
! All four in 3 different languages, e.g:
www.example.com/es/nav.aspx
www.example.com/it/nav.aspx
www.example.com/fr/nav.aspx
现在,我的问题是:以下正则表达式是否正确?
Now, my question is: Is the following regexp correct?
User-Agent: *
Disallow: /*nav\.aspx$
Disallow: /*page.aspx/changelang
Disallow: /*mypage\.aspx?id
Disallow: /*login\.aspx\/logoff
谢谢
推荐答案
robots.txt 中不允许使用正则表达式,但 Googlebot(和其他一些机器人)可以理解一些简单的模式匹配:
Regular Expressions are not allowed in robots.txt, but Googlebot (and some other robots) can understands some simple pattern matching:
您的 robots.txt 应如下所示:
Your robots.txt should look like this:
User-agent: *
Disallow: /*nav.aspx$
Disallow: /*page.aspx/changelang
Disallow: /*mypage.aspx?id
Disallow: /*login.aspx/logoff
User-agent
指令对小写 a
有效.您不必转义 .
或 `/'.
User-agent
directive is valid with lower case a
. You don't have to escape .
or `/'.
您可以在此处阅读更多相关信息:使用 robots.txt 文件阻止或删除页面
You can read more about this here: Block or remove pages using a robots.txt file
这篇关于robots.txt 的正则表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!