वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को क्रॉल करने की सुविधा को मैनेज करना

वेबसाइट पर फ़िल्टर लगाकर खोजने की सुविधा, वेबसाइटों की एक सामान्य सुविधा है. इसकी मदद से, वेबसाइट पर आने वाले लोग यह तय कर सकते हैं कि उन्हें किसी पेज पर आइटम (जैसे, प्रॉडक्ट, लेख या इवेंट) कैसे दिखाए जाएं. यह एक लोकप्रिय और काम की सुविधा है. हालांकि, इसे इस्तेमाल करने का सबसे सामान्य तरीका, यूआरएल पैरामीटर पर आधारित होता है और इससे यूआरएल के अनलिमिटेड स्पेस जनरेट हो सकते हैं. ये वेबसाइट को कई तरह से नुकसान पहुंचाते हैं:

  • ज़रूरत से ज़्यादा क्रॉल करना: वेबसाइट पर फ़िल्टर लगाकर खोजने पर बनने वाले यूआरएल, आम तौर पर नए होते हैं. साथ ही, क्रॉलर बिना यूआरएल क्रॉल किए यह तय नहीं कर पाते हैं कि यूआरएल काम के होंगे या नहीं. इसलिए, क्रॉलर बड़ी संख्या में इन यूआरएल को ऐक्सेस करते हैं. इसके बाद ही, क्रॉलर की प्रोसेस यह तय करती है कि ये यूआरएल काम के नहीं हैं.
  • डिस्कवरी क्रॉल धीमे होना: पिछले पॉइंट से, अगर क्रॉलर बेकार के यूआरएल क्रॉल करने में समय खर्च कर देते हैं, तो क्रॉलर के पास नए और काम के यूआरएल खोजने लिए कम समय बचता है.

वेबसाइट पर फ़िल्टर लगाकर खोजे जाने वाले किसी सामान्य यूआरएल की क्वेरी स्ट्रिंग में, कई पैरामीटर शामिल हो सकते हैं. ये पैरामीटर उन आइटम की प्रॉपर्टी से जुड़े होते है जिनके लिए वे फ़िल्टर किए जाते हैं. उदाहरण के लिए:

https://example.com/items.shtm?products=fish&color=radioactive_green&size=tiny

यूआरएल पैरामीटर products, color, और size में से किसी एक को बदलने पर, उस पेज पर आइटम का एक अलग सेट दिखेगा. इसका मतलब अक्सर यह होता है कि फ़िल्टर के संभावित कॉम्बिनेशन की संख्या बहुत ज़्यादा हो जाती है. इससे संभावित यूआरएल की संख्या भी बहुत ज़्यादा हो जाती है. हमारा सुझाव है कि अपने संसाधनों को बचाने के लिए, इन यूआरएल को इनमें से किसी एक तरीके से मैनेज करें:

  • अगर आपको वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को इंडेक्स नहीं कराना हैं, तो उन्हें क्रॉल होने से रोकें.
  • अगर आपको वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को इंडेक्स कराना है, तो पक्का करें कि वे इस सेक्शन में बताए गए सबसे सही तरीकों के मुताबिक हों. ध्यान रखें कि फ़िल्टर लगाकर खोजे गए यूआरएल को क्रॉल करने के लिए, साइटों को बहुत ज़्यादा कंप्यूटिंग रिसॉर्स की ज़रूरत पड़ती है, क्योंकि उन पेजों को रेंडर करने के लिए बहुत सारे यूआरएल और ऑपरेशन की ज़रूरत होती है.

वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को क्रॉल होने से रोकना

