ওয়েবসাইট পরিচালনায় সার্চ ইঞ্জিন ক্রলার বা বটগুলোর আচরণ নিয়ন্ত্রণ করা একটি অত্যন্ত গুরুত্বপূর্ণ কাজ। "Robots.txt জেনারেটর ও ভ্যালিডেটর" টুলটি ব্যবহার করে আপনি সহজেই বিভিন্ন ক্রলারের (যেমন Googlebot) জন্য নিয়ম তৈরি করতে পারেন এবং নির্দিষ্ট ওয়েব পাথগুলো ক্রলারের জন্য অনুমোদিত নাকি অবরুদ্ধ তা পরীক্ষা করতে পারেন।
এই নির্দেশিকায় robots.txt ফাইলের গঠন, নিয়মাবলীর অগ্রাধিকার এবং এই টুলের কার্যপদ্ধতি বিস্তারিত আলোচনা করা হলো।
Robots.txt ফাইলের উদ্দেশ্য ও কার্যকারিতা
একটি robots.txt ফাইল হলো একটি সাধারণ টেক্সট ফাইল যা ওয়েবসাইটের রুট ডিরেক্টরিতে অবস্থান করে। এর প্রধান কাজ হলো সার্চ ইঞ্জিন ক্রলারদের জানানো যে ওয়েবসাইটের কোন কোন অংশে তারা প্রবেশ করতে পারবে এবং কোন কোন অংশে পারবে না।
ওয়েবসাইট রক্ষণাবেক্ষণকারী, ডেভেলপার এবং যারা নির্দিষ্ট কিছু পেজে ক্রলারের প্রবেশাধিকার বন্ধ করতে চান, তাদের জন্য এই ফাইলটি সঠিকভাবে তৈরি করা অত্যন্ত জরুরি। এটি গুরুত্বপূর্ণ পেজগুলোকে ভুলবশত ক্রলারের কাছ থেকে অবরুদ্ধ হওয়া থেকে রক্ষা করতে সাহায্য করে।
User-agent নির্দেশাবলী এবং ক্রলার নিয়ন্ত্রণ
Robots.txt ফাইলের প্রতিটি নিয়মের ভিত্তি হলো User-agent নির্দেশাবলী। এটি নির্দিষ্ট করে দেয় যে নিয়মটি কোন ক্রলারের জন্য প্রযোজ্য হবে।
- নির্দিষ্ট ক্রলার: আপনি নির্দিষ্ট কোনো ক্রলারের নাম (যেমন Googlebot) উল্লেখ করে নিয়ম তৈরি করতে পারেন। ইউজার-এজেন্ট নামের মধ্যে কোনো স্পেস বা খালি জায়গা থাকা যাবে না।
- সকল ক্রলার: সব ধরনের ক্রলারের জন্য একই নিয়ম প্রযোজ্য করতে চাইলে ইউজার-এজেন্ট হিসেবে
*ব্যবহার করা হয়।
টুলটি ব্যবহারের সময় ডিফল্টভাবে User-agent: * এবং Disallow: /admin নিয়ম দিয়ে শুরু হয়।
Allow এবং Disallow নিয়মের মিথস্ক্রিয়া
ক্রলারের অ্যাক্সেস নিয়ন্ত্রণের জন্য প্রধানত দুটি নির্দেশ ব্যবহার করা হয়:
১. Disallow (অনুমতি দেবেন না): এটি ক্রলারকে নির্দিষ্ট পাথে প্রবেশ করতে বাধা দেয়। ২. Allow (অনুমতি দিন): এটি Disallow নিয়মের অধীনে থাকা কোনো ডিরেক্টরির ভেতরের নির্দিষ্ট সাব-ডিরেক্টরি বা পেজে ক্রলারকে প্রবেশের অনুমতি দেওয়ার জন্য ব্যবহৃত হয়।
পাথের নিয়মাবলী ও সীমাবদ্ধতা
- প্রতিটি নিয়মের পাথ অবশ্যই
/দিয়ে শুরু হতে হবে এবং এতে কোনো স্পেস থাকা যাবে না। - পাথের শেষে নির্দিষ্ট ম্যাচিং বোঝাতে
$চিহ্ন ব্যবহার করা যেতে পারে, তবে এটি শুধুমাত্র নিয়মের পাথের শেষেই ব্যবহার করা যাবে।
সাইটম্যাপ (Sitemap) যুক্ত করার গুরুত্ব
Robots.txt ফাইলে সাইটম্যাপের লিঙ্ক যুক্ত করা সার্চ ইঞ্জিনগুলোর জন্য অত্যন্ত সহায়ক। এটি ক্রলারকে ওয়েবসাইটের সমস্ত গুরুত্বপূর্ণ পেজের তালিকা সহজে খুঁজে পেতে সাহায্য করে।
সাইটম্যাপ যুক্ত করার সময় অবশ্যই সম্পূর্ণ http:// বা https:// প্রোটোকলসহ সঠিক URL ব্যবহার করতে হবে। অসম্পূর্ণ বা ভুল ফরম্যাটের সাইটম্যাপ URL ক্রলার রিড করতে পারে না।
Google-এর ম্যাচিং অর্ডার এবং নিয়মের অগ্রাধিকার
যখন কোনো ক্রলার একটি নির্দিষ্ট পাথ ভিজিট করার চেষ্টা করে, তখন robots.txt ফাইলে থাকা নিয়মগুলোর মধ্যে দ্বন্দ্ব তৈরি হতে পারে। এই দ্বন্দ্ব নিরসনে Google একটি নির্দিষ্ট ম্যাচিং অর্ডার বা অগ্রাধিকার নীতি অনুসরণ করে:
- দীর্ঘতম পাথ অগ্রাধিকার পায়: ক্রলারের কাছে সবচেয়ে দীর্ঘ এবং সুনির্দিষ্ট ম্যাচিং পাথটি জয়ী হয়।
- সমান দৈর্ঘ্যের ক্ষেত্রে Allow-এর অগ্রাধিকার: যদি একটি নির্দিষ্ট পাথের জন্য Allow এবং Disallow উভয় নিয়মই সমানভাবে সুনির্দিষ্ট বা সমান দৈর্ঘ্যের হয়, তবে Google 'Allow' নিয়মটিকে অগ্রাধিকার দেয় এবং পাথে প্রবেশের অনুমতি দেয়।
সাধারণ ভুলসমূহ এবং ভ্যালিডেশন অ্যালার্ট
Robots.txt ফাইল লেখার সময় কিছু সাধারণ ভুল হতে পারে যা এই টুলটি স্বয়ংক্রিয়ভাবে সনাক্ত করে এবং নির্দিষ্ট সতর্কবার্তা প্রদর্শন করে:
| ভুলের ধরন | টুলের প্রদর্শিত সতর্কবার্তা / ত্রুটি |
|---|---|
| ইউজার-এজেন্ট নামে স্পেস থাকলে | "স্পেস ছাড়া একটি user-agent নাম লিখুন, অথবা সব ক্রলারের জন্য * ব্যবহার করুন।" |
পাথ / দিয়ে শুরু না হলে বা স্পেস থাকলে |
"নিয়মের পাথ অবশ্যই / দিয়ে শুরু হতে হবে এবং এতে কোনো স্পেস থাকতে পারবে না।" |
পাথের মাঝখানে বা শুরুতে $ ব্যবহার করলে |
"শুধুমাত্র নিয়মের পাথের শেষে $ ব্যবহার করুন।" |
| একই ইউজার-এজেন্টের জন্য একই নিয়ম বারবার লিখলে | "একই user-agent-এর জন্য এই নিয়মটি পুনরাবৃত্তি করা হয়েছে।" |
| একই পাথে Allow এবং Disallow উভয়ই থাকলে | "Allow এবং Disallow একই পাথ ব্যবহার করছে। উভয়ই সমানভাবে সুনির্দিষ্ট হলে Google 'Allow' প্রয়োগ করে।" |
| একই ইউজার-এজেন্ট একাধিক গ্রুপে থাকলে | "একই user-agent নির্দেশকারী গ্রুপগুলোকে Google একত্রিত করে।" |
| সাইটম্যাপের URL অসম্পূর্ণ হলে | "সাইটম্যাপ URL-এর জন্য একটি সম্পূর্ণ http:// বা https:// ঠিকানা প্রয়োজন।" |
| ফাইলের আকার অতিরিক্ত বড় হলে (১০০,০০০ অক্ষরের বেশি) | "এই robots.txt ফাইলটি এখানে পর্যালোচনা করার জন্য অত্যন্ত বড়।" |
সার্চ ইঞ্জিন ইনডেক্সিংয়ের ক্ষেত্রে সীমাবদ্ধতা
Robots.txt ফাইলের কিছু গুরুত্বপূর্ণ সীমাবদ্ধতা রয়েছে যা মনে রাখা প্রয়োজন:
- ইনডেক্সিং প্রতিরোধ করে না: robots.txt ফাইলের
Disallowনির্দেশিকা ক্রলারকে পেজ ক্রল করা থেকে বিরত রাখে, কিন্তু এটি সার্চ রেজাল্ট থেকে পেজটি সরিয়ে ফেলার নিশ্চয়তা দেয় না। যদি অন্য কোনো ওয়েবসাইট বা পেজ থেকে ওই অবরুদ্ধ পেজে লিঙ্ক দেওয়া থাকে, তবে সেটি সার্চ রেজাল্টে প্রদর্শিত হতে পারে। - বিকল্প ব্যবস্থা: সার্চ রেজাল্ট থেকে কোনো পেজ সম্পূর্ণ দূরে রাখতে চাইলে
noindexমেটা ট্যাগ ব্যবহার করতে হবে, সার্ভার স্তরে অ্যাক্সেস কন্ট্রোল (পাসওয়ার্ড সুরক্ষা) প্রয়োগ করতে হবে অথবা পেজটি ওয়েবসাইট থেকে সম্পূর্ণ সরিয়ে ফেলতে হবে। এই টুলটিnoindex, অ্যাক্সেস কন্ট্রোল বা পেজ অপসারণের বিষয়টি পরীক্ষা করে না।
গোপনীয়তা এবং ডেটা প্রসেসিং
এই টুলটি ব্যবহারের সময় আপনার গোপনীয়তা সম্পূর্ণরূপে বজায় থাকে। আপনার তৈরি করা ক্রল করার নিয়মগুলো এবং পাথ পরীক্ষার সমস্ত প্রক্রিয়া সরাসরি আপনার ব্রাউজারেই সম্পন্ন হয়। BroBroGo-তে কোনো ডেটা বা নিয়ম আপলোড করা হয় না।
সাধারণ জিজ্ঞাসা (FAQ)
প্রশ্ন: এই জেনারেটরটি robots.txt-এ কী কী যোগ করতে পারে?
উত্তর: একটি user-agent গ্রুপ, Allow এবং Disallow পাথ এবং এক বা একাধিক সাইটম্যাপ URL যোগ করুন। প্রিভিউটি একটি robots.txt ফাইলে কপি করার জন্য প্রস্তুত।
প্রশ্ন: পাথ চেকার কীভাবে একটি নিয়ম বেছে নেয়?
উত্তর: এটি Google-এর ম্যাচিং অর্ডার অনুসরণ করে: সবচেয়ে দীর্ঘ ম্যাচিং পাথটি জয়ী হয়। যদি ম্যাচিং Allow এবং Disallow নিয়মগুলো সমানভাবে সুনির্দিষ্ট হয়, তবে Allow জয়ী হয়।
প্রশ্ন: Disallow কি Google সার্চ থেকে কোনো পেজ সরিয়ে দেয়?
উত্তর: না। একটি অবরুদ্ধ পেজও সার্চ রেজাল্টে দেখাতে পারে যদি অন্য পেজগুলো থেকে সেটিতে লিঙ্ক দেওয়া থাকে। সার্চ রেজাল্ট থেকে পেজটিকে সম্পূর্ণ দূরে রাখতে noindex, অ্যাক্সেস কন্ট্রোল ব্যবহার করুন অথবা পেজটি সরিয়ে ফেলুন।
প্রশ্ন: এই টুলের মাধ্যমে কি robots.txt ফাইল সরাসরি ডাউনলোড করা যায়?
উত্তর: হ্যাঁ, নিয়মগুলো তৈরি এবং যাচাই করার পর আপনি সরাসরি ফাইলটি ডাউনলোড করতে পারবেন।