我们最近部署了我们网站的移动版本,该部署的一部分包括用户代理检查以确定将哪个版本交付给最终用户。
自从我们发布后的每一分钟左右,我们都会遇到一个 Elmah 错误,这是因为当 User-Agent 为空时抛出的异常。
我们已经在生产环境中解决了这个问题,但我很好奇为什么我们的流量中有一定比例(但非常小)可能没有定义 User-Agent。
最佳答案
这是一个简单的猜测,但它可能来自机器人。
有数量惊人的机器人程序(搜索引擎、僵尸网络等)不断扫描网站和服务器以查找漏洞、密码等。有时他们有一个已知的用户代理,有时则没有。
您可以使用像 CloudFlare 这样的 CDN 服务了解其中有多少请求来自机器人(不,我不为那家公司工作 - 但使用他们的服务让我意识到网络被机器人污染了多少,统计数据很可怕)。
关于http - 为什么一致数量的访问者会丢失 User-Agent header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10822818/