Eu tenho um servidor NodeJS em execução na minha máquina local para fins de desenvolvimento. Por padrão, ele usa a porta 1337. (Tentei várias outras portas, como 8080, 1234, 9000, 9090, 65432 e outras).
Posso conectar-me com sucesso a este servidor NodeJS a partir do Chrome, Firefox e Opera. Mas, quando tento conectar-me ao Internet Explorer 11, vejo "Esta página não pode ser exibida" (ver imagem).
Eu tentei uma variedade de "soluções" e vi várias perguntas / respostas neste site. Nenhum deles funcionou. Incluindo:
- Eu tentei 127.0.0.1
- Desativei o "Modo protegido" e o "Modo de proteção avançada".
- Adicionei "localhost" à zona da intranet e à zona confiável.
- Desativei "Mensagens HTTP amigáveis" na esperança de ver mais detalhes.
- Eu tentei usar o nome da minha máquina e o nome DNS.
- Tentei criar uma entrada manual no meu arquivo hosts para "localhost" e até "thisismyfrigginpc" usando meu endereço IPv4.
O único sucesso que tive foi quando o servidor é executado na porta 80 ( http://localhost:80/
ou http://localhost
). No entanto, não consigo desenvolver na porta 80 por vários motivos. Preciso testar meu código na porta localhost + (alguma porta, qualquer porta que não seja 80 e 443).
Perguntas e respostas que não ajudam:
- Por que não consigo visitar http: // localhost via IE?
- Chrome e Firefox podem alcançar localhost; O Internet Explorer 9 não pode. Por quê?
- Como testar sites locais no Metro IE10?
- /programming/19268956/can-not-access-localhostport
Por favor ajude!
BTW, executando o Windows 7 Enterprise de 64 bits. Implantação corporativa, mas tenho direitos de administrador. A configuração de rede é um DHCP bastante padrão, sem NAT e sem proxy.
ATUALIZAR
Por recomendação da @codenoire, instalei o Fiddler para ver a solicitação / resposta. Abaixo estão a solicitação e a resposta brutas de IE para Fiddler-to-server-to-Fiddler:
Pedido
GET http://localhost:1337/common/test.html HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: localhost:1337
Resposta
HTTP/1.1 200 OK
Set-Cookie: _session=WRuVLmrXMtjnDJY8;expires=Wed, 15 Jan 2014 23:19:16 GMT;path=/;domain=;httponly
Content-Type: text/html;charset=utf-8
Last-Modified: 1389818856000
Date: Wed, 15 Jan 2014 22:19:16 GMT
Connection: keep-alive
Content-Length: 128
<html>
<head>
<title>Connectivity Test Page</title>
</head>
<body>
<h1>This is a test page.</h1>
</body>
</html>
Resultado
Atualização 2014-01-17
Eu testei esse cenário em instalações "corporativas" limpas do Windows 7 com o IE 11. Os resultados são idênticos às minhas observações permanentes. Isso significa que qualquer configuração feita por uma imagem corporativa do Windows pode ser eliminada como causa. Além disso, a configuração de rede é bastante "baunilha".
Atualização 2014-01-21
Eu tentei as idéias de "emulação" do Internet Explorer. Criei uma chave "iexplorer.exe" como valores DWORD e QWORD (individualmente) com os valores 8000, 8001, 9000, 9001, 10000, and 10001
. Após cada um, reiniciei e testei novamente. Todas essas tentativas produziram os mesmos resultados. Como um aparte, precisamos testar esse código no IE11. Os vários códigos e truques de compatibilidade não nos ajudam a longo prazo.
Atualização 2014-01-22
Inicializei um servidor XAMPP Apache na porta 1337. O IE se conecta a ele muito bem. Portanto, há algo sobre a resposta do NodeJS que o IE não gosta e os outros navegadores parecem lidar bem. Investigaremos nosso código NodeJS para ver exatamente o que está acontecendo nos cabeçalhos / conteúdo para ver se algo está fora de linha.
Atualização 2014-01-27: Resolução
Eu só queria documentar os resultados. A resposta original incluía Conteúdo-Tipo: text/html;charset=utf-8
e com base na resposta correta, deveria ser: Content-Type: text/html; charset=utf-8
com um espaço entre o tipo e o conjunto de caracteres.
Aqui estão os resultados:
Resposta bruta:
HTTP/1.1 200 OK
Set-Cookie: _session=EshWS7xDnCeV9pXS;expires=Mon, 27 Jan 2014 18:49:21 GMT;path=/;domain=;httponly
Date: Mon, 27 Jan 2014 17:49:21 GMT
Last-Modified: 1389818856000
Content-Type: text/html; charset=UTF-8
Content-Length: 128
Connection: keep-alive
<html>
<head>
<title>Connectivity Test Page</title>
</head>
<body>
<h1>This is a test page.</h1>
</body>
</html>
Obrigado a @harrymc por descobrir a resposta.