الرئيسية / المنوعات / أفضل طريقة لعمل ملف robots.txt

أفضل طريقة لعمل ملف robots.txt

لنبدأ الشرح
إذا كيف أقوم بمنع ما أريد واسمح لما أريد ؟
هنا سنضع الحل بشكل  بسيط جدا
بحيث يستطيع أي شخص حتى لو كان مبتدى أن يمنع أو يسمح
للروابط بالفهرسة  بكل بساطة

أولا ملف الروبوت افتراضيا يكون بالشكل التالي

User-agent: Mediapartners-Google
Disallow:
User-agent: *
Disallow: /search
Allow: /
Sitemap: http://xxxxxxx/sitemap.xml
قبل أن نبدأ بشرح كيفية نمنع أو نسمح سنعطي معنى للكلمات الموجودة في ملف الروبوت حتى
يكون الشرح مفهوم

أولا:
User-agent: Mediapartners-Google
تعني أن هذا يتم من خلال توكيل الاستخدام لبرنامج جوجل بعمل ما يلي  تكون ثابتة لا تحتاج إلى تغير
ثانيا :
 
Disallow:
وهي تعني عدم السماح بالفهرسة  أيضا ثابتة لا تحتاج تغير

ثالثا :

User-agent: *
تعني استخدام الخاصية كا وكيل عنك  وهي أيضا تكون ثابتة في ملف الروبوت  
رابعا :
Allow: /
وهي تعني السماح  بالفهرسة  أيضا ثابتة ولا تحتاج تغير
خامسا :
Disallow: /search
حيث هنا قمنا بمنع روابط البحث search
سادسا :
Sitemap: http://xxxxxxx/sitemap.xml
هي الخريطة التي تحتوي على روابط المواضيع لموقعك  حيث أن xxxxxxxx   هو رابط موقعك

تعرفنا على محتويات ملف الروبوت ولان لنبدأ كيف نعتمد على أنفسنا قي السماح أو منع أي رابط نريد
أحيان تتم فهرسة الأقسام  وأيضا تتم أحيانا فهرسة الموضوع  برابطين
فمثلا لو كان رابط الموضوع الفعلي  كتالي

http://www.xxxx.net/2017/02/blog-post_74.html

لأكن قد يتكرر الرابط بالشكل التالي
http://www.xxxxxx.net/2017/02/blog-post_74.html?m=0

