Robots.txt जनरेटर
अपनी वेबसाइट के लिए जल्दी से एक robots.txt फ़ाइल बनाएँ।
त्वरित-प्रारंभ प्रीसेट
कैसे उपयोग करें
- एक प्रीसेट चुनें या नियम मैन्युअल रूप से बनाएँ।
- Allow/Disallow पथों के साथ user-agent समूह जोड़ें।
- अपने साइटमैप URL जोड़ें।
- फ़ाइल कॉपी करें या डाउनलोड करें और अपनी साइट की रूट डायरेक्टरी में डालें।
अक्सर पूछे जाने वाले प्रश्न
robots.txt फ़ाइल कहाँ रखें?
इसे आपके डोमेन के रूट में होना चाहिए: https://yourdomain.com/robots.txt। यह उप-डायरेक्टरी में काम नहीं करेगा।
क्या robots.txt Google को पेज इंडेक्स करने से रोकता है?
robots.txt बॉट को पेज क्रॉल करने से रोकता है परंतु उन्हें खोज परिणामों से नहीं हटाता। इसके लिए <meta name="robots" content="noindex"> का उपयोग करें।
AI बॉट क्या हैं?
AI बॉट जैसे GPTBot, CCBot और Google-Extended AI मॉडल प्रशिक्षित करने के लिए सामग्री एकत्र करते हैं। आप उन्हें विशेष रूप से ब्लॉक कर सकते हैं।
1994 में जन्मा, 2022 में Standardised: एक Standard
Robots Exclusion Protocol को February 1994 में Martijn Koster ने design किया, जिसके almost तीन दशक बाद September 2022 में इसे finally RFC 9309 के रूप में codified किया गया। 28 सालों तक यह एक de facto standard था जिसे सब follow करने पर agree करते थे लेकिन details पर कोई agree नहीं करता था। RFC ने syntax (User-agent / Disallow / Allow lines), precedence rules, file-size limit (parsers को कम से कम 500 KiB accept करना होगा), और errors handle करने का तरीका (4xx → crawler कुछ भी access कर सकता है; 5xx → crawler को complete disallow assume करना होगा) nail down किया। RFC से पहले अधिकांश major search-engine crawlers roughly same behaviour को conform करते थे, लेकिन small differences मायने रखते थे।
File कहां रहती है
एक robots.txt file को आपके origin के root से exact URL /robots.txt पर serve होना चाहिए (one per scheme + host + port)। Subdirectories काम नहीं करतीं; /blog/robots.txt crawlers के लिए बस एक 404 है। हर subdomain को अपनी file चाहिए (www.example.com/robots.txt और blog.example.com/robots.txt independent files हैं)। File plain text है, text/plain के रूप में served, UTF-8 encoded (BOM allowed है लेकिन strongly discouraged)।
Syntax एक Page में
# Comments start with #
User-agent: * # Apply to all crawlers
Disallow: /admin/ # Block this directory
Disallow: /search # Block search results
Allow: /admin/login # Allow this path even within /admin/
User-agent: Googlebot # Specific Googlebot rules
Disallow: /test/
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/news-sitemap.xml
मुख्य व्यवहार:
- Group structure। एक «group» एक या अधिक
User-agent:lines से शुरू होती है औरAllow:/Disallow:rules के साथ continue होती है जब तक अगलाUser-agent:new group शुरू न करे। - Specificity wins। सबसे specific user-agent group किसी given crawler पर apply होती है। Googlebot अपनी
User-agent: Googlebotrules read करता है औरUser-agent: *rules को entirely ignore करता है। - Empty
Disallow:का मतलब «सब allow» है।Disallow: /का मतलब «सब block» है। Slash की presence/absence critical है। - Wildcards।
*किसी भी sequence of characters से match करता है;$end-of-URL से match करता है।Disallow: /*.pdf$सभी PDFs block करता है। Officially ये Google extensions हैं, लेकिन अधिकांश major crawlers इन्हें accept करते हैं। - Case sensitivity। User-agent names case-insensitive हैं (Googlebot = googlebot)। Rules में URL paths case-sensitive हैं (
/Page≠/page) case-sensitive filesystems पर।
robots.txt क्या नहीं करता
सबसे common misunderstanding, जिसे Google अपने documentation में directly call out करता है: robots.txt crawling prevent करता है, indexing नहीं। यदि कोई page web पर कहीं और से linked है, तो Google URL index कर सकता है (और search results में stub के साथ show कर सकता है जैसे «No information available for this page») भले ही उसने कभी page खुद crawl न किया हो। किसी page को genuinely search results से बाहर रखने के लिए, page पर ही <meta name="robots" content="noindex"> tag use करें, या X-Robots-Tag: noindex HTTP header। Crawler को noindex directive देखने के लिए page access करने की permission होनी चाहिए, मतलब robots.txt में कोई page Disallow नहीं करनी चाहिए यदि उसमें noindex भी add किया हो, क्योंकि crawler noindex कभी नहीं देखेगा।
robots.txt और क्या नहीं करता:
- Sensitive URLs hide करना। File publicly readable है; कोई भी
yoursite.com/robots.txtfetch कर सकता है।/admin/या/internal-tools/जैसे paths list करने से दुनिया को पता चल जाता है कि वे URLs exist करती हैं। Genuine secrecy के लिए, authentication use करें; «just don't index it» के लिए noindex use करें। - Malicious crawlers stop करना। Bad actors robots.txt entirely ignore करते हैं। यह well-behaved crawlers के लिए एक request है, enforcement नहीं।
- Embed-card crawlers को किसी reliable way में block करना। Facebook का
facebookexternalhit, Twitter काTwitterbot, LinkedIn काLinkedInBot, Slack और Discord bots सब robots.txt read करते हैं, लेकिन यदि आप उन्हें block करते हैं, तो आपके shared links उन platforms पर previews render नहीं करेंगे। यदि आप share cards चाहते हैं तो उन्हें explicitly allow करें।
जानने योग्य User Agents
| User-agent | Owner | यह किसके लिए crawl करता है |
|---|---|---|
Googlebot | Web Search अनुक्रमण | |
Bingbot | Microsoft | Bing search अनुक्रमण |
DuckDuckBot | DuckDuckGo | DuckDuckGo खोज |
Slurp | Yahoo | Yahoo खोज |
YandexBot | Yandex | Russian खोज |
Baiduspider | Baidu | Chinese खोज |
facebookexternalhit | Meta | Facebook share-card मेटाडेटा |
LinkedInBot | LinkedIn share पूर्वावलोकन | |
Twitterbot | X / Twitter | Tweet card मेटाडेटा |
Slackbot | Slack | Slack link प्रसार |
Discordbot | Discord | Discord link पूर्वावलोकन |
AI-Crawler Question
2023 से, AI-training crawlers की एक wave appear हुई है, और कई sites ने AI training से opt out करने के लिए robots.txt rules add किए हैं। जानने लायक major ones:
- GPTBot: OpenAI का training crawler।
- ChatGPT-User: ChatGPT users द्वारा URL fetch करने के लिए कहने पर OpenAI का on-demand crawler।
- OAI-SearchBot: OpenAI का search-product crawler।
- Google-Extended: AI training (Bard / Gemini) के लिए Google का separate token, Googlebot से independent। Search allow करते हुए AI training block करने देता है।
- ClaudeBot / Claude-User / Claude-SearchBot: Anthropic के various crawlers।
- PerplexityBot: Perplexity AI।
- CCBot: Common Crawl, वह open dataset जिस पर अधिकांश LLMs train करते हैं।
- Bytespider: ByteDance / TikTok।
- Applebot-Extended: Apple Intelligence का separate token, Google-Extended के similar।
दो important things जानने योग्य: (1) opt-out voluntary है, क्योंकि केवल robots.txt respect करने वाले crawlers affected हैं, और (2) «search» और «AI training» के बीच की line quickly blur हो रही है, इसलिए सभी AI crawlers block करने से आपका content AI-summarised search results में कैसे appear होता है वह भी affect हो सकता है। ऊपर «Block AI Crawlers» preset को starting point के रूप में use करें, फिर decide करें कि आपकी site के लिए कौन से trade-offs sense बनाते हैं।
Crawl-Delay और Google इसे Ignore क्यों करता है
Non-standard Crawl-delay: directive crawlers से request करती है कि वे आपके server पर requests के बीच N seconds wait करें। Bing, Yandex, और कई smaller crawlers इसे honour करते हैं। Google नहीं करता। Google का documentation explicitly state करता है कि Googlebot Crawl-delay ignore करता है। Search Console पहले एक manual Crawl rate setting expose करता था, लेकिन Google ने early 2024 में most sites के लिए इसे deprecate किया और अब server response के आधार पर automatically crawl rate adjust करता है। यदि आपका goal specifically Googlebot slow करना है, तो robots.txt गलत tool है।
Sitemap निर्देश
robots.txt में अपना sitemap list करना crawlers को hint देता है कि आपकी URL list कहां find करें। Absolute URLs use करें (full https://), one per line। आप multiple sitemaps list कर सकते हैं उन sites के लिए जो content को separate sitemaps में split करती हैं (एक main sitemap, एक news sitemap, एक video sitemap, एक image sitemap)। Sitemap directive formally original robots.txt protocol का part नहीं है, लेकिन हर major search engine इसे read करता है।
सामान्य गलतियाँ
- CSS / JavaScript files Disallow करना। Google ranking के लिए rendered content use करता है। यदि Googlebot आपकी
/css/या/js/fetch नहीं कर सकता, तो वह आपके pages correctly render नहीं कर सकता, जिससे SEO hurt होता है। Resource directories block न करें। - Disallow और noindex को confuse करना। Disallow crawling stop करता है; page अभी भी inbound links के माध्यम से search में appear हो सकती है। Actual indexing control के लिए noindex meta tags use करें।
- Private URLs list करना। robots.txt में कुछ भी publicly readable है।
/admin/या/wp-admin/advertise न करें यदि आप नहीं चाहते कि attackers जानें कि वे exist करते हैं; बजाय इसके, proper authentication use करें और noindex पर rely करें। Disallow:empty रखना जबDisallow: /meant था। Empty सब allow करता है;Disallow: /सब block करता है। ये opposites हैं।- Embed crawlers block करने की कोशिश करना और फिर यह सोचते रहना कि share previews क्यों काम नहीं करते। यदि आप facebookexternalhit Disallow करते हैं, तो आपके shared links Facebook cards render नहीं करेंगे। यदि आप previews चाहते हैं तो social-media bots explicitly allow करें।
- Sitemap line add करना भूल जाना। यह free है, useful है, और अधिकांश generators इसे omit करते हैं।
- Google throttle करने के लिए Crawl-delay trust करना। यह काम नहीं करता। Search Console use करें।
- IP / region / device के हिसाब से block करने के लिए robots.txt use करना। Protocol में इनका कोई concept नहीं है। Server-side rules use करें।
- File test न करना। Google ने November 2023 में standalone robots.txt Tester retire किया और इसे Search Console के अंदर robots.txt Report से replace किया; वह report syntax errors flag करती है और most recent crawl show करती है। Deploy करने से पहले हमेशा इसे (या किसी अन्य open-source robots.txt validator को) check करें।
अधिक Frequently Asked Questions
File exactly कहां रखनी है?
आपके domain के root पर, exactly https://yoursite.com/robots.txt पर accessible। अधिकांश hosts पर इसका मतलब है robots.txt को आपकी public / htdocs / www root directory में रखना। WordPress और कई CMSs एक dynamically generate करते हैं; static file add करने से पहले check करें कि आपका करता है या नहीं (दोनों exist होने पर static एक जीतता है)।
क्या मुझे robots.txt की ज़रूरत है?
Technically नहीं। बिना एक के, crawlers «allow everything» default करते हैं, जो अधिकांश public sites के लिए fine है। लेकिन आप almost always एक चाहते हैं अपना sitemap point करने के लिए, obvious crawl traps block करने के लिए (search-result pages, paginated archives, parametric URLs), और तेज़ी से AI training से opt out करने के लिए। एक blank या default-allow robots.txt Sitemap line रखने के लिए अभी भी useful है।
robots.txt कितनी बड़ी हो सकती है?
RFC 9309 parsers को कम से कम 500 KiB (~500,000 bytes) accept करने की require करता है। Google 500 KiB limit enforce करता है और उससे परे सब कुछ ignore करता है। Robots.txt files का vast majority well under 1 KiB है। यदि आपकी file limit के करीब पहुंच रही है, तो आप probably बहुत अधिक specific URLs list कर रहे हैं और बजाय इसके wildcard patterns use करने चाहिए।
यदि मेरी robots.txt 500 error return करे तो क्या होगा?
RFC 9309 के अनुसार, जब कोई crawler server error (5xx) के कारण robots.txt fetch नहीं कर पाता, तो उसे complete disallow assume करना होगा, मतलब Google और अन्य compliant crawlers आपकी site crawl करना entirely stop करेंगे जब तक file फिर से reachable न हो। यदि आपका robots.txt endpoint down हो जाता है, तो आपकी search visibility उसके साथ down हो जाती है। Ensure करें कि यह available रहे।
Google के लिए Crawl-delay के बारे में क्या?
Google explicitly Crawl-delay ignore करता है। Directive Bing, Yandex, और अधिकांश other crawlers के लिए काम करती है। Search Console ने जो manual Crawl rate setting expose की थी वह early 2024 में most sites के लिए deprecate की गई; Google अब automatically crawl rate adjust करता है इस आधार पर कि आपका server कैसे respond करता है। robots.txt में Crawl-delay set करने से कुछ break नहीं होगा; बस Googlebot का behaviour नहीं बदलेगा।
क्या मुझे AI crawlers block करने चाहिए?
Trade-off। GPTBot, Google-Extended, ClaudeBot, आदि block करने से उन models के लिए training data से आपका content opt out होता है, जो सही call है यदि आप अपने content के reuse को limit करना चाहते हैं। Cost: जैसे-जैसे AI-summarised search results ज़्यादा common होते जाते हैं, blocked content के cited या surfaced होने की भी कम possibility हो सकती है। कई publishers AI training crawlers block करते हैं लेकिन citable रहने के लिए AI search crawlers (OAI-SearchBot, आदि) allow करते हैं। «Block AI Crawlers» preset maximalist approach लेता है; अपनी priorities से match करने के लिए इसे tweak करें।