अगर आपको सर्वर रिसॉर्स बचाने हैं और वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को Google Search में नहीं दिखाना है, तो इनमें से किसी एक तरीके का इस्तेमाल करके, इन यूआरएल को क्रॉल होने से रोका जा सकता है.

  • वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को क्रॉल करने से रोकने के लिए, robots.txt का इस्तेमाल करें. अक्सर, फ़िल्टर किए गए आइटम को क्रॉल करने की अनुमति देने की कोई अच्छी वजह नहीं होती. ऐसा करने से, सर्वर रिसॉर्स का इस्तेमाल होता है, लेकिन इससे कोई फ़ायदा नहीं मिलता या बहुत कम फ़ायदा मिलता है. इसके बजाय, अलग-अलग आइटम के पेजों के साथ-साथ, एक ऐसे खास लिस्टिंग पेज को भी क्रॉल करने की अनुमति दें जो बिना फ़िल्टर के सभी प्रॉडक्ट दिखाता हो.
    user-agent: Googlebot
    disallow: /*?*products=
    disallow: /*?*color=
    disallow: /*?*size=
    allow: /*?products=all$
    
  • फ़िल्टर तय करने के लिए, यूआरएल फ़्रैगमेंट का इस्तेमाल करें. आम तौर पर, Google Search, क्रॉल और इंडेक्स करने के लिए यूआरएल फ़्रैगमेंट का इस्तेमाल नहीं करता. अगर फ़िल्टर करने का आपका तरीका यूआरएल फ़्रैगमेंट पर आधारित है, तो क्रॉलिंग पर इसका कोई असर नहीं पड़ेगा (न तो अच्छा और न ही बुरा). उदाहरण के लिए, यूआरएल पैरामीटर के बजाय, यूआरएल फ़्रैगमेंट का इस्तेमाल करना:
    https://example.com/items.shtm#products=fish&color=radioactive_green&size=tiny

rel="canonical" link एलिमेंट और rel="nofollow" ऐंकर एट्रिब्यूट का इस्तेमाल करके, यह तय किया जा सकता है कि वेबसाइट पर फ़िल्टर लगाकर खोजे गए कौनसे यूआरएल क्रॉल करने हैं और कौनसे नहीं. आम तौर पर, लंबे समय तक के लिए ये तरीके, पहले बताए गए तरीकों के मुकाबले कम असरदार होते हैं.

  • कौनसा यूआरएल, वेबसाइट पर फ़िल्टर लगाकर खोजे गए किसी यूआरएल का एक कैननिकल वर्शन है, यह बताने के लिए rel="canonical" का इस्तेमाल करने से, समय के साथ उन यूआरएल के गैर-कैननिकल वर्शन को क्रॉल करने की संख्या कम हो सकती है. उदाहरण के लिए, अगर आपके पास फ़िल्टर किए गए तीन पेज टाइप हैं, तो rel="canonical" को बिना फ़िल्टर वाले वर्शन पर ले जाएं: https://example.com/items.shtm?products=fish&color=radioactive_green&size=tiny, <link rel="canonical" href="https://example.com/items.shtm?products=fish" > की जानकारी देता है.
  • नतीजों के फ़िल्टर किए गए पेजों में ले जाने वाले ऐंकर पर, rel="nofollow" एट्रिब्यूट का इस्तेमाल करना फ़ायदेमंद हो सकता है. हालांकि, ध्यान रखें कि किसी खास यूआरएल पर ले जाने वाले हर ऐंकर में rel="nofollow" एट्रिब्यूट होना चाहिए, ताकि यह असरदार हो सके.

पक्का करें कि वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल, वेब के लिए सही हों

अगर आपको वेबसाइट पर फ़िल्टर लगाकर खोजे गए यूआरएल को संभावित रूप से क्रॉल और इंडेक्स कराना है, तो पक्का करें कि आपने सबसे सही तरीके अपनाए हों. इससे, आपकी साइट पर मौजूद बड़ी संख्या में संभावित यूआरएल को क्रॉल करने के खराब असर को कम किया जा सकता है:

  1. यूआरएल पैरामीटर सेपरेटर के तौर पर, इंडस्ट्री स्टैंडर्ड '&' का इस्तेमाल करें. क्रॉलर के लिए, कॉमा (,), सेमीकोलन (;), और ब्रैकेट ([ और ]) जैसे वर्णों को पैरामीटर सेपरेटर के तौर पर पहचानना मुश्किल होता है. ऐसा इसलिए होता है, क्योंकि ज़्यादातर मामलों में ये वर्ण, सेपरेटर नहीं होते.
  2. अगर यूआरएल पाथ में फ़िल्टर को एन्कोड किया जा रहा है, जैसे कि /products/fish/green/tiny, तो पक्का करें कि फ़िल्टर का लॉजिकल क्रम हमेशा एक जैसा रहे और कोई डुप्लीकेट फ़िल्टर मौजूद न हो.
  3. जब फ़िल्टर का कोई कॉम्बिनेशन, नतीजे न दिखाए, तो एचटीटीपी 404 स्टेटस कोड दिखाएं. अगर साइट की इन्वेंट्री में कोई ग्रीन फ़िश नहीं है, तो उपयोगकर्ताओं और क्रॉलर को एचटीटीपी स्टेटस कोड (404) के साथ "नहीं मिला" गड़बड़ी का मैसेज दिखना चाहिए. ऐसा तब भी होना चाहिए, जब यूआरएल में डुप्लीकेट फ़िल्टर या बेमतलब के फ़िल्टर कॉम्बिनेशन हों और पेजों में बांटे गए खोज नतीजों के यूआरएल मौजूद न हों. इसी तरह, अगर किसी फ़िल्टर कॉम्बिनेशन से कोई नतीजा नहीं मिलता है, तो उसे "नहीं मिला" गड़बड़ी वाले सामान्य पेज पर रीडायरेक्ट न करें. इसके बजाय, जिस यूआरएल पर यह समस्या हुई है उसी पर 404 एचटीटीपी स्टेटस कोड के साथ "नहीं मिला" गड़बड़ी वाला मैसेज दिखाएं.