آموزش سئو تکنیکال
سئو تکنیکال چهار لایه دارد که روی هم می نشینند: خزیده شدن، رندر شدن، ایندکس شدن و سرعت تحویل. ترتیب یاد گرفتنشان از پایین است، چون هر لایه پایینی که خراب باشد، کار کردن روی لایه های بالای آن بی اثر می ماند.
- درس ۷ از ۱۵
- میانی
- رایگان، بدون ثبت نام
چهار لایه سئو تکنیکال، از پی تا سطح
ترتیب خزش و رندر و ایندکس از دیاگرام خود گوگل در مستند جاوااسکریپت آمده. یاد گرفتن از پایین است و متوجه شدن از بالا.
- سرعت تحویلتنها لایه ای که مشتری هم می بیند، و آخرین لایه ای که باید سراغش بروید دیده می شود
- ایندکسآدرس یکتا، تگ canonical، و صفحه ای که چیزی برای گفتن دارد انتخاب گوگل
- رندرمتنی که فقط با جاوااسکریپت ساخته می شود، در صف دومی منتظر می ماند صف جدا
- خزشپیدا شدن از راه لینک، اجازه در robots.txt، و جواب درست سرور پی
این چهار لایه یک مدل آموزشی است و نه دسته بندی رسمی گوگل. فایده اش این است که می گوید کدام مشکل را اول حل کنید.
آخرین بررسی: فکت ها و نام ابزارهای این درس در همین تاریخ با منابعشان بازبینی شده اند.
سئو تکنیکال از چه لایه هایی ساخته شده است؟
چهار لایه، و هر کدام یک شرط برای لایه بعدی. صفحه باید قابل رسیدن باشد تا خزیده شود، خزیده شود تا رندر شود، رندر شود تا متنش ایندکس شود، و ایندکس شود تا اصلا بحث سرعت معنی پیدا کند.
حالا یک نکته که در فهرست های فارسی معمولا برعکس نوشته می شود. ترتیب کار خود گوگل، طبق دیاگرامی که در مستند جاوااسکریپت خودش کشیده، خزش و بعد رندر و بعد ایندکس است. رندر بین آن دو تاست، نه بعد از ایندکس. برای صفحه ای که متنش با جاوااسکریپت ساخته می شود، همین یک جابه جایی تعیین می کند که متن اصلا وارد ایندکس بشود یا نه.
ترتیب یادگیری اما با ترتیب ماشین یکی نیست و لازم هم نیست باشد. شما از پایین یاد می گیرید، چون هر لایه شرط لایه بالاست؛ ولی از بالا متوجه مشکل می شوید، چون سرعت تنها لایه ای است که خودتان و مشتریتان هم می بینیدش. کسی که این دو را قاطی می کند، شش ماه روی سرعت کار می کند در حالی که صفحه اصلا ایندکس نشده.
و یک مرزبندی که وقت زیادی صرفه جویی می کند: اینکه کدام یک از این لایه ها بیشترین اثر را روی رتبه دارد، بحث دیگری است و ما جدا نوشته ایمش. سئو تکنیکال چیست و کدام بخش آن واقعا اثر دارد همان اولویت بندی را از دل پروژه های واقعی بیرون می کشد. این درس اولویت بندی نمی کند؛ مسیر یادگیری می دهد و در هر لایه می گوید چه چیزی را چطور چک کنید.
لایه خزش: از کجا بفهمم گوگل به صفحه می رسد؟
خزش یعنی خزنده گوگل آدرس را پیدا کند، اجازه گرفتنش را داشته باشد، و سرور جوابش را بدهد. سه شرط جدا که هر کدام جدا هم خراب می شوند.
پیدا کردن از لینک می آید. صفحه ای که هیچ لینکی از داخل سایت به آن نمی رود و فقط در نقشه سایت هست، از دید گوگل صفحه حاشیه ای است. اولین چک همیشه همین است: از صفحه اصلی، با چند کلیک به این صفحه می رسید؟
اجازه از فایل robots.txt می آید و اینجا یک قاعده هست که در فارسی تقریبا هیچ جا نوشته نشده. گوگل می گوید برای هر خزنده فقط یک گروه معتبر است: خزنده گروهی را انتخاب می کند که نامش از همه دقیق تر با او می خواند و بقیه گروه ها را نادیده می گیرد. جمله بعدی مستند حتی صریح تر است: گروه اختصاصی و گروه سراسری با هم ترکیب نمی شوند.
یعنی اگر برای یک ربات نام برده یک گروه جدا نوشته اید، آن ربات هیچ کدام از قانون های گروه ستاره را نمی بیند. یک بار robots.txt خودتان را با همین چشم بخوانید؛ احتمالش هست که چند قانون که فکر می کردید همه جا اعمال می شوند، فقط برای بخشی از خزنده ها نوشته شده باشند.
نیمه دوم همین قاعده را هم از قلم نیندازید، چون موقع خواندن یک فایل واقعی لازمش می شوید: چند گروه که همه شان برای یک خزنده نوشته شده اند با هم ادغام می شوند. پس در فایلی که سه بار گروه ستاره دارد، خزنده ای که گروه اختصاصی ندارد قانون های هر سه را با هم می گیرد. نیمه اول قاعده می گوید گروه ستاره را نادیده بگیر، نیمه دوم می گوید کدام گروه ها را با هم بخوان، و کسی که فقط نیمه اول را بلد است فایل واقعی را اشتباه می خواند.
شرط سوم، جواب سرور، ساده ترین است و بیشترین وقت را می گیرد: کد وضعیت ۲۰۰ برای صفحه ای که باید بماند، ۳۰۱ برای صفحه ای که جابه جا شده، و ۴۰۴ برای صفحه ای که واقعا نیست. صفحه ای که محتوایش رفته ولی هنوز ۲۰۰ برمی گرداند، همان چیزی است که به آن خطای نرم می گویند و از هر دو حالت دیگر بدتر است.
چرا مسدود کردن در robots.txt با noindex یکی نیست؟
این بخش را اگر فقط یک چیز از این درس قرار است بماند، همین باشد.
robots.txt می گوید نخوان. تگ noindex می گوید خواندی، ولی در نتایج نشانش نده. اولی کنترل لایه خزش است و دومی کنترل لایه ایندکس، و اگر هر دو را با هم روی یک صفحه بگذارید، دومی هیچ وقت خوانده نمی شود.
گوگل خودش این را با صراحت کامل نوشته: برای اینکه قانون noindex اثر کند، صفحه نباید در robots.txt مسدود باشد و باید برای خزنده در دسترس باشد؛ اگر مسدود باشد خزنده هیچ وقت آن قانون را نمی بیند و صفحه می تواند همچنان در نتایج ظاهر شود، مثلا وقتی صفحه های دیگری به آن لینک داده اند.
پس صفحه ای که می خواهید از نتایج بیرون برود باید باز بماند تا خزنده وارد شود و تگ را ببیند. این دقیقا برعکس چیزی است که شهود آدم می گوید و به همین دلیل هر ماه یک نفر همین اشتباه را می کند.
در سند دیگری، همان جا که درباره آدرس های تکراری حرف می زند، گوگل باز به همین برمی گردد و می نویسد از robots.txt برای یکپارچه سازی آدرس ها استفاده نکنید، چون ممکن است آدرس های مسدود شده را همچنان بدون محتوایشان ایندکس کند. دو صفحه مستقل، یک حرف: مسدود کردن با حذف کردن یکی نیست.
صفحه در نتایج نیست. کدام کنترل را دست زده اید؟
دو کنترل که اسمشان شبیه است و لایه شان یکی نیست. گذاشتن هر دو با هم، دومی را از کار می اندازد.
صفحه در robots.txt مسدود است؟
تگ noindex هیچ وقت خوانده نمی شود
- خزنده وارد صفحه نمی شود، پس تگ داخل صفحه را نمی بیند
- اگر جای دیگری به صفحه لینک داده باشند، باز هم می تواند در نتایج بیاید
- کار درست: اول مسدودیت را بردارید، بعد تگ را بگذارید
حالا سراغ لایه ایندکس بروید
- تگ robots صفحه: noindex هست یا نه
- تگ canonical به کدام آدرس اشاره می کند
- و بعد سرچ کنسول، که تنها جایی است که وضعیت واقعی ایندکس را می گوید
هیچ کدام از این دو فوری نیست. تا وقتی گوگل دوباره سراغ صفحه نیامده، نتیجه قدیمی سر جایش می ماند.
لایه رندر: گوگل همان چیزی را می بیند که شما می بینید؟
مرورگر شما جاوااسکریپت را اجرا می کند و صفحه کامل می شود. گوگل هم اجرا می کند، ولی نه در همان لحظه.
مستند خود گوگل می نویسد که خزنده صفحه ها را هم برای خزش و هم برای رندر در صف می گذارد، و همان جا اضافه می کند که از بیرون معلوم نیست یک صفحه در انتظار خزش است یا در انتظار رندر. یعنی بین لحظه ای که گوگل کد صفحه شما را می گیرد و لحظه ای که متن ساخته شده با اسکریپت را می بیند، یک فاصله وجود دارد که طولش را شما تعیین نمی کنید.
چک این لایه از همه ساده تر است و به هیچ ابزاری نیاز ندارد. کد خام صفحه را بگیرید، نه چیزی که در ابزار توسعه دهنده مرورگر می بینید، و یک جمله از متن اصلی مقاله را داخلش جستجو کنید. اگر جمله آنجا هست، لایه رندر مشکل شما نیست. اگر نیست، متن شما فقط برای مرورگر وجود دارد.
تفاوت این دو را اکثر آموزش ها گم می کنند: کدی که در تب Elements ابزار توسعه دهنده می بینید، همان کد رندر شده است و همیشه پر است. آن چیزی که مهم است، جوابی است که سرور بدون هیچ اسکریپتی فرستاده.
اگر جمله نبود، جواب همیشه بازنویسی کل سایت نیست. برای بیشتر سایت های محتوایی کافی است متن اصلی در همان جواب اول سرور بیاید و بقیه صفحه، مثل نظرها و پیشنهادها، بعدا با اسکریپت ساخته شود.
لایه ایندکس: صفحه هست، در نتایج نیست
ایندکس شدن حق نیست، انتخاب گوگل است. صفحه ای که خزیده و رندر شده هم ممکن است وارد ایندکس نشود، و رایج ترین دلیلش هم مشکل فنی نیست: صفحه چیزی ندارد که در نتایج موجود نباشد.
دلیل فنی رایج تر از آن اما تکراری بودن آدرس است. یک محصول که از سه مسیر دسته بندی باز می شود سه آدرس دارد؛ نسخه با www و بدون آن، با اسلش پایانی و بدون آن، و آدرس هایی که با پارامتر فیلتر ساخته می شوند همه به همین اضافه می شوند. گوگل از بین این آدرس ها یکی را انتخاب می کند و بقیه را کنار می گذارد، و انتخاب او لزوما انتخاب شما نیست.
روش گفتن انتخابتان را خود گوگل به ترتیب قدرت فهرست کرده: ریدایرکت یک سیگنال قوی است، تگ canonical هم یک سیگنال قوی است، و حضور در نقشه سایت یک سیگنال ضعیف. سه تای دیگر هم هست که هیچ کدام کار نمی کنند و همیشه امتحان می شوند: robots.txt، ابزار حذف آدرس، و امیدواری.
کلمه ای که در آن فهرست تکرار می شود سیگنال است، نه دستور. تگ canonical گوگل را مجبور نمی کند و همین است که خیلی ها را عصبانی می کند. اگر دو آدرس محتوای واقعا متفاوتی دارند، canonical گذاشتن روی یکیشان صورت مسئله را پاک نمی کند.
و یک هشدار عملی که به فرق بین دو مسئله برمی گردد: آدرس تکراری یک چیز است و دو مقاله جدا که سر یک کلمه با هم رقابت می کنند چیز دیگری. برای دومی canonical جواب نیست. اگر مطمئن نیستید کدام حالت را دارید، اول ثبت سایت در گوگل و مشکل ایندکس نشدن را ببینید که همین تشخیص را از پایه باز کرده.
لایه سرعت اینجا عمدا کوتاه است
سرعت لایه چهارم است و در این درس دو پاراگراف می گیرد، نه بیشتر. دلیلش این است که سرعت سایت خودش یک مسیر کامل است و جای درست حرف زدن درباره اش مسیر افزایش سرعت سایت است، نه یک بخش از درس سئو تکنیکال.
چیزی که در همین درس باید بدانید یک جمله است: سرعت لایه ای است که وقتی سه لایه زیرش سالم باشند اهمیت پیدا می کند و نه زودتر. صفحه ای که ایندکس نشده، با نمره صد هم صفر بازدید می گیرد. و برعکسش هم درست است؛ صفحه ای که سه لایه اولش سالم است و کند بارگذاری می شود، مشکلی دارد که خواننده اش قبل از گوگل حسش می کند.
سایت چند زبانه یک لایه اضافه می کند
اگر سایتتان یک زبانه است این بخش را رد کنید. اگر نه، اینجا جایی است که بیشتر پروژه های ایرانی وقت از دست می دهند.
وقتی همان صفحه در چهار آدرس وجود دارد، هر چهار آدرس باید به هم معرفی شوند و هر کدام باید خودش را هم در فهرست معرفی ها بیاورد. اگر نسخه انگلیسی خودش را در فهرست خودش نیاورد، آن ارتباط ناقص است. این یکی از آن چیزهایی است که با یک بار نگاه به کد صفحه چک می شود و معمولا هیچ وقت چک نمی شود.
نکته دومی که کمتر جایی نوشته شده به robots.txt برمی گردد. تطبیق مسیر در آن فایل لفظی است، یعنی نوشتن یک قانون برای یک مسیر، همان مسیر را با پیشوند زبان پوشش نمی دهد. سایتی که زبان هایش با پیشوند آدرس جدا می شوند، باید هر قانون را به تعداد زبان هایش بنویسد، وگرنه نسخه های زبانی همان مسیر بی قانون می مانند.
و یک چیز که خیلی ها را غافلگیر می کند: نقشه سایت هم باید همین ارتباط را داشته باشد. اگر افزونه سئوی شما فقط آدرس های زبان اصلی را در نقشه می گذارد، بقیه زبان ها فقط از راه لینک های داخلی پیدا می شوند و همان صفحه های حاشیه ای می شوند که در لایه خزش گفتیم.
از کجا شروع کنم و هر لایه را چطور چک کنم؟
ترتیب زیر همان ترتیبی است که در پروژه اجرا می شود و برای یاد گرفتن هم همان است. هر مرحله یک چک دارد که یا جواب دارد یا ندارد؛ اگر جواب ندارد، مرحله بعد بی معنی است.
اول، مسیر لینک: صفحه از صفحه اصلی با چند کلیک قابل رسیدن است. دوم، اجازه: در robots.txt مسدود نیست، و گروهی که واقعا بر آن صفحه اعمال می شود همان گروهی است که فکر می کردید. سوم، جواب سرور: کد وضعیت همانی است که باید باشد. چهارم، رندر: یک جمله از متن در کد خام صفحه پیدا می شود. پنجم، ایندکس: صفحه در ایندکس هست، و این تنها چیزی است که فقط سرچ کنسول جوابش را دارد، نه هیچ ابزار دیگری و نه هیچ مدل زبانی. ششم، سرعت.
یک هشدار درباره خود چک کردن که از تجربه می آید و در هیچ آموزشی نیست: وقتی کد صفحه را برای پیدا کردن تگ robots جستجو می کنید، به شکل نوشتن گیومه ها دقت کنید. وردپرس و افزونه های سئو این ویژگی را گاهی با گیومه تکی و گاهی با گیومه دوتایی چاپ می کنند، و جستجویی که فقط یک شکل را می شناسد، خیلی راحت گزارش می دهد که تگ وجود ندارد. این را روی همین سایت می شود دید.
و اگر این کار را نمی خواهید خودتان انجام بدهید، همین ترتیب چیزی است که ما در سئو سایت از آن شروع می کنیم؛ نه چون قشنگ است، بلکه چون کار کردن روی لایه اشتباه گران ترین اشتباه این حوزه است.
شش چک، به همان ترتیبی که اجرا می شوند
هر پله یا جواب دارد یا ندارد. اگر ندارد، پله بعد را نروید؛ همان جا مشکل شماست.
-
۱
مسیر لینک
از صفحه اصلی با چند کلیک به این صفحه می رسید؟
-
۲
اجازه
در robots.txt مسدود نیست، و گروهی که اعمال می شود همانی است که فکر می کردید
-
۳
جواب سرور
کد وضعیت همانی است که باید باشد، و صفحه خالی کد ۲۰۰ برنمی گرداند
-
۴
رندر
یک جمله از متن، در کد خام صفحه پیدا می شود
-
۵
ایندکس
صفحه در ایندکس هست. جوابش فقط در سرچ کنسول است.
-
۶
سرعت
حالا و فقط حالا، سراغ سرعت بروید
پله پنجم را هیچ ابزار بیرونی و هیچ مدل زبانی جواب نمی دهد. وضعیت ایندکس فقط از سرچ کنسول درمی آید.
مسیر سریع با هوش مصنوعی
سئو تکنیکال تنها بخش سئو است که مدل زبانی در آن واقعا خوب کار می کند، و دلیلش ساده است: ورودی هایش متن اند و سوال هایش جواب درست دارند. هدرهای پاسخ، تگ های سر صفحه و فایل robots.txt سه تکه متن کوتاه اند و مدل می تواند تناقض بینشان را در چند ثانیه پیدا کند، کاری که آدم با چشم دیرتر انجام می دهد. اینجا مدل ارزان و سریع از رده فلش کافی است، چون کار استخراج و تطبیق است نه قضاوت؛ انتخاب فعلی ما در بخش <a class="text-link" href="/ai/">هوش مصنوعی</a> هست.
- سه ورودی را با دستورهای بالای نسخه بسازید: هدرهای پاسخ، تگ های سر صفحه، و فایل robots.txt.
- دستور سوم مهم است و معمولا جا می افتد: تگ ها را جدا بکشید بیرون. کد کامل یک صفحه صدها کیلوبایت است و اگر سایت سی اس اس را داخل صفحه بگذارد، حتی بخش سر صفحه هم برای مدل بزرگ است.
- نسخه را اجرا کنید. خروجی برای هر لایه یک حکم است، همراه با همان خطی از ورودی که حکم را ساخته.
- پایین ترین لایه ای که حکمش منفی است را اول درست کنید، بعد همین سه ورودی را دوباره بگیرید. لایه های بالاتر را قبل از آن دست نزنید.
نسخه آماده کپی
U="https://example.com/page/"
curl -s -I -A "Mozilla/5.0" "$U"
curl -s -A "Mozilla/5.0" "$U" > page.html
tr -d '\n' < page.html | grep -oiE '<(title[^>]*>[^<]*</title|link[^>]*|meta[^>]*)>'
curl -s "https://example.com/robots.txt"
grep -c "یک جمله از متن اصلی صفحه" page.html
---- نسخه، بعد از گرفتن خروجی چهار دستور بالا ----
نقش: بازبین فنی. فقط از روی ورودی حکم بده و هیچ چیزی را حدس نزن.
آدرس صفحه: {آدرس}
هدرهای پاسخ:
{خروجی دستور اول}
تگ های سر صفحه:
{خروجی دستور سوم}
فایل robots.txt:
{خروجی دستور چهارم}
تعداد دفعاتی که جمله متن در کد خام پیدا شد: {عدد}
برای هر لایه یک سطر بنویس با سه ستون: لایه، حکم، خط ورودی که حکم را ساخته.
لایه ها و سوالشان:
۱. خزش: آیا مسیر این صفحه در robots.txt مسدود است؟ اول گروهی را پیدا کن که برای خزنده گوگل معتبر است. دو نیمه قاعده را با هم به کار ببر: گروه اختصاصی با گروه ستاره ترکیب نمی شود، ولی چند گروه که همه برای یک خزنده نوشته شده اند با هم ادغام می شوند. پس اگر فایل چند بار گروه ستاره دارد و گروه اختصاصی برای خزنده گوگل ندارد، قانون های همه گروه های ستاره را با هم بخوان.
۲. جواب سرور: کد وضعیت چند است و آیا ریدایرکتی در مسیر هست.
۳. رندر: عدد تعداد دفعات صفر است یا نه.
۴. ایندکس: تگ robots در سر صفحه چه می گوید، هدر پاسخ x-robots-tag چه می گوید، و تگ canonical به همین آدرس اشاره می کند یا به آدرس دیگری.
قواعد:
- اگر تگ robots یا هدر x-robots-tag در ورودی نیست، حکم «وجود ندارد» است و نه «مشکل دارد». نبودنشان یعنی حالت پیش فرض.
- تگ های سر صفحه ممکن است با گیومه تکی یا دوتایی نوشته شده باشند. هر دو را یکی حساب کن.
- اگر چیزی از روی ورودی معلوم نمی شود، بنویس «از این ورودی معلوم نیست» و ادامه نده.
- هیچ حکمی درباره اینکه صفحه ایندکس شده یا نه نده. این از ورودی درنمی آید.
- در آخر فقط یک جمله بنویس: پایین ترین لایه ای که حکمش منفی است کدام است.
قبل از اعتماد به خروجی: سه چیز از این نسخه بیرون نمی آید و باید خودتان بدانید. اول اینکه ورودی سوم کد خام است، پس هر چیزی که با جاوااسکریپت به سر صفحه اضافه می شود در آن نیست؛ اگر تگ canonical سایتتان را یک اسکریپت می گذارد، مدل آن را نمی بیند و درست هم می گوید که نیست. دوم اینکه وضعیت واقعی ایندکس در هیچ کدام از این چهار ورودی نیست و هیچ مدلی نمی تواند آن را بگوید؛ آن جواب فقط از سرچ کنسول همان سایت درمی آید. و سوم که از هر دوی اینها مهم تر است: خروجی این نسخه یک تشخیص است و نه یک دستور اجرا. robots.txt و تگ canonical دقیقا همان دو جایی اند که یک مقدار اشتباه، اگر روی کل سایت اعمال شود، می تواند سایت را از نتایج بیرون بیندازد. یکی یکی عوض کنید و بعد از هر تغییر نگاه کنید.
هوش مصنوعی در این کار
موضع این درس این است: در لایه های خزش و رندر و ایندکس، مدل زبانی دستیار خوبی است و در لایه تصمیم نه. تفاوت جایی مشخص می شود که سوال از «این تگ چه می گوید» به «این تگ را عوض کنم» می رسد. اولی از روی متن جواب دارد. دومی به چیزی نیاز دارد که مدل ندارد: اینکه این صفحه الان چه رتبه ای دارد و اگر خرابش کنید چه چیزی از دست می رود.
ابزارهایی که واقعا کمک می کنند
- Google Search Console تنها جایی که وضعیت واقعی ایندکس یک صفحه را می گوید. هیچ ابزار بیرونی و هیچ مدلی این را نمی داند، چون این داده فقط پیش خود گوگل است.
- Claude برای اجرای نسخه بالا و برای خواندن یک فایل robots.txt طولانی، چون قید می پذیرد و می گوید حکمش را از کدام خط درآورده. ایران در فهرست کشورهای پشتیبانی شده انتروپیک نیست و پرداخت رسمی از ایران انجام نمی شود.
- Gemini برای همان کار وقتی ورودی بلند است. صفحه خود گوگل می گوید اپ وب جمینای در بیش از دویست و سی کشور و منطقه کار می کند و ایران در آن فهرست نیست.
- RGB لایه دسترسی و پرداخت برای ایران، جدا از خود ابزارها.
کجا نتیجه معکوس می دهد
ریسک اینجا با ریسک محتوا فرق دارد و خطرناک تر است. در محتوا، جمله بد را می شود فردا عوض کرد؛ در سئو تکنیکال، یک مقدار اشتباه که روی کل سایت اعمال شود می تواند سایت را از نتایج بیرون بیندازد و برگشتنش هفته ها طول بکشد. سه فایل این ویژگی را دارند: robots.txt، تگ canonical و تگ robots. مدل دقیقا در همین سه تا هم بیشترین اشتباه را می کند، چون قاعده هایشان پر از حالت های نزدیک به هم است. نمونه اش همان قاعده گروه هاست: مدلی که نداند یک گروه نام برده گروه ستاره را ارث نمی برد، با اطمینان کامل به شما می گوید آن قانون روی همه خزنده ها اعمال می شود. جواب این ریسک ساده است و در نسخه بالا هم آمده: از مدل بخواهید کنار هر حکم، همان خط ورودی را بگذارد. حکمی که خطش را نشان ندهد، بررسی نشده است.
منبع ها: Google Search Central: introduction to robots.txt Google Search Central: block search indexing with noindex Google Search Central: understand the JavaScript SEO basics
حد این توصیه
سئو تکنیکال سقف را برمی دارد و چیزی زیر سقف نمی گذارد. صفحه ای که هر چهار لایه اش سالم است ولی جواب سوال کسی نیست، با هیچ تنظیم فنی رتبه نمی گیرد. و همین مدل چهار لایه ای هم یک ساده سازی آموزشی است، نه دسته بندی رسمی گوگل؛ خود گوگل در مستند جاوااسکریپت سه مرحله می شمارد و سرعت را جای دیگری توضیح می دهد. اگر جایی این درس با مستند گوگل نخواند، آن مستند درست است.
از تجربه خود ما
قاعده گروه ها را می شود روی همین سایت شمرد. فایل robots.txt ما را باز کنید: خط Disallow برای مسیر ورود چهار بار در گروه ستاره نوشته شده و بعد همان چهار خط عینا در گروه ربات های هوش مصنوعی تکرار شده، در مجموع هشت خط برای یک مسیر. این تکرار اضافه کاری نیست؛ نتیجه همان قاعده ای است که در بخش خزش گفتیم. تا وقتی آن گروه فقط یک خط Allow داشت، ربات هایی که در آن نام برده شده بودند هیچ کدام از محدودیت های گروه ستاره را نداشتند. و چهار بار نوشتن هر مسیر هم دلیل خودش را دارد: تطبیق در آن فایل لفظی است، و نسخه های زبانی همان مسیر آدرس های جداگانه اند. دلیل اینکه این دو مسیر اصلا مسدود شدند در کامنت بالای همان کد نوشته شده: صفحه های ورود و ثبت نام پارامتری می گیرند که آدرس جاری را داخل خودش کدگذاری می کند، پس هر لینک یک آدرس تازه می ساخت و درخت بی نهایتی درست شده بود که خزنده هیچ وقت تمامش نمی کرد. آن روز، هشتم اوت ۲۰۲۶، ده گیگابایت لاگ تولید شد و دیسک پر شد.
سوال هایی که واقعا پرسیده می شوند
فرق خزش و ایندکس چیست؟
خزش یعنی گوگل صفحه را خوانده. ایندکس یعنی بعد از خواندن، تصمیم گرفته آن را در فهرست خودش نگه دارد. صفحه می تواند خزیده شود و ایندکس نشود، و همین حالت رایج ترین چیزی است که در سرچ کنسول با تعجب دیده می شود.
با robots.txt می شود صفحه ای را از نتایج حذف کرد؟
نه. گوگل خودش می گوید صفحه ای که در robots.txt مسدود است می تواند همچنان در نتایج ظاهر شود، مثلا وقتی جای دیگری به آن لینک داده اند. برای بیرون بردن یک صفحه از نتایج، صفحه باید باز بماند تا خزنده تگ noindex را ببیند.
برای سئو تکنیکال باید برنامه نویسی بلد باشم؟
برای تشخیص نه. هر شش چک این درس بدون یک خط کد انجام می شوند و بیشترشان فقط نگاه کردن به یک فایل متنی اند. برای رفع بعضی از مشکل ها بله، مخصوصا در لایه رندر که به سراغ قالب و کد سایت می رود؛ ولی تشخیص درست، همان چیزی است که مشخص می کند اصلا لازم است کسی به کد دست بزند یا نه.