آموزه های سئو

۸۱.۸٪ از ترافیک «دستیار هوش مصنوعی» سایت من جعلی بود. آمار گوگل بات از این هم بدتر بود!

بررسی لاگ فایل سرور و تشخیص خزنده‌های جعلی هوش مصنوعی در سئو تکنیکال

یک اسکریپت کوتاه، یک بررسی و تحقیق سرسختانه، و کشف اینکه چه چیزی واقعاً در حال خزش (Crawling) در یک سایت تازه تأسیس است. بیشتر این ترافیک ها دروغین هستند؛ در این مقاله به شما می آموزیم که چگونه این موضوع را روی فایل های لاگ (Log Files) سرور خودتان ثابت کنید.

من اخیراً پلتفرم CitationIQ.com را راه اندازی کردم. در طول دو هفته گذشته، فایل های لاگ سرور من ادعا می کردند که ۳۳ دستیار هوش مصنوعی (AI Assistant) از سایت بازدید کرده اند؛ یعنی کمی بیشتر از دو بازدید در روز. اما این عدد یک دروغ بزرگ است. عدد واقعی؟ فقط ۶ بازدید.

آمار مربوط به گوگل بات (Googlebot) از این هم بدتر به نظر می رسید. از ۷۹۹ درخواستی که با نام گوگل بات ثبت شده بود، تنها ۱۰۷ مورد واقعی بودند. البته همه ما متخصصان سئو می دانیم که کلاه برداران و اسپمرها عاشق جعل هویت گوگل بات هستند. اما نکته ترسناک تر این بود که برخی از این بازدیدهای جعلی هوش مصنوعی، در حالی که نام ChatGPT را یدک می کشیدند، از سرور من درخواست می کردند تا فایل های پیکربندی و رمزهای عبور (Secrets file) را در اختیارشان قرار دهد!

من این پلتفرم کاملاً جدید را مدیریت می کنم و تا این لحظه صفر دلار برای تبلیغ آن هزینه کرده ام، بنابراین ترافیک آن کاملاً محدود و متواضعانه است. من به دنبال یک بررسی آرام و دقیق بودم تا ببینم چه کسانی (ربات ها و خزنده ها، چرا که گوگل آنالیتیکس ۴ بقیه ترافیک انسانی را مدیریت می کند) از سایت بازدید می کنند. انتظار اعداد کوچکی را داشتم و به آن ها هم رسیدم. اما چیزی که اصلاً انتظارش را نداشتم این بود که بیشتر همین اعداد کوچک هم دروغین و جعلی باشند.

در ادامه به شما می گویم چه اتفاقی افتاد، چگونه آن را بررسی کردم، چگونه موارد مشکوک را تا رسیدن به اثبات نهایی پیگیری کردم، و چرا مفیدترین کاری که می توانید همین هفته برای سئو سایت خود انجام دهید، اجرای همین بررسی روی فایل های لاگ خودتان است. (همان طور که ما در خدمات سئو تکنیکال دانش وب، همیشه تحلیل لاگ فایل ها را به عنوان یک استاندارد طلایی برای کشف مشکلات پنهان سایت به مشتریانمان پیشنهاد می دهیم).

چیزی که هیچ کس آن را بررسی نمی کند

وقتی یک ربات صفحه شما را فراخوانی می کند، یک نام برای خود اعلام می کند (از طریق رشته User-Agent). نام هایی مثل: ChatGPT-User، Claude-User، Googlebot، CCBot یا هر چیز دیگری که ادعا می کنند هستند. سرور شما این نام را در فایل لاگ می نویسد، ابزار آنالیتیکس شما آن را می شمارد و شما بر اساس آن نتیجه گیری می کنید.

اما این نام صرفاً یک “خوداظهاری” است؛ فقط یک رشته متنی در هدر درخواست (Request Header) است و هر کسی می تواند هر چیزی که دوست دارد آنجا بنویسد. ادعای اینکه «من گوگل بات هستم» هیچ هزینه ای ندارد و هیچ چیز را هم ثابت نمی کند. این دقیقاً مثل غریبه ای است که با لباس فرم اداره پست به در خانه شما آمده است؛ جعل کردن این لباس فرم بسیار آسان است.

