Redirecionamentos estranhos para o iPad do Safari somente

1

Estou tendo a coisa mais estranha acontecendo com o meu servidor web. É o Apache 2 com SSL. Para simplificar, veja por que minha configuração parece (example.com se refere ao meu próprio domínio, é claro):

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com

    Redirect 301 / https://example.com/
</VirtualHost>

<VirtualHost *:443>

    ServerName example.com

    DocumentRoot /var/www/example

    ... #options and allow/deny for directories

    ... #logging settings

    SSLEngine on
    ... #ssl settings

</VirtualHost>

<VirtualHost *:443>
    ServerName www.example.com
    Redirect 301 / https://example.com/

    SSLEngine on
    ... #ssl settings

</VirtualHost>

Essencialmente, o que ele faz é redirecionar todo o tráfego não https para https e redireciona www.example.com para example.com - até agora, tudo bem.

Isso funciona para todos os navegadores em todas as plataformas - com uma exceção: o Safari no iPad. Safari no mac funciona bem; outros navegadores no ipad funcionam bem, mas no Safari no ipad eu recebo "O Safari não pode abrir a página porque ocorreram muitos redirecionamentos".

Agora, o único redirecionamento que tenho na minha configuração (em https) é de www.example.com para example.com. Eu adicionei %{Host}i ao log de acesso - e posso ver que as solicitações contêm nome de host e recurso corretos.

Neste ponto, estou completamente perplexo. Eu não sei onde ou o que mais para olhar. Meu cliente usa principalmente ipads, então ignorá-lo não é uma opção.

Qualquer ideia é muito apreciada.

EDITAR:

Eu mudei a configuração SSL para isso:

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com

    Redirect 301 / https://example.com/
</VirtualHost>

<VirtualHost *:443>

    ServerName example.com
    ServerAlias www.example.com

    DocumentRoot /var/www/example

    ... #options and allow/deny for directories

    ... #logging settings

    SSLEngine on
    ... #ssl settings

</VirtualHost>

Agora não há redirecionamentos na configuração. Limpei todas as configurações, histórico e dados armazenados do ipad - e ele ainda está redirecionando!

    
por Aleks G 29.07.2015 / 10:58

2 respostas

2

OK, +1 para a internet, -1 para a Apple.

O culpado foi mod_spdy no Apache 2.2. Eu não sei o que ou como ou porque, mas desabilitar mod_spdy resolveu o problema.

Eu não estou muito feliz em deixar assim, mas eu não tenho escolha por enquanto.

    
por 29.07.2015 / 12:33
0

Você pode tentar essa configuração no seu servidor?

<VirtualHost *:443>

    ServerName www.example.com
    ServerAlias *.example.com
    Redirect 301 / example.com/

    DocumentRoot /var/www/example

... #options and allow/deny for directories

... #logging settings

SSLEngine on
... #ssl settings

</VirtualHost>

Você pode excluir o último bloco do VirtualHost.

    
por 29.07.2015 / 11:41