IE localhost + port ile çalışmıyor


25

Geliştirme amaçlı olarak yerel makinemde çalışan bir NodeJS sunucum var. Varsayılan olarak, 1337 numaralı bağlantı noktasını kullanır. (8080, 1234, 9000, 9090, 65432 ve ark.

Bu NodeJS sunucusuna Chrome, Firefox ve Opera'dan başarıyla bağlanabiliyorum. Ancak, Internet Explorer 11 ile bağlanmaya çalıştığımda, "Bu sayfa görüntülenemiyor" u görüyorum (resme bakın).

görüntü tanımını buraya girin

Çeşitli "çözümler" denedim ve bu sitede birkaç soru / cevap izledim. Hiçbiri işe yaramadı. Dahil olmak üzere:

  • 127.0.0.1'i denedim
  • "Koruma Modu" ve "Gelişmiş Koruma Modu" nu devre dışı bıraktım.
  • Intranet Bölgesine ve Güvenilir Bölgeye "localhost" ekledim.
  • Daha fazla detay görmeyi ümit ederek "Friendly HTTP mesajlarını" devre dışı bıraktım.
  • Makine adımı ve DNS adımı kullanmayı denedim.
  • IPv4 adresimi kullanarak hosts dosyamda "localhost" ve hatta "thisismyfrigginpc" için manuel bir giriş oluşturmayı denedim.

Sahip olduğum tek başarı, sunucunun 80 ( http://localhost:80/veya http://localhost) numaralı bağlantı noktasında çalıştığı zamandır . Ancak, çeşitli nedenlerden dolayı 80 numaralı bağlantı noktasını geliştiremiyorum. Kodumu localhost + port'ta test etmem gerekiyor (bazı portlar, 80 ve 443 dışındaki herhangi bir port).

Yardım etmeyen sorular ve cevaplar:

Lütfen yardım et!

BTW, Windows 7 Enterprise 64 bit çalıştırılıyor. Kurumsal dağıtım, ancak yönetici haklarım var. Ağ yapılandırması, NAT ve Proxy içermeyen oldukça standart DHCP'dir.

GÜNCELLEŞTİRME

@Codenoire tarafından yapılan öneri üzerine, isteği / yanıtı görmek için Fiddler'ı kurdum. Aşağıda IE-to-Fiddler'dan-to-to-Fiddler'a gelen ham istek ve cevap verilmiştir:

İstek

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

Tepki

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>

Sonuç

görüntü tanımını buraya girin

Güncelleme 2014-01-17

Bu senaryoyu IE 11 içeren "temiz" kurumsal olmayan Windows 7 kurulumlarında test ettim. Sonuçlar, gözlemlerimle aynı. Bu, bir Windows kurumsal imajı tarafından yapılan herhangi bir yapılandırmanın sebep olarak ortadan kaldırılabileceği anlamına gelir. Ayrıca, ağ yapılandırması oldukça "vanilya" dır.

Güncelleme 2014-01-21

Internet Explorer'ın "öykünme" fikirlerini denedim. "İexplorer.exe" anahtarını DWORD ve QWORD değerleri olarak (bireysel olarak) değerleri ile oluşturdum 8000, 8001, 9000, 9001, 10000, and 10001. Her şeyden sonra, yeniden başlatıldı ve tekrar test edildi. Bütün bu girişimler aynı sonuçları vermiştir. Bir kenara, bu kodu IE11’de test etmemiz gerekiyor. Çeşitli uyumluluk kuralları ve püf noktaları aslında uzun vadede bize yardımcı olmuyor.

Güncelleme 2014-01-22

1337 numaralı bağlantı noktasında bir XAMPP Apache sunucusu başlatıldı. IE buna çok iyi bağlandı. Yani, IE'nin sevmediği ve diğer tarayıcıların iyi idare ettiği görünen NodeJS yanıtı hakkında bir şey var. NodeJS kodumuzu, başlıkların / içeriğin tam olarak ne olup bittiğini görmek için tam olarak ne olduğunu görmek için araştırıyoruz.

2014-01-27 Güncellemesi: Çözünürlük

Sadece sonuçları belgelemek istemiştim. Orijinal cevap, Content-Type içeriyordu: text/html;charset=utf-8ve doğru cevaba göre, şöyle olmalı: Content-Type: text/html; charset=utf-8tip ile karakter kümesi arasında bir boşluk bırakılmalıdır .

Sonuçlar burada:

görüntü tanımını buraya girin

Ham Tepki:

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>

@Harrymc cevabını açığa çıkarmak için teşekkür ederiz.


1
Ekran görüntüleri için Oy.
Oxymoron

ilk önce, özellikle Intranet bölgesine ek olarak denediğiniz şeylerin çoğunu geri alın. bir bölgeye ekleyecekseniz, Güvenilen siteler kullanın.
Frank Thomas,

@ FrankThomas Bana hatırlattığın için teşekkürler. Bunu başarı olmadan denedim. Bunu yansıtmak için sorumu değiştirdim.
mawcsco

Lütfen bağlantı ayarlarınızı gönderir misiniz?
Vanadis

@ Vanadis bağlama ayarları? Açıklayabilir misin?
mawcsco

Yanıtlar:


9

HTTP karakter kümesi parametresini ayarlama WWW3 makalesi şunları belirtir:

Content-Type: text/html; charset=utf-8

Bu, Content-Typedaha önce boş bırakılmasını tanımlar charset.

Bunun gerçekten bir sorun olduğunu zaten öğrendiğinizi biliyorum, bu yüzden sorunun kaynağı Microsoft tarafından veya bazı orta-orta düzey proxy'ler tarafından çok yaratıcı olmayan bir programlama.


1) Makine adının kullanılması durumu düzeltmez. 2) Ben zaten Fiddler kullandım ve sonuçları yazıma ekledim. 3) Wireshark + pcap localhost'ta yakalayamıyor. RawCap + Wireshark kullandım ve sonuçlar Fiddler ile aynıydı.
mawcsco