بررسی واقعی اصلاً پیچیده نیست. اپراتورهای بزرگ، آدرس های IP واقعی که ربات هایشان استفاده می کنند را به صورت فایل های متنی ساده منتشر می کنند که همین الان می توانید آن ها را باز کنید. یک درخواست تنها در صورتی معتبر است که نام ربات با آدرس IP آن مطابقت داشته باشد و آن IP در لیست منتشرشده ی رسمی وجود داشته باشد. نام، فقط یک ادعاست؛ اما IP، اثبات آن ادعاست.

در اینجا لیست منابع رسمی برای تأیید IP ربات های معروف آورده شده است:

من سیستم بررسی ام را طوری ساختم که سه خروجی داشته باشد، نه دو تا:

  1. تأیید شده (Verified): آدرس IP در محدوده منتشرشده قرار دارد.
  2. جعل شده (Spoofed): محدوده های IP با موفقیت بارگذاری شدند، اما IP مورد نظر در آن ها نیست.
  3. غیرقابل تأیید (Unverifiable): نتوانستم وضعیت آن را تعیین کنم؛ زیرا لیست بارگذاری نشد یا رکوردی وجود نداشت. من هرگز چیزی را فقط به دلیل اینکه نتوانستم تأییدش کنم، «جعلی» نمی نامم. همین خویشتن داری بعداً باعث شد تا یکی از بررسی هایم تا زمان رسیدن به حقیقتِ ماجرا، دقیق و درست پیش برود.

این بررسی با استفاده از زبان پایتون (Python) و فقط با کتابخانه استاندارد، حدود ۱۵ خط کد است؛ زیرا تصمیم گیری درباره اینکه آیا یک آدرس درون یک محدوده شبکه قرار دارد یا خیر، یک مسئله حل شده در برنامه نویسی است.

python
import ipaddress, json, urllib.request

# A vendor’s published list of the IPs its bot really uses.
url = "https://openai.com/chatgpt-user.json"
data = json.loads(urllib.request.urlopen(url).read())

# Pull every address range out of the file.
nets = []

def collect(node):
    if isinstance(node, dict):
        for v in node.values():
            collect(v)
    elif isinstance(node, list):
        for v in node:
            collect(v)
    elif isinstance(node, str):
        try:
            nets.append(ipaddress.ip_network(node, strict=False))
        except ValueError:
            pass

collect(data)

# A request claiming to be ChatGPT-User is only real if its
# source IP sits inside one of those ranges.
def is_real(ip):
    addr = ipaddress.ip_address(ip)
    return any(addr in net for net in nets)

این قطعه کد هسته اصلی بررسی است، اما همه ماجرا نیست. این اسکریپت در حالت فعلی فقط لیست یک ارائه دهنده را بارگذاری می کند، بنابراین اگر به تنهایی اجرا شود، به اشتباه تمام درخواست های واقعی کلود (Claude)، پرپلکسیتی و گوگل را به عنوان “جعلی” علامت گذاری می کند. یک نسخه کاربردی از این اسکریپت، این هسته را در چهار مورد دیگر می پیچد: خطوط لاگ واقعی شما را به جای یک آدرس هاردکد شده می خواند، نام هر ربات را به لیست منتشرشده خودش متصل می کند، وضعیت “غیرقابل تأیید” را برای مواردی که لیست نمی تواند آن ها را حل کند اضافه می کند، و برای اپراتوری مانند Common Crawl که به DNS معکوس متکی است، از آن روش جایگزین استفاده می کند.

شکاف تقاضا (The Demand Gap)

بیایید با سیگنال “تقاضا” شروع کنیم؛ درخواست هایی که از یک خزش زمان بندی شده نمی آیند، بلکه توسط یک دستیار هوش مصنوعی به صورت زنده (Live) و در حین مکالمه با یک کاربر واقعی فراخوانی می شوند. این دقیقاً همان چیزی است که این نام های ایجنت نشان می دهند: فراخوانی ای که به صورت بلادرنگ توسط فردی که از دستیار استفاده می کند، راه اندازی شده است (نه خزش های روتین پس زمینه که سایر ربات ها انجام می دهند).

چیزی که فایل لاگ نمی تواند به من بگوید این است که آن شخص به دنبال چه چیزی بوده است؛ آیا نام من را مستقیماً جستجو کرده یا موضوع گسترده تری را پرسیده که صفحه من برای تثبیت پاسخ فراخوانی شده است. بنابراین من هم هیچ کدام را ادعا نمی کنم. اما چیزی که می توانم بگویم این است که ۳۳ درخواست یکی از این نام های فراخوانی زنده را داشتند. از این تعداد، ۶ مورد از آدرس IP رسمی منتشرشده توسط شرکت ها آمدند و ۲۷ مورد دیگر از IPهای نامعتبر بودند. این یعنی نرخ جعل ۸۱.۸ درصدی در میان درخواست هایی که توانستم بررسی کنم!

