处理坏机器人的做法请求url包含"&"等&符号 代替 "&"

Dor*_*rin 9 html url

&是html中的保留字符,因此我到处都有url指向一些带有querystring的路径.而不是让我得到有效的HTML.

有许多不同的抓取工具通过网站访问此网址,但他们不使用HTML解码方法来获取正确的网址值,以便他们向我的网站发出以下请求:

mywebsite.com/?p1=v1&p2=v2
Run Code Online (Sandbox Code Playgroud)

代替

mywebsite.com/?p1=v1&p2=v2
Run Code Online (Sandbox Code Playgroud)

现在我正在回复错误页面,因为提出此请求的机器人对我没有兴趣.

但我的问题是,处理这类请求的最佳做法是什么?

您知道是否有任何用途来支持处理此类请求?(例如,是否有任何流行的抓取工具或浏览器无法正确转换此网址?)

Fab*_*ney 1

我认为任何主要的爬虫程序都能够处理有效的转义 URL。所以我不会担心其余的事情。

如果您真的喜欢,那么您可能想向您的 Apache 或您使用的任何东西添加重写规则。但是,当 URL 确实包含字符序列&并被&错误的重写规则替换时,这可能会导致其他问题。

在我看来,最好保持不变。这不是你的错,当你并不真正关心这些爬虫时 - 那又怎样?:)