
Estou tentando estabelecer a causa de um problema estranho com um dispositivo móvel que passa por um proxy Squid 3.3 no CentOS 7 usando o modo transparente que não consegue acessar o conteúdo de notícias no aplicativo Bing News no Windows Phone 8.
Quando o conteúdo é carregado, recebo um erro com "Ocorreu um erro ao carregar esta página". Cada vez que uma notícia é solicitada, uma solicitação GET semelhante à abaixo é registrada no dispositivo móvel:
TCP_MISS/200 414 GET http://en-gb.appex-rf.msn.com/article/v4/EN-GB/news/0/BBm10XM.js? - FIRSTUP_PARENT/::1 text/javascript
Fiz a mesma solicitação GET em um cliente que tem o proxy configurado via WPAD e parece que a resposta é um pouco diferente:
TCP_MISS/200 399 GET http://en-gb.appex-rf.msn.com/article/v4/EN-GB/news/0/BBm10XM.js - FIRSTUP_PARENT/::1 application/json
Com mais detalhes usando curl:
* About to connect() to en-gb.appex-rf.msn.com port 80 (#0)
* Trying 213.104.143.210...
* Connected to en-gb.appex-rf.msn.com (213.104.143.210) port 80 (#0)
> GET /article/v4/EN-GB/news/0/BBm10XM.js HTTP/1.1
> User-Agent: curl/7.29.0
> Host: en-gb.appex-rf.msn.com
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: application/json; charset=utf-8
< Last-Modified: Sun, 23 Aug 2015 19:43:49 GMT
< ETag: "7daadd066c8a3c246e24515a03b7eeb5"
< Server: Microsoft-IIS/8.5
< X-Diagnostic-S: AppContentService_IN_21
< X-Diagnostic-DC: eastus
< X-CMS-ACSElapsedTimeInMilliseconds: 4
< AppEx-Activity-Id: 18579b38-f191-4ba8-9af9-9fd97c0d15bb
< X-Trace-Context: {"ActivityId":"18579b38-f191-4ba8-9af9-9fd97c0d15bb"}
< X-AspNet-Version: 4.0.30319
< X-Powered-By: ASP.NET
< Cache-Control: public, max-age=300
< Date: Sun, 23 Aug 2015 20:33:32 GMT
< Content-Length: 7209
< Connection: keep-alive
O aplicativo Bing News funciona quando não se usa o proxy ou quando se usa o proxy via configuração ou WPAD (ou seja, não transparente). Testado em um PC com Windows 8.1.
Presumo que, como o tipo de dados é diferente, essa é provavelmente a causa do problema com o aplicativo no Windows Phone 8, mas não tenho certeza de por que o Squid está vendo isso de maneira diferente no modo transparente versus configurações de proxy configuradas/WPAD.
Há alguma configuração específica que preciso examinar em meu squid.conf
ou em outros métodos para resolver isso? Eu preferiria que esse cliente passasse pelo proxy, mas como solução de curto prazo eu poderia escrever uma iptables
regra para que esse IP do cliente ignorasse totalmente o proxy.