然后,Outlook Anywhere开始了,痛苦和痛苦随之而来.
当Outlook(无论是2007年还是2010年,无关紧要)在Windows XP客户端上运行时,它通过Squid代理正常连接到其远程Exchange服务器.
当它在Windows 7上运行时,它不会.
如果从代理中取消身份验证要求,一切都在Windows 7上运行,因此问题显然与使用Squid的NTLM身份验证有关.
深入挖掘(WireShark),我发现Outlook Anywhere在Windows 7上运行时使用HTTP 1.1,而在Windows XP上使用HTTP 1.0.看起来Squid,即使是最新的版本,仍然有一些严重的麻烦正确处理HTTP 1.1,特别是在混合中抛出SSL和代理身份验证时.
在等待Squid完全正式支持HTTP 1.1(看起来这可能需要相当长的时间)时,我正在寻找以下解决方案之一:
>如果可能的话,让Squid正确处理.
>识别Outlook Anywhere连接并让Squid不需要对它们进行身份验证.但这并不容易:再次,在Windows XP和Windows 7上运行时,Outlook的行为会有所不同,而在Windows XP上,Outlook会发送一个非常好的用户代理字符串“MSRPC”,在Windows 7上它不会发送任何(为什么?为什么?!?).
>即使在Windows 7上运行,也强制Outlook Anywhere使用HTTP 1.0.不,这并不像在Internet Explorer中取消选择“使用HTTP 1.1”那样简单,看起来Outlook忽略了该设置并自行选择使用哪种协议.
>任何其他可行的解决方案,不涉及将特定目标Exchange服务器列入白名单,这是我试图避免的最后解决方案.