Internet Explorer: उपयोगकर्ता एजेंट स्ट्रिंग का संपादन इसलिए यह सर्वर द्वारा देखा जाता है


0

ओएस: विंडोज 7/8
ब्राउज़र: इंटरनेट एक्सप्लोरर 11
प्लेटफॉर्म: x86

मैं एक सर्वर पर उपयोगकर्ता एजेंट स्ट्रिंग को सर्वर-साइड कोड और वेब सर्वर लॉग द्वारा सार्वभौमिक रूप से देखने के लिए कैसे संपादित कर सकता हूं? इसके लिए एक स्थायी, समाधान योग्य समाधान की आवश्यकता है, इसलिए डेवलपर टूल का उपयोग करने की संभावना जैसी कोई चीज लंबे समय तक काम नहीं करेगी।

एकमात्र तरीका जो मैंने इंटरनेट एक्सप्लोरर के लिए एक उपयोगकर्ता एजेंट स्ट्रिंग को सेट / संशोधित करने में सक्षम किया है ताकि यह दूरस्थ वेब सर्वर द्वारा देखा जा सके, निम्न रजिस्ट्री कुंजी \ मान का उपयोग करना है:

Key:   HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Version
Value: SomeTestString
Data:  NULL

उपरोक्त वह है जो समूह नीति सेटिंग द्वारा स्पष्ट रूप से उपयोग किया जाता है Windows Components\Internet Explorer\Customize User Agent String

यदि आप ऊपर दिखाए अनुसार कुंजी / मान जोड़ते हैं, तो आपका उपयोगकर्ता एजेंट कुछ इस तरह दिखाई देगा Mozilla/5.0 (SomeTestString; Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko दुर्भाग्य से, यह पहले जोड़ता है कस्टम स्ट्रिंग आप उपयोगकर्ता एजेंट स्ट्रिंग में जोड़ते हैं, जो कई Google साइटों और नेटफ्लिक्स (और शायद कई और अधिक) को तोड़ती है

मुझे मिली एक अन्य रजिस्ट्री कुंजी / मूल्य का उपयोग करके उपयोगकर्ता एजेंट स्ट्रिंग को जावास्क्रिप्ट क्वेरी के माध्यम से दिखाया जाएगा, लेकिन यह वेब साइट लॉग में दिखाई नहीं देता (सर्वर से दिखाई नहीं देता):

Key:   HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent
Value: SomeTestString
Data:  NULL

यदि आप वेब सर्वर के लॉग में देखते हैं, तो आपको केवल कुछ ऐसा दिखाई देता है: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko, लेकिन अगर आप एक पेज को हिट करते हैं जो उपयोगकर्ता एजेंट को दिखाने के लिए जावास्क्रिप्ट का उपयोग करता है, तो आप कुछ इस तरह से देखते हैं: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; SomeTestString; rv:11.0) like Gecko

किसी भी सलाह की सराहना की जाती है, क्योंकि मैं एक स्ट्रिंग के साथ फंस गया हूं जो उपयोग किए जाने पर कुछ साइटों को तोड़ता है। ध्यान दें कि हमें तृतीय-पक्ष प्लेटफ़ॉर्म का समर्थन करने के लिए उपयोगकर्ता एजेंट स्ट्रिंग में एक कस्टम आइटम निर्दिष्ट करने की आवश्यकता है जिसे हम नियंत्रित नहीं कर सकते हैं।


आपका सवाल क्या है?
Darth Android

पहले वाक्य के रूप में स्पष्ट करने का संपादन किया
Beems

जवाबों:


1

यह संभव था समय में एक बिंदु , लेकिन सुविधा को हटा दिया गया है और अब सीधे समर्थित नहीं है।

HTTP बातचीत ("सर्वर द्वारा देखा गया") और DOM प्रॉपर्टी के माध्यम से रिपोर्ट किए गए मान के दौरान रिपोर्ट किए गए उपयोगकर्ता एजेंट स्ट्रिंग के बीच का अंतर उपयोगकर्ता-एजेंट स्ट्रिंग को ओवरलोड करने वाले लोगों के साथ सामना करने के लिए डिज़ाइन किया गया एक जानबूझकर परिवर्तन है (भाग में) ठीक है इस फैशन

पहला लेख रजिस्ट्री मानों के एक सेट का वर्णन करता है जो एक समय में DOM उपयोगकर्ता एजेंट स्ट्रिंग को समायोजित करता है; यह संभव है कि पोस्ट प्लेटफ़ॉर्म सेटिंग्स काम करती रहें। आपको उपकरण चलाने वाली सभी क्लाइंट मशीनों के लिए सेटिंग्स समायोजित करने की आवश्यकता होगी।