Aynı şekilde, kodu çözülmüş paketlerin hemen hemen aynı göründüğünü kastediyordum.
mawcsco

Fiddler'dan "vazgeçmedim". İyi çalışıyor ve aynı "sonuçları" alıyorum: Chrome, Firefox, Opera bağlantısı iyi, IE yok. Ham, kodu çözülmüş istek yanıtını gönderdim ve her şey normal / uygun görünüyor, ancak IE sayfayı görüntüleyemiyor.
mawcsco

Bu ne tavsiye? Makine adını çoktan denedim. Benim görevim bunu söylüyor. Fiddler Root Certificate sadece SSL bağlantısı yapmak için gereklidir; Buna ihtiyacım yok (ve bunun nasıl yardımcı olacağını bile göremiyorum.) Wireshark'ı çoktan denedim, yeni bir şey açığa çıkarmıyor. Fiddler, başarılı bir şekilde diğer tarayıcıları görerek çıkardığım sunucu isteğinin / yanıtının iyi olduğunu gösterdi. SADECE IE farklı davranıyor.
mawcsco

Evet, "kamışlara sarılmak" aynen böyle hissettiriyor. Zekiyim bitiyor. UAC zaten devre dışı, orada yardım yok. Karakter kümesi uzay meselesini inceliyorum, ancak bununla nasıl baş edeceğime dair hiçbir fikrim yok. Ben araştırıyorum.
mawcsco

3

IE ayarlarınızda muhtemelen bir sorun var.

Bunu düzeltmenin en kolay yolu, Internet Seçenekleri'ni açmak, gelişmiş sekmeye gitmek ve "Internet Explorer Ayarlarını Sıfırla" yı tıklamak olacaktır. Bunu, TÜM ayarları kapsamadığından, "Gelişmiş Ayarları Sıfırla" seçeneğini seçtiğinizden emin olun.

Bu işe yaramazsa, lütfen ayrıca localhost yerine 127.0.0.1 kullanarak gezinmeyi deneyin. Bunun sorunu çözmesi muhtemel değildir, ancak bazen bir sorun yaratabilir.

Düzenleme: IE11 ile bunun bir sorun olabileceğini eklemek istedim. Bununla çok fazla uyumluluk sorunu yaşadığımızı biliyorum. IE10'a geri dönmek ve bunu denemek istemiyorsanız, her zaman kayıt defterinden Taklit edebilirsiniz:

Altında

HKLM\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\

adında bir anahtar oluşturacaksınız:

FEATURE_BROWSER_EMULATION

ve içinde bir DWORD değeri oluşturun:

iexplorer.exe

şunlardan birinin değeriyle:

 IE8 - 8000 (or 8001)
 IE9 - 9000 (or 9001)
 IE10 - 10000 (or 10001)

10001 ile en fazla başarıyı elde ettik.


Bunu, bir avuç dolusu Windows ve IE’nin "yeni" kurulumuna sahip birkaç makinede test ettim.
mawcsco

Eklentileri devre dışı bırakarak IE’yi çalıştırdınız mı? Yeni bir yükleme olduğunu söylediğini biliyorum ama bazen şişmiş olarak geliyor.
WreithKassan

Yine, Windows ve IE’nin yeni kurulumu. Eklenti yüklü değil.
mawcsco

Orijinal yazım zaten 127.0.0.1 denedim. "Öykünme" numarasını deneyeceğim.
mawcsco

Tamam, bu cevaptaki tarayıcı öykünme değerlerinin hiçbiri çalışmıyor.
mawcsco

1

Proxy ayarlarınızı kontrol edin. Kurumsal bir ağda olduğunuzdan, birinin IE’nize zorla gönderilmiş yetersiz bir proxy politikası olabilir (bu, diğer tarayıcılara yansıtmayacaktır).


Burada kesinlikle proxy yok. NAT bile kullanmıyoruz. Sorumu buna göre güncellendi.
mawcsco

Bununla birlikte, tarayıcınızı Fiddler'a bağlayın ve kaputun altında neler olup bittiğini görün. Çalışan bazı siteleri deneyin, ardından localhost'u deneyin ve trafik görüntüsünü izleyin. Tavsiye edebileceğim en iyisi. fiddler2.com
Xavier J

Yani, Fiddler bir vekil tanıtır. Şimdi, IE’de şunu görüyorum: "Proxy sunucusu yanıt vermiyor." Ancak, Fiddler’daki istek / cevap her şeyin yolunda olduğunu gösterir. Sunucu beklenen başlıklara ve HTML içeriğine cevap verdi. Ancak, IE’de gördüğüm şey bu değil.
mawcsco

-1

Bu değişiklikleri yapıyorum ve hepsi Windows 10 64 bitlerde iyi çalışıyor.

görüntü tanımını buraya girin

görüntü tanımını buraya girin


1
Bunun OP'lerin sorununu çözeceğini sanmıyorum - bunun yanlış biçimlendirilmiş bir Cntent Tipi HTTP yanıtı olduğu doğrulandı.
DavidPostill
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.