موارد جعلی با رفتارهایی که داشتند، خودشان را لو دادند. یک دستیار هوش مصنوعی واقعی وارد یک صفحه واقعی از سایت می شود. اما ربات های جعلی، در حالی که هنوز نام دستیار هوش مصنوعی را یدک می کشیدند، به دنبال پیدا کردن فایل های .env.production، secrets.yaml و config.json بودند. هیچ کس از یک دستیار هوش مصنوعی نمی خواهد که متغیرهای محیطی (Environment variables) سایت مرا بخواند! این ها در واقع اسکنرهای سرقت اطلاعات و هکرها بودند که برای عبور از فیلترهای امنیتی، یک نام مورد اعتماد را قرض گرفته بودند و بررسی IP مچ تک تک آن ها را گرفت. (در پروژه های طراحی سایت دانش وب، ما از طریق پیکربندی های امنیتی پیشرفته در سطح سرور، دسترسی به این فایل های حیاتی را به طور کامل مسدود می کنیم تا سایت شما از گزند این اسکنرها در امان باشد).

البته این اعداد را خیلی قطعی در نظر نگیرید. شش مورد تایید شده فقط شش مورد است؛ آن هم برای یک سایت کوچک و جدید در طول ۱۴ روز. نمی توان روی چنین نمونه کوچکی یک تئوری بزرگ ساخت. این را صرفاً به عنوان خط پایه (Baseline) من در نظر بگیرید، نه یک کشف قطعی درباره کل اینترنت. اعداد سایت شما بسیار مهم تر از اعداد من خواهند بود.

داشبورد بررسی آمار و فایل های لاگ سرور وب سایت

نمایش داده های اولیه، نمودارهای آنالیتیکس و نقاط آماری ترافیک وب سایت در مقیاس کوچک برای تعیین خط پایه لاگ ها.

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

از ۷۹۹ درخواستی که نام Googlebot را داشتند، تنها ۱۰۷ مورد از یک آدرس تایید شده گوگل آمدند. ۶۹۲ مورد دیگر، یعنی تقریباً ۸۷ درصد، اصلاً گوگل نبودند!

این یک کشف جدید نیست. گوگل بات برای نزدیک به دو دهه، بیشترین هویت جعل شده در وب بوده است؛ و دقیقاً به همین دلیل است که گوگل محدوده های IP خود را منتشر می کند و به شما می گوید که ربات ها را با IP تایید کنید، نه اینکه به رشته متنی User-Agent اعتماد کنید. کاری که این داده ها انجام می دهند، تایید این الگو و نشان دادن مقیاس آن در یک سایت کاملاً جدید با ترافیک نزدیک به صفر است. معتبرترین نام خزنده، بیشترین جعل هویت را به خود جذب می کند و این اتفاق بلافاصله رخ می دهد. برخی از این ربات های جعلی حتی از رشته های متنی گوگل بات استفاده می کردند که مربوط به محصولات سال ها پیشِ گوگل بود؛ یعنی یک اسکنر بدافزار، یک یوزر-ایجنت قدیمی را از لیستی کپی کرده و دیگر هیچ وقت آن را به روز نکرده بود.

بنابراین، این یادآوریِ قدیمی همچنان پابرجاست: خط “Googlebot” در ابزارهای آنالیز و فایل های لاگ شما، نماینده اعداد واقعی گوگل نیست. این خط صرفاً نمایانگر ربات هایی است که «ادعا می کنند گوگل هستند»، و شکاف بین این دو می تواند بسیار عظیم باشد.

دو بازی کاملاً متفاوت (Retrieval در برابر Training)

در اینجا نیاز به یک شفاف سازی داریم، زیرا اعداد قرار است بزرگ تر شوند. هر چیزی که تاکنون بررسی کردیم مربوط به سیگنال “تقاضا” (Demand) بود: فراخوانی های زنده ای که یک دستیار هوش مصنوعی در طول یک مکالمه واقعی انجام می دهد (ایجنت هایی که نامشان به User- ختم می شود).

