IE11'de bir kullanıcı aracısı dizesini nasıl engelleyebilirim?


5

Dizüstü bilgisayarlarımızı Windows 8 dokunmatik ekrana yükseltmeye başlıyoruz ve bazı eski web sitelerinin (değiştiremeyeceğimiz) dokunmatik ekranı bir mobil cihaz olarak algıladığını ve web sitesini doğru şekilde yüklemeyeceğini öğreniyoruz. IE11'i Masaüstü Modunda kullanıyoruz.

Hangi kullanıcı bilgilerini web sunucularına aktardığımızı değiştirmenin bir yolu var mı?


1
Bu , IE8 için olmasına rağmen alakalı olabilir.
Doktoro Reichard 16:13,

2
Hangi IE11 sürümünü kullanıyorsunuz? Modern UITam dokunmatik sürümü veya tam masaüstü sürümü? Seçenekleriniz cevabınıza bağlı.
Ramhound,

Masaüstü versiyonu
Tyler

1
@Tyler - Bu, kullanıcı aracısını değiştirmek için bir IE uzantısı kullanabileceğiniz anlamına gelir. Ayrıca compatability viewözelliği denemek isteyebilirsiniz . Sonunda, kullanıcı aracısını değiştirmek için bir uzantı kullanılamıyorsa ve web sitesi değiştirilemiyorsa, farklı bir tarayıcı kullanmanız gerekebilir.
Ramhound

Sorun, web sitesinin yalnızca IE ile çalışmasıdır. Ve şimdi yeni IE de değişiyor. Bu kullanıcıların bir sorun olduğunu düşünüyor. Teşekkür ederim.
Tyler,

Yanıtlar:


4

Sorun UAPick gelen Bayden Sistemleri ve ayrıca IE11s kendi "Development Tools" kullanma usulü F12, Ctrl+ 8, User Agent Stringbu ayar IE11 yeniden başlatılmasını hayatta kalmamasıdır.

Kayıt defterindeki değerleri zaten sağlanan @harrymc linklerinden değiştirerek bazı testler yaptım.

Öncelikle bir tane değiştirildi, HKEY_LOCAL_MACHINEancak bu işe yaramadı.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent

Ancak değişen HKEY_CURRENT_USERçalıştı. (ancak kullanıcıya özel)
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent

Öncelikle değişiklik yapmadan sonuç: ( myip.nl sonucu )
Bu, IE11 v11.0.9600.16384 numaralı bir Windows 8.1 64bit içindir.

User agent: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko 
Browser: Unknow browser. 

Bir IE9.regile aşağıdakileri yaptım :

REGEDIT4

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]
@="Mozilla/5.0"
"Compatible"="compatible"
"Platform"="Windows NT 6.1"
"Version"="MSIE 9.0"

Bu tamamen "User Agent String" inizi değiştirir. Çalıştırdıktan sonra anladım:

User agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko 
Browser: Internet explorer 9.0 

Ancak bu aynı zamanda "Platformunuzu" da değiştirir. Onu dışarıda bırakırdım. (Varsayılan olarak "Mozilla" da bırakabilirsiniz.)

Belki, web sayfalarınız yalnızca ararsa MSIE, sadece bilgileri değiştirmeniz yeterlidir Version. Platformve "Mozilla" da dokunulmadan kalabilir, böylece web siteleri yine de doğru bir şekilde tanımlayabilirler. Ben de Compatible-tag ekledim . Belki bu da kullanılmıştır.

REGEDIT4

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]
"Compatible"="compatible"
"Version"="MSIE 9.0"

Bu sonuçlanır:

User agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko 
Browser: Internet explorer 9.0 

IE9 için Geliştirme Araçları ( F12, Ctrl+ 8, User Agent String) tarafından verilen dize :
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)

Bu, aslına en yakın görünüyor ve onu IE9 ile uyumlu olarak tanımlayabiliyor.

"Kullanıcı Aracısı Dize" nizde tam olarak ne olduğunu bilmiyorum, web sitelerinizi mobil bir görünüm vermesi için tetikler (UA’nı belirtmediniz), ancak bu değerlerle oynamak bunu düzeltmeli ve bu ayarlar IE11’in yeniden başlatılması durumunda PC.


Düzenleme :
Yani sorun şudur Touch:
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/7.0; Touch; LCJB; rv:11.0)

IE, kendi eklediği parçaları değiştirme (veya kaldırma) imkanı vermez. Uyumlu, Platform, Sürüm değiştirebilir ve Platform Öncesi ve Sonrası jetonlarını ekleyebiliriz. (Sürüm artık IE11’i göndermeyecek olsa da, Öncesi ve Sonrası Platformu başlığında gönderilmeyecektir.)

TouchHala orada olduğunu görmek için uyumluluk modunu ayarlamayı deneyebilirsiniz . (Bunu zaten denediniz mi?) Bu işe yararsa, sorunlu siteleri listeye ekleyebilirsiniz, böylece her zaman uyumluluk modunda görüntülenirler.

IE göndermek için ısrar ediyorsa Touch, UA'yı genişletilmiş bir Platform anahtarı ile yönetmeyi deneyebilirsiniz.

REGEDIT4

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]
@="Mozilla/5.0"
"Platform"="Windows NT 6.1; Trident/7.0; rv:11.0) // ("

Bu şekilde UA'nız olur
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/7.0; rv:11.0) // (; Trident/7.0; Touch; LCJB; rv:11.0)
ve umarım sitenin Touchbirinci (ve ikinci arasında daha fazla sorun yaşar ).

Bu işe yaramazsa, tek seçenek UA'yı geçersiz kılacak bir eklenti olacaktır (UAPick gibi, ancak yeniden başlatıldıktan sonra kalıcı olan).


# 2’yi düzenleyin :

Başka bir seçenek bulundu. Site Bütün UA tarar Eğer edecektir bulmak Touch. Aşağıda, UA'nın Platform bölümünü bir sahtekarlıkla karıştırırsınız, böylece kesinlikle onu bulamazsınız: (Bu çözümü burada buldum )

notouch.vbsAşağıdakileri içeren bir dosya oluşturun:

Dim oShell
set oShell = CreateObject("WScript.Shell")
oShell.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Platform", "Windows NT 6.1; Trident/7.0; rv:11.0)" & vbLf & "IGNORE: (", "REG_SZ"
Set oShell = Nothing

( & vbLf & "IGNORE:bölüme dikkat edin )

.Vbs'yi çalıştırdıktan sonra, platform parçası bir satır beslemesine ve bundan sonra bir IGNORE hattına sahiptir. Başlıklarda şöyle görünecek:

User agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/7.0; rv:11.0)
IGNORE: (Windows NT 6.1; Trident/7.0; Touch; LCJB; rv:11.0)

Bakınız ... artık TouchKullanıcı aracısı satırında değil;)
(bir kesmek, ancak hey ... işe yarıyor)


1
Cevabımın çalıştığını doğrulamak için iyi bir iş çıkardın.
harrymc 24

1
@harrymc Evet, aynı yerlerde onlardan bahsetmeliydim, ancak platformuna uygulandığından emin olmadığınızı düşündüm, bir bakalım.
Rik

1
Cevabını okuduktan sonra Eh, ben emin, bu nedenle deneyler ile onaylandı söylemek için benim cevap değiştirdi.
harrymc 24

Mozilla / 5.0 (uyumlu; MSIE 9.0; Windows NT 6.1; Trident / 7.0; Dokunma; LCJB; rv: 11.0) Dokunma; siteleri mobil moda sokan şey budur. Bunu nasıl engelleyeceğiniz hakkında bir fikriniz var mı?
Tyler

1
@Tyler Cevabımın sonuna bir Düzenleme ekledim. Ayrıca ... Uyumluluk modunu zaten denediniz mi? (Kalıcı uyumluluk için listeye siteler ekleyebilirsiniz). Aksi takdirde, düzenlememi yaptığım gibi UA'nın yönetimini Platform-anahtar ile deneyin.
Rik,

2

Soruna neden olan kullanıcı aracısı dizesi olduğundan emin misiniz?

Emin değilseniz , URL isteğini tüm başlıklarıyla birlikte izlemek ve yakalamak için Fiddler2'yi kullanabilir ve aynı zamanda bu web sitesinde nasıl etkilendiğini görmek için bu URL isteğinde yapılan değişiklik işçiliğini deneyimleyebilirsiniz.

Microsoft makalesi Kullanıcı aracısı kayıt defteri anahtarları bölümündeki Kullanıcı aracısı dizelerini anlama Kullanıcı aracısı dizesinin belirli bölümlerinin IE11'de kayıt defteri anahtarı aracılığıyla değiştirilebileceğini söylüyor :HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent

HKEY_LOCAL_MACHINE (or HKEY_CURRENT_USER)
SOFTWARE
  Microsoft
     Windows
        CurrentVersion
           Internet Settings
              5.0
                 User Agent
                    (default) = "Mozilla/4.0"
                    Compatible = "compatible"
                    Platform = "Windows NT 5.1"
                    Version = "MSIE 6.0"
                    Pre Platform
                       Token = Value
                    Post Platform
                       Token = Value