यदि पोस्ट प्लेटफ़ॉर्म परिवर्तन पैन नहीं करते हैं, तो आपको एक अलग दृष्टिकोण पर विचार करने की आवश्यकता होगी, शायद एक का उपयोग क्रॉस-प्लेटफॉर्म रणनीति

उम्मीद है की यह मदद करेगा...

- लांस


धन्यवाद लांस, पूर्ण उपयोगकर्ता एजेंट का मुद्दा अब बातचीत के दौरान नहीं भेजा जा रहा है जहां हमारी समस्या झूठ है। हम इसे इस दौरान भेज सकते हैं, लेकिन यह कस्टम स्ट्रिंग को रोकता है जो कुछ वेब साइटों को तोड़ती है। "पोस्ट प्लेटफ़ॉर्म" कुंजियों या संस्करण वैक्टर का उपयोग करना [ msdn.microsoft.com/en-us/library/ms537512(v=vs.85).aspx ] सबसे अच्छा दांव लगता है, लेकिन पता लगाने के लिए एक शुद्ध सर्वर-साइड समाधान हमें संभवतः मिटा देगा।
Beems

एक समय में, संस्करण वैक्टर एक आदर्श समाधान होता। हालांकि, वे सशर्त टिप्पणियों पर निर्भर करते हैं, जो IE10 में अक्षम थे। माफ़ कीजिये। : - \
Lance Leonard

धन्यवाद। Microsoft हाल ही में चीजों को बहुत कठिन बना रहा है।
Beems

नमस्कार @ लांस, क्या आप उपयोगकर्ता-एजेंट रजिस्ट्री कुंजियों के पदावनति के बारे में जानकारी प्रदान कर सकते हैं? प्रदान किए गए url पर मुझे पदावनति के बारे में कोई जानकारी नहीं मिल रही है। धन्यवाद!
andrej

@andrej - मुझे नहीं लगता कि कभी कोई आधिकारिक बयान आया था, प्रति से। RegKeys को हमेशा असमर्थित माना जाता था (इसलिए देव हमकों के बारे में चिंता किए बिना कार्यान्वयन को बदल सकते थे)। अब मैं जो सबसे करीब पा सकता हूं वह सबसे नीचे है docs.microsoft.com/en-us/previous-versions/windows/... , जो कहता है कि, IE10 के रूप में, पूर्व / पोस्ट प्लेटफ़ॉर्म कुंजी केवल के माध्यम से रिपोर्ट की गई थी navigator.userAgent। अब जब IE आधिकारिक तौर पर असमर्थित हो गया है, तो इन पुराने डॉक्स को ढूंढना कठिन और कठिन हो रहा है। (मुझे यकीन नहीं है कि यह एक बुरी बात है।)
Lance Leonard

1

आप IE से "डेवलपर टूल" का उपयोग कर सकते हैं।

बस दबाओ F12 इसे सक्रिय करने के लिए।

  • पुराने संस्करणों पर, यह के अधीन है उपकरण मेन्यू, उपयोगकर्ता एजेंट स्ट्रिंग बदलें और इसे अनुकूलित करें।

  • नए लोगों पर, यह के तहत है अनुकरण मेन्यू।


कुछ शोध के बाद, मैंने कुछ रजिस्ट्री प्रविष्टियाँ कीं जिन्हें आप बदल सकते हैं अंश UA स्ट्रिंग का।

स्वच्छ Win7 उपयोग पर IE11 Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko

Win8 का उपयोग करता है NT 6.3 आम तौर पर एक जोड़ता है Touch कहीं।

मुझे लगता है कि उन चूक मूल्यों को रजिस्ट्री द्वारा नहीं बदला जा सकता है, फिर भी मुझे लगता है कि आप अधिकांश से छुटकारा पा सकते हैं .NET और अन्य सामग्री के तहत प्रविष्टियों को हटाने के द्वारा जोड़ा जाता है

  • [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform]
  • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform]

बस इस बात का ध्यान रखें compatibility mode IE में, सर्वर को सोचने पर मजबूर करने के लिए एक पूर्व IE संस्करण दिखाने के लिए UA स्ट्रिंग भी बदलता है है एक पुराना संस्करण (मुझे लगता है कि यह IE6 या 7 का उपयोग करता है), तो शायद जो आप चाहते हैं उनमें से अधिकांश बेकार हो जाएगा यदि किसी को उपयोग करने की आवश्यकता है compatibility mode एक वेबपेज लोड करने के लिए।


क्षमा करें, मैंने प्रश्न स्पष्ट किया। मुझे कहना चाहिए था कि मुझे एक स्थायी, तैनाती योग्य समाधान की आवश्यकता थी।
Beems

क्या आप कृपया लिख ​​सकते हैं कि आपके लिए सटीक उपयोगकर्ता-एजेंट स्ट्रिंग क्या है?
NuTTyX
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.