我正在与 Web 服务器建立 2 个连接。第一个未使用代理,第二个使用代理。
在 Web 服务器 access.log 中,我可以看到以两种不同方式报告的用户代理。
不使用代理:
Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如 Gecko)Chrome/56.0.2924.87 Safari/537.36“
使用代理:
Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如 Gecko)Chrome/56.0.2924.87 Safari/FB7395
如果我使用其他代理,修改的部分会有所不同。这种情况只发生在使用 http:// 网站时(在 https:// 上,字符串不会被修改)。此外,如果我将 ua 起始字符串从Mozilla/5.0至(即)Mozilla 5.0(删除斜线)我们未被修改。
所有这些让我认为代理拦截了“Mozilla/5.0”字符串并修改了版本,但我的代理提供商说他们不会改变这一点。但是...
有什么想法吗?谢谢!
答案1
您的代理提供商正在更改您的字符串。他们不可能没有这样做。与您交谈过此事的人可能不知道。
真正的问题是,这种情况不会发生在 TLS/SSL 连接上。这是因为您的提供商不能更改这些数据,因为他们无法读取它并进行更改。
也有可能他们的系统中存在错误,导致执行此更改,而他们只是没有意识到。