我注意到Safari提供了不同的用户代理,具体取决于php中会话的状态。与服务器的第一个连接提供了如下的用户代理字符串:
MobileSafari / 9537.53 CFNetwork / 672.1.13 Darwin / 14.0.0
但是会话开始后的任何后续连接都会给出:
Mozilla / 5.0(iPad; CPU OS 7_1,如Mac OS X)AppleWebKit / 537.51.2(KHTML,与Gecko一样)_Version / 7.0 Mobile / 11D167 Safari / 9537.53
发生了什么?我正在我的会话包装器中存储用户代理的哈希,试图限制受损帐户的损害。这是否意味着我将不得不取消该支票?
(我只在iOS7和PHP上测试过这个)
答案 0 :(得分:1)
MobileSafari/9537.53 CFNetwork/672.1.13 Darwin/14.0.0
CFNetwork用户代理只是移动版Safari的爬虫程序。这将检索fav或触摸图标。 CFNetwork请求取决于iOS或Mac OS X版本,第一个令牌仅识别APP。如果您想了解有关版本的更多信息,请参阅iOS和Mac OS X CFNetwork版本的概述:http://user-agents.me/cfnetwork-version-list
此用户代理字符串发生所有其他请求:
Mozilla/5.0 (iPad; CPU OS 7_1 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko)_Version/7.0 Mobile/11D167 Safari/9537.53
如果您查看服务器日志,您会看到每个.css,.html,.php,.jpg ...请求都会出现在Mozilla用户代理字符串中。
根据您的问题:忽略支票中的CFNetwork用户代理字符串。