اما آنچه در ادامه می آید یک جمعیت کاملاً مجزا است؛ خزنده های زمان بندی شده ای که در پس زمینه برای “ایندکس کردن” و “آموزش دادن” کار می کنند، و این ها ربات های متفاوتی هستند. به عنوان مثال، ChatGPT-User با GPTBot فرق دارد و Claude-User با ClaudeBot یکسان نیست. بنابراین این شمارش ها بسیار بیشتر از آن ۶ بازدید زنده است و با آن ها هم پوشانی ندارد. اگر فیک ها را حذف کنیم، خزش های تأیید شده داستان بسیار جالب تری نسبت به فراخوانی های زنده تقاضا می گویند؛ زیرا خود این خزنده ها دو بازی متفاوت را انجام می دهند که معمولاً مردم آن ها را با هم اشتباه می گیرند:

1- برخی کار بازیابی (Retrieval) را انجام می دهند

آن ها ایندکسی می سازند که همین امروز برای پاسخ دادن به کاربران فراخوانی می شود. وقتی شخصی سوالی از هوش مصنوعی می پرسد و سیستم به منابع فعلی وب رجوع می کند تا پاسخ را استخراج کند (مانند تکنولوژی RAG)، این موتورها پشت صحنه هستند. “بازیابی” به این معناست که آیا شما “این هفته” در نتایج دیده می شوید یا خیر.

2- برخی دیگر کار آموزش (Training) را انجام می دهند

آن ها محتوایی را برداشت می کنند که ممکن است در وزن دهی های مدل هوش مصنوعیِ بعدی گنجانده شود. وقتی یک خزنده آموزشی (Training Crawler) صفحه شما را می خواند، این بازدیدی نیست که بتوانید آن را به عنوان ترافیک ارجاعی در سایت خود اندازه بگیرید. این در واقع سپرده گذاری در یک پایگاه داده عظیم است که برای ساخت مدل هایی استفاده می شود که تا سال ها به سوالات پاسخ خواهند داد، اغلب بدون اینکه دوباره نیازی به فراخوانی سایت شما داشته باشند. نتیجه و بازده این نوع خزش با تأخیر همراه است، روی هم انباشته می شود و در تمام داشبوردهای تحلیلی شما نامرئی است.

در اینجا داده های تایید شده خزش سایت من (طی دو هفته، یک سایت جدید، فقط یک تصویر کلی و نه بیشتر) آورده شده است. فعال ترین خزنده تایید شده روی دامنه من گوگل نبود. بلکه ربات ClaudeBot شرکت Anthropic با ۱۶۶ خزش تایید شده در رتبه اول بود؛ جلوتر از گوگل باتِ تایید شده با ۱۰۷ خزش، و در رتبه های بعدی GPTBot متعلق به OpenAI با ۴۶ خزش و خزنده جستجوی آن با ۴۰ خزش قرار داشتند.

آیا این یک ترند و روند کلی است؟ نه، این فقط آمار ۱۴ روز از سایتی است که هیچ کس نام آن را نشنیده است. اما دیدن این ترکیب ارزشمند است، زیرا اینکه چه شرکتی بودجه خزش (Crawl Budget) خود را روی یک دامنه کاملاً جدید و تبلیغ نشده صرف می کند، سیگنالی است که وقتی حجم داده ها بالا برود، می تواند یک استراتژی سئو به حساب بیاید.

بازیابی (Retrieval)، دیده شدنِ امروز شماست. آموزش (Training)، این است که آیا مدل هوش مصنوعی فردا شما را می شناسد یا خیر؛ بدون اینکه اصلاً نیازی به جستجوی نام شما داشته باشد. اکثر معیارهای اندازه گیری در دیجیتال مارکتینگ روی مورد اول تمرکز دارند. اما مورد دوم بی سروصداتر است، بحث برانگیزتر است و احتمالاً اهمیت بسیار بیشتری دارد؛ اما تقریباً هیچ کس در حال رصد آن نیست.

موردی که مجبور شدم آن را تعقیب کنم: CCBot

این موضوع مرا به سمت چیزی می برد که شاید تأثیرگذارترین خزنده آموزشی در میان تمام ربات ها باشد و بهترین نمونه برای درک این است که چرا ستون “غیرقابل تأیید” در اسکریپت ما وجود دارد: کامِن کرال (Common Crawl).

