& is a reserved character in html因此,在任何地方,我都有 url 指向带有查询字符串的路径,我将 &而不是 & 以便我获得有效的 HTML。
有许多不同的抓取工具遍历网站并访问此 url,但它们不使用 html 解码方法来获取正确的 url 值,因此它们通过以下方式向我的网站发出请求:
mywebsite.com/?p1=v1&p2=v2
代替
mywebsite.com/?p1=v1&p2=v2
现在我正在使用错误页面进行响应,因为发出此请求的机器人对我不感兴趣。
但我的问题是,处理此类请求的最佳做法是什么?
你知道支持处理这种请求有没有用? (例如,是否有任何流行的抓取工具或浏览器无法正确转换此网址?)
最佳答案
我认为您可以期望任何主要的抓取工具都能够处理有效的转义 URL。所以我不会担心剩下的。
如果您真的喜欢,那么您可能想要将重写规则添加到您的 Apache 或您使用的任何东西。但是,当 URL 确实包含字符序列 &
并被错误的重写规则替换为 &
时,这可能会导致其他问题。
在我看来,最好不要改动它。这不是你的错,当你并不真正关心这些爬虫时——那又怎样? :)
关于html - 处理不良机器人的做法请求 url 包含符号,例如 "&"而不是 "&",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11084582/