Robots.txt जनरेटर
हर क्रॉलर के लिए allow और disallow नियमों, वैकल्पिक crawl delay, और साइटमैप रेफ़रेंस के साथ robots.txt फ़ाइल बनाएं.
नियम
robots.txt
हर क्रॉलर पर नियम लागू करने के लिए यूज़र-एजेंट के तौर पर * इस्तेमाल करें, या
Googlebot जैसे किसी खास बॉट का नाम दें. Disallow किसी पाथ को क्रॉल होने से रोकता है, Allow
साफ़ तौर पर किसी को अनुमति देता है (disallow किए गए फ़ोल्डर के भीतर कोई अपवाद बनाने के लिए उपयोगी).
यह कैसे काम करता है
जनरेटर आपके रूल्स को यूज़र-एजेंट के हिसाब से ग्रुप करता है, इसलिए Googlebot के लिए तीन अलग-अलग रो में लिखे तीन रूल्स एक ही User-agent: Googlebot लाइन के नीचे मर्ज हो जाते हैं, हर ग्रुप के बीच एक ब्लैंक लाइन के साथ, जैसा पार्सर उम्मीद करते हैं. खाली पाथ वाले रूल्स को छोड़ दिया जाता है. अगर आप सारे रूल्स हटा देते हैं, तो आउटपुट User-agent: * के साथ खाली Disallow: पर वापस आ जाता है, जो 'कुछ भी ब्लॉक न करें' कहने का सही तरीका है.
robots.txt को लेकर दो बातें लोगों को अक्सर उलझा देती हैं. पहली, Crawl-delay इस टूल में है क्योंकि Bing और Yandex इसे मानते हैं, लेकिन Googlebot इसे पूरी तरह नज़रअंदाज़ करता है, गूगल ने 2019 में अनसपोर्टेड डायरेक्टिव्स को आधिकारिक तौर पर बंद कर दिया था. दूसरी, और ज़्यादा ज़रूरी: Disallow किसी पेज को सर्च रिज़ल्ट से हटाता नहीं, सिर्फ़ क्रॉलिंग रोकता है. एक ब्लॉक की हुई URL फिर भी इनकमिंग लिंक की वजह से इंडेक्स हो सकती है, बस बिना डिस्क्रिप्शन के दिखेगी. अगर आपको किसी पेज को इंडेक्स से पूरी तरह हटाना है, तो उल्टा करें: क्रॉलिंग की इजाज़त दें और उस पेज पर noindex टैग लगाएं.
पूरी फ़ाइल इस पेज के जावास्क्रिप्ट में, आपके टाइप करते समय ही असेंबल होती है. आपके पाथ और बॉट नाम कभी कहीं भेजे नहीं जाते, यह आप डेवलपर टूल्स के नेटवर्क टैब में जांच सकते हैं.
सामान्य प्रश्न
क्या robots.txt वाकई Google से पेज ब्लॉक करता है?
यह क्रॉलिंग रोकता है, ज़रूरी नहीं कि इंडेक्सिंग भी रुके. अगर कोई और साइट उस URL को लिंक करती है, तो disallow किया गया URL फिर भी सर्च रिज़ल्ट में (बिना डिस्क्रिप्शन के) दिख सकता है. किसी पेज को सर्च रिज़ल्ट से पूरी तरह बाहर रखने के लिए noindex मेटा टैग का इस्तेमाल करें, जिसके लिए पेज का क्रॉल होना ज़रूरी है.
robots.txt कहां रखनी चाहिए?
आपके डोमेन के रूट में, ठीक https://example.com/robots.txt पर, कहीं और नहीं. क्रॉलर इसे किसी सब-फ़ोल्डर में नहीं ढूंढ़ते.
खाली Disallow का क्या मतलब है?
Disallow: के आगे कुछ न लिखे होने का मतलब है "कुछ भी disallow नहीं", यानी उस user-agent के लिए सब कुछ allow है. यही डिफ़ॉल्ट है जिससे यह टूल Allow: / के साथ शुरू होता है.