پروژه Common Crawl که توسط ربات CCBot فراخوانی می شود، مجموعه داده های باز (Open Dataset) و عظیمی را تولید می کند که زیربنای بخش بزرگی از مدل های زبانی آموزش دیده در سال های اخیر است. بنابراین وقتی گزارش من نشان داد که آمار CCBot شامل صفر مورد تایید شده، ۴ مورد جعلی و ۱۶ مورد “غیرقابل تأیید” است، آن ۱۶ مورد ذهن مرا درگیر کرد.

«غیرقابل تأیید» به هر دو سمت نوسان دارد؛ نه به معنای جعلی است و نه به معنای واقعی. به این معناست که: “برو و پیدایش کن”. پس من همین کار را کردم و مسیری که رفتم، مسیری است که شما هم می توانید کپی کنید:

  1. اول، لیست منتشرشده: Common Crawl محدوده های IP خزنده های خود را منتشر می کند و هیچ یک از آن ۲۰ درخواست با برچسب CCBot داخل آن محدوده ها قرار نداشتند.
  2. دوم، DNS معکوس (Reverse DNS): ربات واقعی CCBot به یک هاست نیم از دامنه commoncrawl.org ختم می شود. چهار مورد از درخواست های من به چیزی ختم شدند که ربطی به Common Crawl نداشت و ۱۶ مورد دیگر اصلاً رکورد معکوسی نداشتند؛ دقیقاً به همین دلیل بود که اسکریپت من آن ها را تایید نمی کرد.
  3. سوم، خود دیتابیسِ متون (Corpus): پروژه Common Crawl یک ایندکس عمومی دارد که در آن می توانید جستجو کنید آیا یک دامنه خاص توسط آن ها ثبت شده است یا خیر. من سه خزش ماهانه اخیر را برای دامنه خودم با استفاده از کاراکترهای وایلدکارد (Wildcards) چک کردم تا مطمئن شوم فقط صفحه اصلی را نمی گردم. نتیجه؟ هیچ چیز یافت نشد.
  4. چهارم، مالکیت (Ownership): من IPهای خام را از لاگ هایم استخراج کردم و روی هر کدام یک جستجوی WHOIS انجام دادم. همه آن ها به شرکت های هاستینگ ارزان قیمت در چندین کشور (اکثراً در اروپا) ختم می شدند؛ یعنی همان زیرساخت های اجاره ای ارزان قیمتی که اسکنرهای بدافزار روی آن ها اجرا می شوند.

چهار زاویه بررسی مستقل، یک پاسخ یکسان: هر ۲۰ مورد کاملاً کلاه بردار و فیک بودند! نکته آموزشی اینجاست که یک متخصص سئو به خوبی آن را درک می کند: بررسی خودکار (اسکریپت) به درستی از برچسب زدن آن ۱۶ مورد به عنوان «جعلی» خودداری کرد، زیرا فقدان رکورد به معنای مدرک تقلب نیست و برای بستن این پرونده نیاز به حفاریِ دستی بود. بنابراین وقتی گزارش شما ردیف های غیرقابل تایید را نشان می دهد، این یک بن بست نیست؛ بلکه یک دعوت نامه است: IPها را استخراج کنید، مالک را بررسی کنید، دیتابیس را جستجو کنید تا تصویر نهایی برایتان روشن شود.

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

تصویر مفهومی از فعالیت خزنده های موتور جستجو، بسته های داده و سیگنال های ربات های خزنده در ماتریس شبکه دیجیتال.

موردی که اصلاً نتوانستم اندازه گیری کنم: جمینای (Gemini)

یک بازیگر اصلی در این میان وجود دارد که من اصلاً نتوانستم آن را اندازه گیری کنم، و دلیل آن هم بسیار مهم است: جمینای (Gemini) از شرکت گوگل.

شرکت های OpenAI، Anthropic و Perplexity هر کدام سیگنال های متمایز و قابل تاییدی را در اختیار ما قرار می دهند. شما می توانید خزنده آموزشی آن ها را از خزنده بازیابی شان و از فراخوانی های زنده کاربران جدا کنید و هر کدام را با IP تایید کنید. اما گوگل این گونه کار نمی کند.

گوگل فقط یک خزشِ Googlebot دارد. اینکه آیا محتوایی که جمع آوری می کند برای آموزش مدل Gemini استفاده می شود یا خیر، توسط یک توکن در فایل robots.txt به نام Google-Extended کنترل می شود که اصلاً یک ربات خزنده نیست! این توکن هرگز چیزی را فراخوانی (Fetch) نمی کند. این فقط یک پرچمِ مجوز (Permission Flag) روی خزشی است که از قبل توسط گوگل بات اتفاق افتاده است.

