نمایش نتایج: از شماره 11 تا 16 , از مجموع 16

موضوع: جلوگیری از ورود بوت های ناخواسته به سایت ما

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو انجمن srashedian آواتار ها
    تاریخ عضویت
    May 2010
    نوشته ها
    158
    تشکر تشکر کرده 
    105
    تشکر تشکر شده 
    335
    تشکر شده در
    197 پست

    پیش فرض جلوگیری از ورود بوت های ناخواسته به سایت ما

    سلام...
    این مطالب نوشته خودم هست... بنابراین ممکنه مشکلات و ضعف هایی داشته باشه... اگر موردی دیدید خوشحال میشم بهم بگید تا برطرفش کنم...


    بوت یا اسپایدر چیست؟
    در دنیای اینترنت ما با فعالیت نرم افزارهای هوشمند، عموما با دسترسی بالا، و البته نامرئی برمیخوریم که به Spider (عنکبوت) یا Bot (بوت، مخفف روبات) معروف هستن.
    این نرم افزارها برنامه ریزی میشن تا کارهای متفاوتی رو به صورت هوشمند انجام بدن...
    به عنوان مثال تا به حال شده که توی بعضی انجمن ها به یک سری کاربرهایی برمیخورید که فقط و فقط اخبار رو از سایت های مختلف بر میدارن و توی بخش اخبار انجمن پست میکنن؟؟؟ در حقیقت این به ظاهر کاربر ها وجود خارجی ندارند و اسپایدر هستن...
    و یا حتما تا به حال متوجه شدید که سایت هایی مثل یاهو و گوگل کاربران خودشون رو بعد از مدت مشخصی به یکباره بیرون میندازن (Log out میکنن) ... این هم کار یک اسپایدر هست که به StackWatchDog معروفه (سگ نگهبان پشته)... این اسپایدر ها دائما مقدار حافظه موجود روی سرور رو بررسی میکنن و به محض پر شدن حافظه، برای جلوگیری از توقف کار سرور، تمام کاربران رو از سیستم خارج کرده و حافظه رو پاک سازی میکنن...
    این که اسپایدرها این وسط چه کاری میکنن رو الان توضیح میدم.

    نقش اسپایدر در موتورهای جستجو چیست؟
    موتورهای جستجو مثل گوگل باید دائما تمام صفحات وب سایت های مختلف در سراسر اینترنت رو بررسی کنن و تمام اطلاعات داخل این صفحات رو برای خودشون ذخیره کنن (اصلا آبروی یه موتور جستجو در حد اوففففففففف وابسته به همین تعداد صفحات ذخیره شده اش هست )
    خوب یقینا قبول دارید که انجام چنین کاری توسط انسان بسیار سخت هست و یه جورایی احمقانه به نظر میرسه... پس چیکار کنیم؟؟؟ بله... تنها راهی که میمونه همین سربازان خستگی ناپذیر کوچولو هستن... اسپایدرها... نرم افزار هایی که همیشه و همه جا مراقب اوضا هستن.
    هر موتور جستجو هم به تعدادی بوت یا اسپایدر مجهز هست که بی وقفه در حال بررسی سایت های مختلف هستن (البته با این وجود، عملیات به روز رسانی موتور جستجوگر بزرگی مثل گوگل به دلیل تعداد فوق العاده زیاد صفحاتی که باید ذخیره کنه چند هفته طول میکشه)
    این اسپایدر ها به رهبری یه سری نرم افزار دیگه که به خزنده (Crawler) معروف هستن (که خودشون نوعی بت هستن)، به صفحات وب سر میزنن و اطلاعات داخل صفحات رو با خودشون میبرن و به کراولر تحویل میدن... (البته اسپایدرها، کد HTML صفحات رو برای کراولر میبرن، نه این قیافه ی ظاهریشو)
    کراولر بعد از بررسی صفحات، اونارو به ایندکسر تحویل میده (که اون هم خودش یه نوع بوت هست) و ایندکسر این اطلاعات رو بسته بندی میکنه، برچسب میزنه، و ذخیره میکنه... در نهایت رتبه بند (Ranker) که این هم خوش یه نوع بوت هست با یک سری پارامترها و الگوریتمهایی (که محرمانه هست و کسی ازشون خبر نداره) صفحات رو رتبه بندی میکنه و به عنوان نتایج جستجو به امت نشون میده (بحث SEO یه مبحث تجربی و حدسی هست و کسی از الگوریتم رتبه بندی موتور های جستجو اطلاع نداره)

    اسم چند تا از این اسپایدرها:

    اسپایدر گوگل: googlebot
    اسپایدر یاهو: Slurp
    اسپایدر بینگ: Msnbot
    اسپایدر آلتاویستا: Scooter
    امیدوارم تونسته باشم بهتون کمک کنم... تا عنکبوت هارو بهتر بشناسید (کلاس زیست شناسی )


    حالا بریم سراغ عنکبوت کش... چیزی که جلوی اینارو میگیره...
    برای اینکه ایم عنکبوت هارو کنترل کنیم که کجا برن، کجا نرن، فقط کافیه از یه فایل متنی ساده به نام "robots.txt" استفاده کنیم... فقط کافیه یه فایل متنی معمولی با این اسم بسازیم، توی فولدر اصلی هاستمون بذاریم (public_html) و با استفاده از متنی که داخل این فایل مینویسیم این روبوت هارو دقیق کنترل کنیم...
    متن داخل این فایل به این شکل هست... برای مشخص کردن این که میخوایم کدوم بوت رو کنترل کنیم از عبارت user-agent استفاده میکنیم... و برای اینکه بهش بگیم کجاها نباید بره، از عبارت disallow استفاده میکنیم...
    مثلا اگه بخوایم به بوت گوگل بگیم توی فولدر دانلودمون نگرده، فقط کافیه داخل اون فایل متنی اینو بنویسیم:


    کد:
    user-agent: googlebot disallow: /download


    به همین شکل میتونیم برای هر بوتی که دلمون خواست هر مسیری که دوست داشتیم رو ببندیم... فقط دقت کنید که جلوی هر user-agent فقط میتونید اسم یک بوت رو بنویسید... جلوی هر disallow هم فقط یه مسیر مشخص... اگه خواستیم محلی رو برای تمام بوت ها محدود کنیم میتونیم از * استفاده کنیم...
    مثال:
    من میخوام بوت گوکل وارد فولدری به نام سجاد نشه، بوت های یاهو و آلتاویستا وارد فولدر دانلود و فولدر آپلود من نشن، بوت جستجوگر بینگ کلا سایت من رو ایندکس نکنه (بیخیال سایت من بشه) بقیه بت ها هم وارد فولدری به نام private نشن... محتوای فایل robots.txt من این میشه:
    (متن داخل بلوک کد زیر اسکرول میشه، دقت کنید باید برید پایین تا کامل ببینیدش)

    کد:
     
    
    user-agent: googlebot
    disallow: sajad
    user-agent: slurp
    user-agent: Scooter
    disallow: /download
    disallow: /upload
    user-agent: msnbot
    disallow: / l
    user-agent: * l
    disallow: private

    اگه سوالی بود حتما بپرسید، تا جاییکه بلد باشم حتما جواب میدم...


    منبع: انجمن بیتکده
    ویرایش توسط srashedian : June 17th, 2010 در ساعت 12:21

  2. تعداد تشکر ها ازsrashedian به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 1
    آخرين نوشته: August 27th, 2017, 15:04
  2. درخواست سرور مجازی _ ریموت دستکتاپ برای سایت فیلم
    توسط irboy3 در انجمن درخواست سرور مجازی
    پاسخ ها: 14
    آخرين نوشته: December 11th, 2016, 20:38
  3. پایین آوردن کیفیت ریموت دستکتاپ کانکشن
    توسط i3l4ck در انجمن سوالات و مشکلات
    پاسخ ها: 5
    آخرين نوشته: April 19th, 2015, 02:23
  4. به دنبال کار هستم بصورت ریموت پشتیبانی سایت هاستینگ
    توسط saeidm در انجمن به دنبال کار هستم
    پاسخ ها: 17
    آخرين نوشته: July 5th, 2014, 17:46
  5. پاسخ ها: 5
    آخرين نوشته: September 16th, 2011, 12:36

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •