我们有一个(动态的)WebApplication,正在尝试解决一些性能问题:当我们查看我们的Apache-Logs时,似乎特定的用户代理(Safari)在1秒内发送了多个IDENTICAL请求。
它可能与移动版Safari中的Pipelining的实现有关。
日志条目如下所示:
188.102.30.71 - - [16 / Jan / 2017:21:20:41 +0100]" GET / an / existing / path?a = b> HTTP / 1.1" 200 407380" - " " Mozilla / 5.0(iPhone; CPU iPhone OS 10_2,如Mac OS> X)AppleWebKit / 602.3.12(KHTML,类似Gecko)版本/ 10.0 Mobile / 14C92> Safari / 602.1" / 0/487136
188.102.30.71 - - [16 / Jan / 2017:21:20:42 +0100]" GET / HTTP / 1.1" 200 12876" - " >" MobileSafari / 602.1 CFNetwork / 808.2.16 Darwin / 16.3.0" / 0/79180
188.102.30.71 - - [16 / Jan / 2017:21:20:42 +0100]" GET / HTTP / 1.1" 200 12876" - " >" MobileSafari / 602.1 CFNetwork / 808.2.16 Darwin / 16.3.0" / 0/31172
188.102.30.71 - - [16 / Jan / 2017:21:20:42 +0100]" GET / HTTP / 1.1" 200 12876" - " >" MobileSafari / 602.1 CFNetwork / 808.2.16 Darwin / 16.3.0" / 0/25425
"以及更多......"
似乎对于1个真实用户操作,我们多次(8 - 10次)收到对另一个资源(此处为/)的相同请求。
这是Apple实施的流水线技术吗?我们没有看到具有此行为的其他用户代理。
有没有办法阻止这些请求?我们使用Apache来提供我们的内容。
我很高兴有任何可能有助于解决此问题的提示和建议。
蒂诺