Makale diyor ki:

Kullanıcı Aracısı anahtarının varsayılan değeri, kullanıcı aracısı dizesinde bildirilen uygulama adı ve uygulama sürümü belirteçlerinin yerini alır. Uygulama adı için ilk yedi karakterin kullanıldığını ve kalan karakterlerin uygulama sürümü belirtecini belirlediğini unutmayın.

Uyumlu, Platform ve Sürüm değerleri, kullanıcı aracısı dizesindeki ilgili belirteçleri değiştirir.

Platform Öncesi anahtar veya Platform Sonrası anahtarının altında yeni dize değerleri oluşturmak için Kayıt Defteri Düzenleyicisi'ni kullanarak kullanıcı aracısı dizisine ek simgeler eklenebilir. Değer adı tam belirteç olmalıdır; değer verisi yoksayılır. Platform Öncesi anahtarına eklenen belirteçler son kullanıcı aracısı dizesindeki platform belirtecinin önünde görünür. Platform Sonrası anahtarına eklenen belirteçler, son kullanıcı-aracı dizesindeki platform belirtecinden sonra görünür. Platform Öncesi anahtarında veya Platform Sonrası anahtarındaki birden çok simge öngörülemeyen bir sırada görüntülenir.

@Rik tarafından yapılan bazı deneyler yukarıdakilerin platformunuz için çalışması gerektiğini göstermiştir. Tarayıcınızı gizleyerek bu web sitesinin davranışını değiştirip değiştirmediğini görmek için bu değerleri değiştirmeyi deneyebilirsiniz.


Evet, IE9'a öykünmek veya IE9 olarak ayarlamak için USPick kullanmak, IE yeniden başlatılıncaya kadar sorunu düzeltir. Temel olarak, siteye "mobil modda" sunulmasına neden olan "dokunma" UA fragmanıdır.
Tyler,

@Tyler: IE yeniden başlatılsa bile kayıt defterinde olduğu için bu düzeltme çalışmaya devam ediyor.
harrymc 24

Daha fazla olasılık: (1) Yerel Politika Düzenleyiciyi kullanarak bu yöntemi deneyin . (2) Ücretsiz UAPick'i deneyebilirsiniz . Uyarı: Sadece masaüstü modunda çalışır ve Geliştirilmiş Korumalı Mod'un devre dışı bırakılmasını gerektirir.
harrymc

Metot 2, yorumlarda (ve cevabımda) zaten belirtilmiştir ve IE11'in yeniden başlatılmasında hayatta kalamaz. (Yeniden başlatma işleminden sağ çıkmayan Geliştirme Aracı (F12) gibi çalışır.) Yöntem 1 ilginç. "MSIE 9.0" u normal kullanıcı aracısı dizginize (sonunda) ekleyebilirsiniz. Site sadece MSIEdizenin varlığını test ediyorsa , belki de size doğru siteyi sunacaktır. Bu sorunun sorulduğu sitelerle test edilmesi gerekiyor.
Rik,

@Rik: UAPick'ten bahsettiğin için üzgünüz. Yerel Politika Düzenleyici yöntemi için, posterime cevabımı eklemek isteyip istemediğinizi bir kelime bekliyorum.
harrymc

1

Sanırım Windows 8.1 demek istiyorsun.
Bu durumda, MS, Windows 8.1'de IE11 için kullanıcı aracısı dizesini değiştirdi ve eski web sitelerinin PC'yi dokunmatik ekran olmayan dizüstü bilgisayarım için bile mobil cihaz olarak algılamasını sağlıyor. Bir çözüm var, aslında söylemek için bir geçici çözüm. Chrome / FF'yi alın ve bir kullanıcı aracısı değiştirici eklentisi kurun. Daha sonra bazı eski tarayıcıları "FAKE" (Peronal önerim IE8) eski web sitelerini yüklemek için.

Bu en iyi yol olmayabilir ama en kolay olduğuna eminim.


1
Sadece 0.02 $ 'lıklarımı eklemek için: Evet, bu pek çok site ile çalışır. Ancak "Yalnızca IE ile çalışıyorum" diyen siteye bağlı, "Diğer tarayıcılarla da çalışıyorum, ancak yalnızca IE ile test edildim ve başka bir adımı gösterirseniz çalışmamasını talep edeceğim" anlamına geliyor. .
Hennes

1
Site mobil versiyona yönlendirildiği için buradaki durum böyle görünüyor ... Windows 8.1'e güncelleme yaptığımdan beri, bu davranışı başka türlü web sitelerinde de iyi davranıyorum ..
tumchaaditya
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.