डायनामिक तरीके से दिखाना

'डायनामिक तरीके से दिखाने की सुविधा' एक ऐसा सेट अप है, जिसमें उपयोगकर्ता-एजेंट के अनुरोध के हिसाब से, सर्वर एक ही यूआरएल पर अलग-अलग HTML (और CSS) का इस्तेमाल करके पेज लोड करता है.

इस सेट अप में यह तुरंत पता नहीं चलता कि साइट, मोबाइल उपयोगकर्ता एजेंट के लिए HTML में बदलाव करती है (डेस्कटॉप उपयोगकर्ता एजेंट से क्रॉल करते समय मोबाइल सामग्री "छिप" जाती है), इसलिए हम सुझाव देते हैं कि सर्वर यह अनुरोध करने का एक संकेत भेजे कि 'स्मार्टफ़ोन के लिए Googlebot' भी पेज को क्रॉल करे. इससे मोबाइल सामग्री का पता लग जाएगा. यह संकेत 'Vary HTTP हेडर' का इस्तेमाल करके भेजा जाता है.

'डायनामिक तरीके से दिखाने कि सुविधा' हर डिवाइस के लिए अलग-अलग कोड का इस्तेमाल करती है, लेकिन यूआरएल वही रहता है.

कम शब्दों में कहा जाए तो...

  • उपयोगकर्ता-एजेंट के आधार पर अपने बदलावों का संकेत देने के लिए 'Vary HTTP हेडर' का इस्तेमाल करें.
  • उपयोगकर्ता-एजेंट स्ट्रिंग की ठीक से पहचान करें.

Vary HTTP हेडर

'Vary HTTP हेडर' से दो ज़रूरी और उपयोगी नतीजे निकाले जा सकते हैं:

  • यह इंटरनेट सेवा देने वाली कंपनियों (ISP) में और दूसरी जगह इस्तेमाल किए जाने वाले कैशिंग सर्वर को संकेत देता है. इस संकेत के ज़रिए बताया जाता है कि उन्हें उपयोगकर्ता एजेंट के हिसाब से यह तय करना चाहिए कि पेज को कैश का इस्तेमाल करके खोला जाए या नहीं. 'Vary HTTP हेडर' के बिना, कैश गलती से मोबाइल उपयोगकर्ताओं के लिए 'डेस्कटॉप HTML पेज' के कैश का इस्तेमाल कर पेज खोल सकता है या डेस्कटॉप उपयोगकर्ताओं के लिए 'मोबाइल HTML पेज' के कैश का इस्तेमाल कर पेज खोल सकता है.
  • इससे Googlebot को आपकी 'मोबाइल के मुताबिक बनाई गई सामग्री' तेज़ी से खोजने में मदद मिलती है, क्योंकि मान्य 'Vary HTTP हेडर' उन संकेतों में से एक होता है, जिन्हें हम मोबाइल के मुताबिक बनाई गई सामग्री दिखाने वाले यूआरएल को क्रॉल करने के लिए इस्तेमाल कर सकते हैं.

जब सर्वर को कोई पेज लोड करने का अनुरोध मिलता है, तो सर्वर की ओर से ब्राउज़र को भेजे जाने वाले जवाब में 'Vary HTTP हेडर' भी शामिल होता है. उदाहरण के लिए:

GET /page-1 HTTP/1.1
Host: www.example.com
(...rest of HTTP request headers...)

HTTP/1.1 200 OK
Content-Type: text/html
Vary: User-Agent
Content-Length: 5710
(... rest of HTTP response headers...)

'Vary हेडर' ब्राउज़र को बताता है कि पेज के लिए अनुरोध करने वाले उपयोगकर्ता एजेंट के आधार पर, लोड होने वाले पेज की सामग्री अलग-अलग होगी. अगर आपके सर्वर में पहले से ही 'Vary HTTP हेडर' का इस्तेमाल हो रहा है, तो आप पहले से इस्तेमाल हो रही सूची में “उपयोगकर्ता-एजेंंट” जोड सकते हैं.

उपयोगकर्ता-एजेंट की सही तरीके से पहचान करना

उपयोगकर्ता-एजेंट की पहचान करने (कभी-कभी इसे उपयोगकर्ता-एजेंट "स्निफ़िंग" भी कहा जाता है) में आमतौर पर गड़बड़ी होने की संभावना रहती है. इसकी कई वजहें हैं, लेकिन आम तौर पर तीन तरह की गड़बड़ियां होती हैं:

  1. उपयोगकर्ता-एजेंट की पहचान करने के लिए, उपयोगकर्ता-एजेंट स्ट्रिंग (या सबस्ट्रिंग) की एक सूची का इस्तेमाल कर मिलान किया जाता है. इन सूचियों का लगातार रखरखाव करना और उन्हें अपडेट करते रहना ज़रूरी होता है, नहीं तो इनके ज़रिए नए उपयोगकर्ता-एजेंट का मिलान नहीं हो पाएगा. असल में, ऐसी सूचियों का ठीक से रखरखाव नहीं किया जाता और वे पुरानी होती हैं, जिससे आपके उपयोगकर्ताओं का अनुभव खराब होता है.
  2. उपयोगकर्ता-एजेंट का मिलान करते समय, गलत मिलान होना बहुत आम बात है, जिसमें किसी डेस्कटॉप उपयोगकर्ता-एजेंट को मोबाइल उपयोगकर्ता-एजेंट या मोबाइल उपयोगकर्ता-एजेंट को डेस्कटॉप उपयोगकर्ता-एजेंट समझ लिया जाता है. इसी तरह से, साइटों के साथ होने वाली एक आम गलती यह है कि वे अनजाने में टैबलेट डिवाइस को स्मार्टफ़ोन मान लेती हैं. अगर आप अपनी साइट को एक्सेस करने वाले ब्राउज़र के उपयोगकर्ता-एजेंट की पहचान कर रहे हैं, तो पक्का करें कि पहचान करने के लिए सामान्य मोबाइल स्ट्रिंग (जैसे कि, केवल “Android” शब्द की जाँच करना) के बजाय खास तौर पर स्मार्टफ़ोन से जुड़े स्ट्रिंग (जैसे कि, “Android” और “मोबाइल”, दोनों शब्दों की जाँच करना) का इस्तेमाल किया जा रहा हो. हमारे ब्लॉग पोस्ट में ज़्यादा जानें.

  3. उपयोगकर्ता-एजेंट की पहचान करते समय क्लोकिंग के बारे में होशियार रहें. उपयोगकर्ता-एजेंट की पहचान करते समय, साइट को उपयोगकर्ता-एजेंट स्ट्रिंग में डिवाइस का नाम ढूंढकर उसकी श्रेणी या प्रकार की पहचान करनी चाहिए; इसे खास तौर पर Googlebot को नहीं ढूंढना चाहिए. सभी Googlebot उपयोगकर्ता-एजेंट की पहचान खास मोबाइल डिवाइस के रूप में होती है और आपको हर डिवाइस के Googlebot उपयोगकर्ता-एजेंट को ठीक वैसा ही रिस्पॉन्स देना चाहिए, जैसा आप उस डिवाइस के उपयोगकर्ता को देते हैं. उदाहरण के लिए, 'स्मार्टफ़ोन के लिए Googlebot' खुद की पहचान iPhone के रूप में बताता है और आपको इसे वैसा ही रिस्पॉन्स देना चाहिए, जैसा आप किसी iPhone उपयोगकर्ता को देंगे (रीडायरेक्ट, ऑप्टिमाइज़ की गई सामग्री वगैरह).

निम्न के बारे में फ़ीडबैक भेजें...