Os hiperlinks do Office para Mac que redirecionam para HTTPS não são carregados com “Não é possível abrir. Não é possível localizar o servidor da Internet ou o servidor proxy. ”

2

Nossos usuários estão tentando incorporar links ao link do site em documentos do Word, e eles estão falhando. O Word para Mac parece ser muito sensível à configuração do servidor e, às vezes, não consegue carregar determinados links. O mesmo problema parece acontecer nos links do link e do link (mas links para o google, twitter, instagram etc são bons)

Etapas para reproduzir:

  1. Crie um novo documento do Word para Mac
  2. Digite os seguintes URLs no documento e deixe o Word transformá-los em hiperlinks:

    http://www.google.com/ http://www.facebook.com/ http://www.theguardian.com/ http://www.nytimes.com/ http://www.pinterest.com/ http://www.instagram.com/ http://www.twitter.com/

  3. Clique nos links - você verá que o Google, o Guardian, o New York Times, o Instagram e o Twitter funcionarão, mas o Facebook e o Pinterest (e o meu site www.newsfixed.com) não funcionarão. O Word relata um erro, "Não é possível abrir o link . Não é possível localizar o servidor da Internet ou o servidor proxy.":

Poderia,dealgumaforma,estarrelacionadoao link , mas não sei como!

De olhar para a resposta HTTP do pinterest.com, parecia que isso poderia ter a ver com servir um redirecionamento temporário 302 para uma versão HTTPS em vez de um 301 - que tanto o meu site quanto o pinterest tinham em comum. Então eu mudei a configuração do meu servidor e agora retornei 301s, mas não parece fazer nenhuma diferença.

Estou em uma versão antiga do Word para Mac - 12.3.6. Eu tive relatos de que isso também acontece em versões mais recentes do Word (mas sem números de versão, desculpe). Aparentemente, isso só começou a acontecer na semana passada, poderia ter algo a ver com o aperto de mão do SSL e os patches do Heartbleed, talvez? (Eu, claro, recuperei meu certificado esta semana)

O servidor é o Apache 2.4 padrão no Ubuntu, rodando o aplicativo Django via mod_wsgi.

Obrigado por qualquer ajuda,

Brendan.

    
por Brendan Quinn 12.04.2014 / 17:08

1 resposta

3

Bem, consegui que funcionasse ...

Parece que o Word não gosta do meu certificado SSL (do RapidSSL / GeoTrust), mesmo que ele passe em todas as verificações nos sites do verificador de SSL ( digicert sslshopper e mais).

Então eu percebi que teria que pegar o agente de usuário do Word na minha configuração do Apache HTTPD:

RewriteEngine On
# catch MS Office clients and send them to an HTTP redirect page
BrowserMatchNoCase (word|excel|powerpoint|ms-office) browser=ms-office
RewriteCond %{ENV:browser} ms-office
RewriteRule ^/(?!ms\-office) http://%{HTTP_HOST}/ms-office?url=%{REQUEST_URI} [R=301,L]

# everyone else can go to the HTTPS site
RewriteCond %{HTTPS} off
RewriteCond %{ENV:browser} !ms-office
RewriteRule ^(?!ms\-office) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

ScriptAlias /ms-office /<path>/bin/msoffice-redirect.sh

onde "msoffice-redirect.sh" é um simples script Bash CGI (!) executando uma atualização meta para a página segura:

#!/bin/bash

URL=${QUERY_STRING//url=/}

echo "Content-type: text/html"
echo
echo "<html><head><meta http-equiv='refresh' content='0;url=https://www.newsfixed.com${URL}'/></head><body></body></html>"

Então o fluxo é:

  1. o Word faz uma solicitação para http: // URL
  2. O Apache detecta o agente do usuário, se for do Office, redireciona para um script
  3. Como a página parece normal ao Office, o Word abre um navegador apontando para a saída do script no servidor não seguro, que é uma página HTML simples que contém uma meta tag de atualização
  4. A atualização alterna o usuário para a versão HTTPS, mas como o handshake SSL está acontecendo no navegador, isso não é um problema

Sim, é um hack completo. Eu me sinto suja. Mas isso funciona. Todos os links em documentos do Word devem ser http: // embora, os links https: // falhem, mas pelo menos podemos incluir alguns links em nossos documentos do Word agora.

Eu me inspirei em o aplicativo Ruby "corrigir links da Microsoft" que faz a mesma coisa em um servidor Ruby.

Espero que isso ajude alguém a evitar a dor que passei neste final de semana!

    
por 14.04.2014 / 01:04