انظر ما هو الفرق
الفرق أن الرابط  الفعلي أو الأصلي للموضوع  ينتهي ب
.html
لأكن الرابط المكرر هو نفس الرابط الأول لأكن مع زيادة بسيطة في نهايته
حيث ينتهي ب
?m=0
هذه مشكلة  لأكن حلها بسيط جدا
فقط  لكي نمنع هذا الرابط المكرر
نقوم بأخذ نهائية الرابط  التي هي
?m=0
ونضعها في ملف الرروبوت  بعد خاصية المنع   Disallow     متبوعة ب * /
حيث تعني ( /  ) التالي
وتعني النجمة  ( * )  كل الروابط التي لها نفس النهاية
بحيث يتكون لدينا الشكل التالي
Disallow: /*?m=0
طيب أين يتم وضع هذا داخل ملف الروبوت ؟
يتم وضعها أسفل التعليمة التالية
User-agent: *
ليكون ملف الروبوت بالشكل التالي
User-agent: Mediapartners-Google
Disallow:
User-agent: *
Disallow: /*?m=0
Disallow: /search
Allow: /
Sitemap: http://xxxxxx/sitemap.xml

ألان لن يتم فهرسة الروابط التي لها نهاية 
?m=0
ملاحظة مهمة جدا
قد تجد روابط تنتهي بنهائية التالية     
?m=1   
لا تقوم بمنعها  لان هذه الروابط هي روابط خاصة بالتصفح عن طريق الجوال فقط قم بمنع 
?m=0
مثل أخر
إذا وجدنا أن هناك بعض الروابط  مكرره لأكن لها نهاية أخرى
فكيف نقوم بمنعها
لنفترض أن هناك روابط تتكرر له هذه النهاية 
s?m
نقوم بوضع هذه الكلمة بعد تعليمة المنع كما في المثال الأولى
بحيث تكون بالشكل التالي
يتم وضعها تحت التعليمة الأولى
ليكون شكل  النهائي لملف الروبوت بشكل التالي
User-agent: Mediapartners-Google
Disallow:
User-agent: *
Disallow: /*?m=0
Disallow: /* s?m

Disallow: /search
Allow: /
Sitemap: http://xxxxxxxx/sitemap.xml

وهكذا نتعامل مع باقي الروابط المكررة أن وجدت
طيب هذا بنسبة للروابط التي قد تظهر في محركات البحث بشكل غير سليم
ماذا عن كيفية منع الأقسام من الفهرسة  أو الأرشيف أو التعليقات   ؟
هذا بسيط أيضا
التعليمة هذه 

Disallow: /search

موجودة بالأعلى هي تمنع ظهور أو تكرار روابط الأقسام أو الأرشيف  والتعليقات
وهي  تعني منع كل روابط البحث في الموقع بما فيها الأقسام والأرشيف والتعليقات
لأكن ماذا لو ظهرت الأقسام حتى عند وجود تعليمة البحث  ؟
في هذه الحالة نقوم بإضافة رابط الأقسام بعد تعليمة المنع
كيف يتم ذالك  انقر على أي قسم من الأقسام الموجودة في موقعك
وانظر إلى رابط  القسم ستجد انه بعد رابط الموقع  يبدأ بهذه الكلمة

Label
ثم تأتي بعدها اسم القسم سوى بالغة العربية أو الانجليزية كتالي
http://www.xxxxxx/search/label/برامج
أو حسب الرابط الموجود عندك
ولكي نمنع ظهور  هذه الكلمة  نضعها بعد تعليمة المنع كتالي
Disallow: / label

لاحظ هنا في هذا الحالة لم نستخدم  علامة النجمة ( * ) لماذا ؟

لان رابط الأقسام عام لكل الأقسام ويمكن أن  تتصل به مجموعة من الروابط
لذالك سيتم منع  جميع الأقسام لأن كل الأقسام تبدأ ب

label
بينما في المثال الأول كان خاص بحيث يأتي في نهاية كل رابط .
بعد منع رابط الأقسام سيصبح ملف الروبوت بالشكل التالي
User-agent: Mediapartners-Google
Disallow:
User-agent: *
Disallow: /*?m=0
Disallow: /* s?m
Disallow: / label
Disallow: /search
Allow: /
Sitemap: http://xxxxxxx/sitemap.xml

مثال أخر
في حالة كنا نريد منع جميع الأقسام ما عدا قسم واحد فقط
كيف يتم ذالك  ؟
لنفترض أن لدينا أقسام بالأسماء التالية
برامج  –  تصميم  –  دروس  –   برامج اندرويد
ونريد منع كل الأقسام ماعدا قسم ( البرامج )
سيكون ملف الروبوت نفس الملف السابق مع  اختلاف بسيط وهو تضمين السماح لقسم البرامج
ننقر على قسم البرامج في موقعنا
انظر إلى رابط قسم البرامج لنفترض أنه بالشكل التالي
http://xxxxxx./search/label/برامج
نضع القسم واسم القسم بعد تعليمة سماح مع وضع علامة النجمة ( * ) قبل اسم القسم كتالي
Allow: /label/*برامج
نقوم بإضافة هذا التعليمة تحت تعليمة السماح مباشرة كتالي
Allow: /
Allow: /label/*برامج
هل لاحظت إننا استخدمنا النجمة هنا ( * )
لان  البرامج  واحد من الأقسام أي انه قسم خاص وليس كل الأقسام
سيصبح ملف الروبوت بالشكل التالي
User-agent: Mediapartners-Google
Disallow:
User-agent: *
Disallow: /*?m=0
Disallow: /* s?m
Disallow: / label
Disallow: /search
Allow: /
Allow: /label/*برامج
Sitemap: http://xxxxxxx/sitemap.xml
كيف نتأكد  من أن كل ما نقوم به في ملف الروبوت صحيح ولا يوجد خطاء قد
 يقوم باستبعاد الروابط المهمة ؟
بكل بساطة توجه إلى
أدوات مشرفي المواقع ثم  الزحف ثم  اختبار  robots.txt
ثم
ضع الكلمة أو القسم  الذي تريد منعه أو السماح له في مربع الروبوت
ثم في مستطيل الاختبار قم بوضع الرابط الذي تم منعه أو السماح له
وانقر على اختبار وسيتم إخبارك في إذا ما كان مسموح أو ممنوع 

شاهد أيضاً

عرض مذهل من يوفنتوس لضم محمد صلاح

زعم تقرير إيطالي، أن نادي يوفنتوس ينوي التقدم بعرض لضم محمد صلاح من ليفربول خلال …