طبق طراحی گوگل، هیچ فراخواننده ای به نام Gemini در لاگ های شما وجود نخواهد داشت و در نتیجه هیچ راهی برای اندازه گیری مستقیمِ تقاضای Gemini بر اساس نام وجود ندارد (برخلاف کاری که می توانید برای ChatGPT یا Claude انجام دهید).

اسکریپت من به دنبال آن گشت، اما هیچ درخواستی پیدا نکرد که ادعا کند جمینای است؛ این یعنی حتی کلاه برداران و جعل کنندگان هم هنوز زحمت استفاده از این نام را به خود نداده اند. البته اسکریپت من مچِ ۴ درخواست را گرفت که خود را به عنوان Google-Extended در حال فراخوانی صفحات معرفی کرده بودند؛ و از آنجا که Google-Extended اصلاً توانایی فراخوانی ندارد، آن ۴ مورد از همان ابتدا جعلی بودند و حتی قبل از بررسی IP، توسط نام احمقانه شان رد شدند.

اگر به اندازه من در حوزه سئو سابقه داشته باشید، این سناریو برایتان بسیار آشناست. در سال ۲۰۱۱، گوگل ارجاع دهنده های جستجو (Search Referrers) را رمزنگاری کرد و داده های کلمات کلیدی که سئوکاران به شدت به آن وابسته بودند، در ابزارها به کلمه مبهم (not provided) تبدیل شد. در آن زمان نیز جزئیات از بین رفت و به جای اندازه گیری دقیق، فقط یک “پرچم” به ما داده شد.

حالا عصر هوش مصنوعی در حال تقلید از همان رفتار است. در جایی که رقبای گوگل، امکان ردیابی ترافیک آموزشی، بازیابی و تقاضای زنده را به عنوان رویدادهای مجزا و قابل تایید در اختیار وب مسترها می گذارند، گوگل همه آن ها را در یک خزشِ واحد و یک توکن نامرئی دسته بندی می کند. شما فقط می توانید وجود Googlebot را تایید کنید و هیچ چیز فراتر از آن مشخص نیست؛ باز هم با همان خطای معروف not provided روبرو هستیم.

۲ ستاره دارِ صادقانه

وضعیت ربات Perplexity مبهم تر از یک موفقیت یا شکست تمیز و واضح است. خزنده این شرکت در ۲۴ مورد از ۳۶ درخواست، در بررسی IP من رد شد. اما در مستندات ثبت شده است که Perplexity گاهی اوقات از آدرس هایی خارج از محدوده های منتشرشده خود برای فراخوانی سایت ها استفاده می کند؛ بنابراین برخی از این شکست ها ممکن است جعل کننده باشند و برخی دیگر ممکن است خود Perplexity باشند که خارج از لیست رسمی در حال فعالیت است. برای این یک مورد خاص، واژه “جعلی” در هر دو جهت مبهم است.

و باز هم تکرار می کنم: تمام این اطلاعات، نتیجه فقط دو هفته داده روی یک سایت کوچک است.

نتیجه گیری

اعداد و ارقام من را ملاک قرار ندهید؛ بلکه روش کار را یاد بگیرید.

داده های من به این دلیل ناچیز است که سایت من کاملاً جدید است، اما سایت شما احتمالاً این طور نیست. اگر هرگونه ترافیک واقعی دارید، همین الان روی معدن طلایی از داده های بسیار بهتر از من نشسته اید که در فایل های دسترسی (Access Logs) سرورتان قرار دارد و می توانید همین امروز عصر این بررسی را روی آن ها انجام دهید.

یک بازه زمانی را انتخاب کنید، نام ها را تطبیق دهید، IPها را با لیست های منتشرشده شرکت ها مقایسه کنید و کسر واقعی ترافیک خود را بیابید. سپس به خط Googlebot خود نگاه کنید و خودتان را برای یک شوک آماده کنید!

وقتی به ردیف های “غیرقابل تأیید” رسیدید، همان کاری را بکنید که من با CCBot کردم. IPها را استخراج کنید، مالک را بررسی کنید، دیتابیس را کوئری بگیرید و آن قدر جستجو کنید تا تصویر نهایی برایتان واضح شود. هیچ چیز برای یک کارشناس سئو لذت بخش تر از پیدا کردن سرنخ ها و اثبات مشکلات پنهان سایت نیست و اینجا دقیقاً همان نقطه طلایی است.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *