راهنمای کامل سئو تکنیکال در ۲۰۲۶

فهرست مطالب
- سئو تکنیکال چیست و چه چیزی نیست
- گوگل سایت شما را چطور میبیند: خزش، رندر، ایندکس
- خزشپذیری: robots.txt، بودجه خزش و لاگ سرور
- robots.txt: پرکاربردترین فایل و پرخطاترین
- بودجه خزش: برای چه کسانی واقعاً مسئله است
- لاگ سرور: تنها منبع حقیقت
- ایندکسپذیری: noindex، کانونیکال و خطاهای Search Console
- کنترل ایندکس
- کانونیکال: پرکاربردترین راهحل و پرخطاترین برداشت
- خواندن گزارش Page Indexing
- معماری سایت و لینک داخلی
- ساختار خوشهای
- متن لنگر
- ساختار URL
- سایتمپ XML
- Core Web Vitals و سرعت
- LCP: معمولاً یک تصویر است
- INP: مشکل جاوااسکریپت است
- CLS: تقریباً همیشه یک راهحل دارد
- داده آزمایشگاهی در برابر داده میدانی
- ایندکس موبایلفرست
- HTTPS، هدرهای امنیتی و ریدایرکت
- داده ساختاریافته
- سئو جاوااسکریپت: SSR، CSR و SSG
- مدیریت تغییرات: ۳۰۱، ۴۰۴، ۴۱۰ و مهاجرت
- مهاجرت سایت
- سئو تکنیکال برای موتورهای پاسخگو
- اجازه دسترسی به خزندههای هوش مصنوعی
- llms.txt
- چه چیزی واقعاً اثر دارد
- مسائل خاص سایتهای ایرانی
- انتخاب CDN
- فونت فارسی و CLS
- تاریخ شمسی و اسکیما
- اعداد فارسی در URL و اسکیما
- چکلیست ۴۰ موردی سئو تکنیکال
- خزش و ایندکس
- ساختار و URL
- سرعت و تجربه
- امنیت و پایداری
- داده ساختاریافته و موجودیت
- ابزارها
- اشتباهات رایج
- پرسشهای متداول
- سئو تکنیکال چقدر طول میکشد تا نتیجه بدهد؟
- آیا برای سئو تکنیکال حتماً باید برنامهنویس بود؟
- تفاوت ۴۰۴ و ۴۱۰ چیست و کدام را استفاده کنم؟
- چرا صفحه من ایندکس نمیشود در حالی که هیچ خطای فنی ندارد؟
- آیا Core Web Vitals واقعاً روی رتبه اثر دارد؟
- URL فارسی برای سئو ضرر دارد؟
- هر چند وقت یک بار باید سئو تکنیکال سایت را بررسی کرد؟
- اسکیما حتماً باید JSON-LD باشد؟
- جمعبندی و قدم بعدی
سئو تکنیکال مجموعه اقداماتی است که خزیدن، رندر و ایندکس شدن سایت را برای موتورهای جستجو ممکن و کمهزینه میکند. برخلاف سئو محتوایی که با کلمه و موضوع سر و کار دارد، سئو تکنیکال با زیرساخت کار میکند: سرعت بارگذاری، ساختار URL، داده ساختاریافته، معماری لینک داخلی و مدیریت خطاها. بدون آن، بهترین محتوا هم دیده نمیشود.
این راهنما توسط تیم جریان دیجیتال برای کسی نوشته شده که یک سایت واقعی دارد و میخواهد بداند دقیقاً چه چیزی را کجا باید درست کند. هر بخش با یک اصل شروع میشود، بعد کد یا دستور اجرایی میآید، و در پایان مقاله یک چکلیست ۴۰ موردی هست که میتوانید همان را ملاک ممیزی سایت خودتان قرار دهید.
سئو تکنیکال چیست و چه چیزی نیست
سئو معمولاً به سه شاخه تقسیم میشود: محتوایی، خارجی و تکنیکال. مرزها همیشه شفاف نیستند، ولی یک تعریف کاربردی این است: هر کاری که روی قابلیت دسترسی ماشین به سایت اثر میگذارد، سئو تکنیکال است. نوشتن یک عنوان بهتر برای جذب کلیک، سئو محتوایی است. مطمئن شدن از اینکه آن عنوان اصلاً در تگ <title> رندر میشود و صفحه با کد ۲۰۰ برمیگردد، سئو تکنیکال است.
سئو تکنیکال یک پروژه یکباره نیست. هر بار که قالب عوض میشود، افزونهای نصب میشود یا محصولی حذف میشود، وضعیت فنی سایت تغییر میکند. سایتهایی که یک بار ممیزی شدهاند و رها شدهاند، معمولاً ظرف شش ماه به وضعیت قبل برمیگردند.
سئو تکنیکال بهتنهایی رتبه نمیآورد. این نکته را زیاد گفتهاند اما کم فهمیده شده. سئو تکنیکال درست، سقف رتبه شما را برمیدارد؛ محتوا شما را به آن سقف میرساند. یک سایت فنی بینقص با محتوای تکراری، رتبه نمیگیرد. اما یک سایت با محتوای عالی و ایندکس خراب، اصلاً شانس رقابت ندارد.
نمره ۱۰۰ در PageSpeed هدف نیست. نمره آزمایشگاهی PageSpeed یک شبیهسازی است. آنچه گوگل برای رتبهبندی استفاده میکند، داده میدانی کاربران واقعی است. سایتی با نمره ۷۲ و داده میدانی سبز، از سایتی با نمره ۹۸ و داده میدانی قرمز جلوتر است.
گوگل سایت شما را چطور میبیند: خزش، رندر، ایندکس
تقریباً هر مشکل سئو تکنیکال در یکی از این سه مرحله اتفاق میافتد. اگر بدانید مشکل در کدام مرحله است، عیبیابی چند برابر سریعتر میشود.
مرحله | گوگل چه میکند | نشانه خرابی | ابزار تشخیص |
|---|---|---|---|
کشف (Discovery) | URL را از سایتمپ، لینک داخلی یا لینک خارجی پیدا میکند | صفحه اصلاً در Search Console دیده نمیشود | URL Inspection |
خزش (Crawl) | درخواست HTTP میفرستد و HTML خام را میگیرد | «Blocked by robots.txt» یا «Server error» | گزارش Crawl Stats + لاگ سرور |
رندر (Render) | جاوااسکریپت را اجرا میکند تا DOM نهایی ساخته شود | محتوا در «View Rendered HTML» نیست | URL Inspection → Rendered HTML |
ایندکس (Index) | محتوا را تحلیل و در فهرست ذخیره میکند | «Crawled – currently not indexed» | گزارش Page Indexing |
سرو (Serve) | صفحه را در پاسخ به کوئری نمایش میدهد | ایندکس شده اما نمایش صفر | گزارش Performance |
نکتهای که اغلب نادیده گرفته میشود: بین خزش و رندر فاصله زمانی هست. گوگل ابتدا HTML خام را میگیرد و آن را در صف رندر میگذارد. اگر محتوای اصلی شما فقط بعد از اجرای جاوااسکریپت ظاهر شود، ایندکس شدنش میتواند بهجای ساعتها، روزها طول بکشد. برای سایت خبری یا فروشگاهی با موجودی متغیر، این فاصله گران است.
خزشپذیری: robots.txt، بودجه خزش و لاگ سرور
robots.txt: پرکاربردترین فایل و پرخطاترین
فایل robots.txt باید در ریشه دامنه باشد و فقط با حروف کوچک: https://example.com/robots.txt. این فایل به خزنده میگوید کجا نرود؛ به او نمیگوید چه چیزی را ایندکس نکند. تفاوت ظریف اما حیاتی است.
User-agent: *
Allow: /
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /?s=
Disallow: /*?orderby=
Disallow: /cart/
Disallow: /checkout/
Sitemap: https://example.com/sitemap_index.xmlسه خطای رایج در همین فایل کوچک:
خطای اول: استفاده از Disallow برای جلوگیری از ایندکس. اگر صفحهای را در robots.txt ببندید، گوگل آن را نمیخزد؛ اما اگر لینکی از جای دیگر به آن باشد، ممکن است همچنان URL را در نتایج نشان دهد — با توضیح «توضیحی برای این صفحه در دسترس نیست». برای جلوگیری از ایندکس باید از تگ noindex استفاده کنید، و برای اینکه گوگل آن تگ را ببیند، صفحه نباید در robots.txt بسته باشد. این دو دستور با هم متناقضاند.
خطای دوم: بستن فایلهای CSS و JS. سالها پیش رایج بود که پوشه /wp-includes/ یا /assets/ بسته شود. امروز اگر گوگل نتواند CSS و JS را بخزد، صفحه را ناقص رندر میکند و ممکن است آن را غیرموبایلفرندلی تشخیص دهد.
خطای سوم: انتقال فایل robots.txt محیط توسعه به سرور اصلی. یک خط Disallow: / جامانده میتواند کل سایت را از نتایج حذف کند. این را در چکلیست انتشار قرار دهید.
بودجه خزش: برای چه کسانی واقعاً مسئله است
بودجه خزش یعنی تعداد URLهایی که گوگل در یک بازه زمانی از سایت شما میخزد. برای سایتی با ۲۰۰ صفحه، این اصلاً مسئله نیست و وقت گذاشتن رویش اتلاف است. برای فروشگاهی با ۵۰ هزار URL — که با فیلترها و مرتبسازیها به راحتی به میلیونها ترکیب میرسد — مسئله جدی است.
مصرفکنندههای اصلی بودجه خزش معمولاً اینها هستند:
منبع هدررفت | مثال | راهحل |
|---|---|---|
ناوبری فیلتری |
| Disallow پارامترها + کانونیکال به صفحه پایه |
صفحات جستجوی داخلی |
| noindex + Disallow |
صفحهبندی بیانتها |
| محدودسازی عمق + لینک داخلی بهتر |
ریدایرکت زنجیرهای | A → B → C → D | ریدایرکت مستقیم A → D |
صفحات نویسنده و تگ خالی |
| noindex یا حذف کامل تاکسونومی |
در Search Console بخش Settings → Crawl stats نشان میدهد گوگل روزانه چند درخواست به سایت شما میفرستد و چه نسبتی از آن صرف چه نوع فایلی میشود. اگر ۶۰ درصد درخواستها صرف تصاویر یا فایلهای JS شود در حالی که صفحات محصول جدیدتان هفتههاست ایندکس نشده، مشکل را پیدا کردهاید.
لاگ سرور: تنها منبع حقیقت
ابزارها تخمین میزنند؛ لاگ سرور واقعیت را ثبت میکند. اگر به لاگ دسترسی دارید، این سه سؤال را از آن بپرسید: گوگلبات کدام URLها را بیشتر میخزد؟ کدام صفحات مهم اصلاً خزیده نشدهاند؟ چه نسبتی از پاسخها کد ۴xx یا ۵xx بوده است؟
# پربازدیدترین URLها از دید گوگلبات در ۷ روز اخیر
grep "Googlebot" access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -50
# نسبت کدهای وضعیت پاسخدادهشده به گوگلبات
grep "Googlebot" access.log | awk '{print $9}' | sort | uniq -c | sort -rnایندکسپذیری: noindex، کانونیکال و خطاهای Search Console
کنترل ایندکس
سه ابزار برای کنترل ایندکس دارید و هرکدام جای مشخصی دارند:
<!-- در head صفحه -->
<meta name="robots" content="noindex, follow">
<!-- یا بهصورت هدر HTTP، برای فایلهای غیر HTML مثل PDF -->
X-Robots-Tag: noindex
<!-- کانونیکال خودارجاع در همه صفحات اصلی -->
<link rel="canonical" href="https://example.com/blog/technical-seo-guide">ترکیب noindex, follow برای صفحاتی مناسب است که نمیخواهید در نتایج باشند اما میخواهید اعتبار لینک از آنها عبور کند — مثل صفحات صفحهبندی یا فیلترشده.
کانونیکال: پرکاربردترین راهحل و پرخطاترین برداشت
تگ کانونیکال یک پیشنهاد است، نه دستور. گوگل میتواند نادیدهاش بگیرد و اگر سیگنالهای دیگر (لینک داخلی، سایتمپ، محتوا) خلاف آن را بگویند، معمولاً هم نادیده میگیرد. سه قاعده:
هر صفحه باید کانونیکال خودارجاع داشته باشد، مگر آنکه عمداً نسخه دیگری را کانونیکال کرده باشید.
کانونیکال باید URL مطلق و با
https://باشد، نه نسبی.صفحهای که به آن کانونیکال دادهاید باید کد ۲۰۰ برگرداند و خودش noindex نباشد. کانونیکال به یک صفحه noindex یعنی گفتن «این را ایندکس کن» و «این را ایندکس نکن» در یک نفس.
خواندن گزارش Page Indexing
این گزارش پرکاربردترین ابزار عیبیابی شماست. معنی وضعیتهای مهمش:
وضعیت | یعنی چه | نگرانکننده است؟ |
|---|---|---|
Crawled – currently not indexed | گوگل صفحه را دیده و تصمیم گرفته ایندکس نکند | بله. معمولاً یعنی محتوا کمارزش یا تکراری تشخیص داده شده |
Discovered – currently not indexed | URL را میشناسد اما هنوز نخزیده | اگر طولانی شود، بله. معمولاً نشانه فشار بودجه خزش یا کندی سرور |
Duplicate without user-selected canonical | صفحه تکراری است و شما کانونیکال تعیین نکردهاید | بله. کانونیکال صریح بگذارید |
Duplicate, Google chose different canonical | کانونیکال گذاشتهاید ولی گوگل نپذیرفته | بله. سیگنالهای متناقض دارید |
Alternate page with proper canonical tag | صفحه عمداً به نسخه دیگری کانونیکال شده | خیر. رفتار درست |
Excluded by noindex tag | خودتان noindex گذاشتهاید | فقط اگر عمدی نباشد |
Soft 404 | صفحه کد ۲۰۰ میدهد ولی محتوایش خالی یا پیام خطاست | بله. باید کد ۴۰۴ واقعی برگرداند |
«Crawled – currently not indexed» بیشترین سردرگمی را ایجاد میکند. برخلاف تصور، این یک باگ فنی نیست — یک قضاوت کیفی است. گوگل صفحه را دیده و به این نتیجه رسیده که ارزش جا گرفتن در فهرست را ندارد. راهحلش هم فنی نیست: محتوا را عمیقتر کنید، لینک داخلی معنادار به آن بدهید، و مطمئن شوید با صفحه دیگری از سایت خودتان همپوشانی موضوعی ندارد.
معماری سایت و لینک داخلی
یک قاعده ساده و قابل سنجش: هر صفحه مهم باید حداکثر با سه کلیک از صفحه اصلی قابل دسترسی باشد. اگر صفحهای در عمق هفتم است، هم کاربر پیدایش نمیکند و هم گوگل آن را کماهمیت تلقی میکند.
ساختار خوشهای
مؤثرترین الگو برای سایتهای خدماتی و آموزشی، ساختار ستون و خوشه است. یک مقاله جامع (همین مقاله) موضوع کلی را پوشش میدهد و به مقالات تخصصیتر لینک میدهد؛ آن مقالات هم به ستون برمیگردند.
راهنمای سئو تکنیکال (ستون)
├── Core Web Vitals ← لینک متقابل با ستون
├── اسکیما مارکاپ ← لینک متقابل با ستون
├── سئو تصاویر ← لینک متقابل با ستون
├── IndexNow ← لینک متقابل با ستون
└── چکلیست سرعت وردپرس ← لینک متقابل با ستوناین کار دو اثر دارد: اعتبار لینک بین صفحات همموضوع میچرخد، و به گوگل میگوید کدام صفحه مرجع اصلی این موضوع در سایت شماست.
متن لنگر
متن لنگر باید توصیفی باشد. اما در جهت مقابل هم زیادهروی نکنید: اگر ده لینک داخلی همه با متن لنگر دقیقاً «سئو تکنیکال» باشند، الگو مصنوعی به نظر میرسد. تنوع طبیعی بهتر است.
ساختار URL
اصل | خوب | بد |
|---|---|---|
حروف کوچک انگلیسی |
|
|
خط تیره نه زیرخط |
|
|
کوتاه و بیتاریخ |
|
|
بدون پارامتر اضافه |
|
|
درباره URL فارسی توضیح بیشتری لازم است، چون در ایران رایج است. URL فارسی در مرورگر زیبا نمایش داده میشود اما در واقعیت به شکل percent-encoded ذخیره و منتقل میشود: /%D8%B3%D8%A6%D9%88-%D8%AA%DA%A9%D9%86%DB%8C%DA%A9%D8%A7%D9%84/. این رشته هنگام اشتراکگذاری در پیامرسانها میشکند، در برخی CDNها و سرورها خطا میدهد، و در گزارشهای Search Console و آنالیتیکس ناخواناست. کلمه کلیدی فارسی را در عنوان، H1 و متن بیاورید — نه در URL.
و اگر تصمیم گرفتید ساختار URL را عوض کنید، این کار را یک بار و با نقشه ریدایرکت کامل انجام دهید. تغییر مکرر URL یکی از گرانترین اشتباهات سئو است.
سایتمپ XML
سایتمپ فهرستی از URLهایی است که میخواهید ایندکس شوند. این جمله را باید جدی گرفت: هر URL در سایتمپ باید کد ۲۰۰ برگرداند، کانونیکال خودارجاع داشته باشد و noindex نباشد. سایتمپ آلوده به ریدایرکت و ۴۰۴، اعتماد گوگل به کل فایل را کم میکند.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/blog/technical-seo-guide</loc>
<lastmod>2026-09-08</lastmod>
</url>
</urlset>چند نکته عملی:
پروتکل حتماً
https://باشد. سایتمپی که URLها را باhttp://فهرست کرده، به گوگل نسخه غیرکانونیکال معرفی میکند.lastmodفقط وقتی مقدار دارد که راست بگوید. اگر سیستم شما هر شب تاریخ همه صفحات را بهروز میکند، این فیلد بیمعنا و حتی مضر است.تگهای
priorityوchangefreqرا گوگل نادیده میگیرد. وقت گذاشتن رویشان بیفایده است.حداکثر ۵۰ هزار URL یا ۵۰ مگابایت در هر فایل. بیشتر از آن را به چند فایل بشکنید و یک
sitemap_index.xmlبسازید.سایتمپ را هم در robots.txt معرفی کنید و هم در Search Console ثبت کنید.
Core Web Vitals و سرعت
سه متریک Core Web Vitals و آستانههای «خوب» آنها در سال ۲۰۲۶ همچنان ثابت است:
متریک | چه میسنجد | خوب | نیازمند بهبود | ضعیف |
|---|---|---|---|---|
LCP | زمان نمایش بزرگترین عنصر محتوایی | تا ۲.۵ ثانیه | ۲.۵ تا ۴ ثانیه | بیش از ۴ ثانیه |
INP | تأخیر پاسخ به تعامل کاربر | تا ۲۰۰ میلیثانیه | ۲۰۰ تا ۵۰۰ میلیثانیه | بیش از ۵۰۰ میلیثانیه |
CLS | جابهجایی ناگهانی عناصر صفحه | تا ۰.۱ | ۰.۱ تا ۰.۲۵ | بیش از ۰.۲۵ |
سنجش در صدک ۷۵ کاربران واقعی و در بازه ۲۸ روزه انجام میشود. یعنی برای اینکه صفحه شما «خوب» باشد، باید ۷۵ درصد بازدیدها زیر آستانه باشند. متریک INP از مارس ۲۰۲۴ جایگزین FID شده است.
LCP: معمولاً یک تصویر است
در بیشتر سایتها، عنصر LCP تصویر شاخص بالای صفحه است. سه اشتباه که آن را کند میکند:
<!-- غلط: مهمترین تصویر صفحه با lazy loading عقب انداخته شده -->
<img src="/hero.jpg" loading="lazy" alt="...">
<!-- درست: تصویر LCP اولویت بالا میگیرد و lazy نمیشود -->
<img src="/hero.avif" alt="..." width="1600" height="900" fetchpriority="high">سه اقدام با بیشترین اثر روی LCP، به ترتیب: حذف lazy loading از تصویر بالای صفحه و افزودن fetchpriority="high"؛ تبدیل تصاویر به AVIF یا WebP؛ و کاهش زمان پاسخ سرور (TTFB) با کش سمت سرور. جزئیات کامل بهینهسازی تصویر در راهنمای سئو تصاویر آمده است.
INP: مشکل جاوااسکریپت است
INP وقتی بد میشود که نخ اصلی مرورگر مشغول است و نمیتواند به کلیک کاربر پاسخ دهد. مقصر معمولاً اسکریپتهای شخص ثالث است: چت آنلاین، ابزار تحلیل رفتار، پیکسل تبلیغاتی، اسلایدر سنگین.
<!-- اسکریپت غیرضروری را از مسیر بحرانی خارج کنید -->
<script src="/chat-widget.js" defer></script>
<!-- یا فقط بعد از تعامل کاربر بارگذاری کنید -->
<script>
['scroll','mousemove','touchstart'].forEach(e =>
window.addEventListener(e, loadThirdParty, { once: true })
);
</script>CLS: تقریباً همیشه یک راهحل دارد
جابهجایی چیدمان معمولاً از سه منبع میآید: تصاویر بدون ابعاد مشخص، فونتهایی که دیر لود میشوند، و بنرها یا تبلیغاتی که بعداً تزریق میشوند.
/* فضای فونت را از قبل رزرو کنید */
@font-face {
font-family: 'Vazirmatn';
src: url('/fonts/Vazirmatn.woff2') format('woff2');
font-display: swap;
}
/* جای عنصر تزریقی را از قبل نگه دارید */
.ad-slot { min-height: 250px; }و روی همه تصاویر width و height بگذارید. مرورگر با همین دو عدد نسبت ابعاد را قبل از دانلود تصویر میداند و جای آن را خالی نگه میدارد.
داده آزمایشگاهی در برابر داده میدانی
این تمایز را جدی بگیرید. PageSpeed Insights دو بخش دارد: بالا داده میدانی (CrUX) از کاربران واقعی کروم، پایین داده آزمایشگاهی (Lighthouse) از یک شبیهسازی. آنچه در رتبهبندی اثر دارد داده میدانی است. اگر سایت شما ترافیک کافی ندارد، بخش میدانی خالی میماند — در آن صورت داده آزمایشگاهی تنها راهنمای شماست، اما نمرهاش را هدف نگیرید.
ایندکس موبایلفرست
گوگل نسخه موبایل سایت شما را میخزد و همان را ملاک ایندکس و رتبهبندی قرار میدهد. این یعنی هر چیزی که در نسخه موبایل نیست، برای گوگل وجود ندارد.
سه اشتباه که هنوز رایج است:
محتوای کمتر در موبایل. برخی قالبها برای «تمیزتر شدن» موبایل، بخشهایی از متن را با
display: noneپنهان میکنند. اگر محتوا در DOM باشد و فقط با آکاردئون جمع شده باشد، مشکلی نیست. اگر اصلاً رندر نشود، آن محتوا را از دست دادهاید.داده ساختاریافته متفاوت. اسکیمای موبایل و دسکتاپ باید یکسان باشد.
عناصر تعاملی بیشازحد نزدیک. فاصله دکمهها و لینکها باید برای لمس انگشت کافی باشد.
برای تست، بهجای تکیه بر ظاهر سایت روی موبایل خودتان، از URL Inspection در Search Console استفاده کنید و «Rendered HTML» را ببینید. آن چیزی است که گوگل واقعاً دریافت کرده.
HTTPS، هدرهای امنیتی و ریدایرکت
HTTPS از سال ۲۰۱۴ یک سیگنال رتبهبندی سبک است، اما اهمیت واقعیاش جای دیگری است: مرورگرها سایت بدون گواهی را «ناامن» علامت میزنند و نرخ خروج بالا میرود.
نکتهای که اغلب فراموش میشود: داشتن گواهی SSL کافی نیست؛ باید یک نسخه کانونیکال داشته باشید. چهار حالت زیر برای گوگل چهار سایت متفاوت است:
http://example.com
http://www.example.com
https://example.com
https://www.example.com ← فقط یکی را انتخاب کنیدسه تای دیگر باید با ۳۰۱ به نسخه منتخب ریدایرکت شوند — مستقیم، نه زنجیرهای.
# نمونه برای Nginx: هدایت همه نسخهها به https بدون www
server {
listen 80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}
server {
listen 443 ssl;
server_name www.example.com;
return 301 https://example.com$request_uri;
}محتوای ترکیبی (Mixed Content) هم مسئله رایجی است: صفحهای که با HTTPS سرو میشود اما تصویر یا اسکریپتی را با HTTP فراخوانی میکند. مرورگر آن منبع را مسدود میکند و صفحه ناقص رندر میشود. با جستجوی src="http:// در دیتابیس یا قالب، این موارد را پیدا کنید.
داده ساختاریافته
اسکیما به گوگل میگوید محتوای صفحه چیست، نه فقط اینکه چه کلماتی دارد. برای موتورهای پاسخگو و AI Overviews اهمیتش بیشتر هم شده، چون داده ساختاریافته قابل استخراج و قابل استناد است.
فرمت توصیهشده گوگل JSON-LD است و باید داخل <script type="application/ld+json"> در head یا body قرار بگیرد.
نوع صفحه | اسکیمای پیشنهادی |
|---|---|
مقاله و راهنما |
|
صفحه خدمات |
|
صفحه محصول |
|
صفحه اصلی |
|
آموزش گامبهگام |
|
کسبوکار محلی |
|
نمونه پایه برای یک مقاله:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "راهنمای کامل سئو تکنیکال در ۲۰۲۶",
"inLanguage": "fa-IR",
"datePublished": "2026-09-08",
"dateModified": "2026-09-08",
"author": {
"@type": "Person",
"name": "نام نویسنده",
"jobTitle": "کارشناس ارشد سئو تکنیکال",
"url": "https://example.com/about/author"
},
"publisher": {
"@type": "Organization",
"name": "جریان دیجیتال",
"logo": { "@type": "ImageObject", "url": "https://example.com/logo.png" }
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://example.com/blog/technical-seo-guide"
}
}دو قاعده که نقضشان جریمه دارد: اسکیما باید با آنچه کاربر روی صفحه میبیند مطابقت داشته باشد، و نباید محتوایی را نشانهگذاری کند که روی صفحه نیست. علامتگذاری امتیاز و نظر برای محصولی که نظری ندارد، مصداق نقض دستورالعملهای اسپم است. برای اعتبارسنجی از Rich Results Test گوگل و Schema Markup Validator استفاده کنید. راهنمای تفصیلی در مقاله اسکیما مارکاپ آمده است.
سئو جاوااسکریپت: SSR، CSR و SSG
گوگل جاوااسکریپت را اجرا میکند، اما این اجرا هزینه و تأخیر دارد. سه معماری رایج و پیامد سئویی هرکدام:
معماری | محتوا کجا ساخته میشود | ریسک سئو | مناسب برای |
|---|---|---|---|
SSG (تولید ایستا) | هنگام بیلد | کمترین | بلاگ، مستندات، صفحات ثابت |
SSR (رندر سمت سرور) | هنگام درخواست، روی سرور | کم | فروشگاه، محتوای پویا |
CSR (رندر سمت کلاینت) | در مرورگر کاربر | بالا | پنل کاربری و بخشهای پشت لاگین |
اگر سایت شما CSR است و محتوای اصلی فقط بعد از اجرای جاوااسکریپت ظاهر میشود، این علائم را خواهید دید: تأخیر چندروزه در ایندکس صفحات جدید، ناقص بودن snippet در نتایج، و خالی بودن HTML خام هنگام view-source.
تست ساده: صفحه را با view-source: باز کنید و متن اصلی مقاله را در آن جستجو کنید. اگر نبود، گوگل هم در مرحله خزش آن را نمیبیند و باید منتظر صف رندر بماند.
نکته مهم دیگر: موتورهای پاسخگو مثل ChatGPT و Perplexity برخلاف گوگل معمولاً جاوااسکریپت را اجرا نمیکنند. سایت CSR برای آنها عملاً خالی است. اگر دیدهشدن در این ابزارها برایتان مهم است، رندر سمت سرور اختیاری نیست.
مدیریت تغییرات: ۳۰۱، ۴۰۴، ۴۱۰ و مهاجرت
کد وضعیت درست را انتخاب کنید:
کد | معنی | کِی استفاده شود |
|---|---|---|
| موفق | صفحه سالم و دارای محتوا |
| انتقال دائمی | URL عوض شده و محتوای معادل جای دیگری هست |
| انتقال موقت | فقط برای انتقال واقعاً موقت مثل تعمیرات |
| یافت نشد | صفحه وجود ندارد و ممکن است بعداً بیاید |
| حذف دائمی | صفحه عمداً حذف شده و برنمیگردد — سریعتر از ۴۰۴ از ایندکس خارج میشود |
| در دسترس نیست | تعمیرات موقت — با هدر |
سه قاعده ریدایرکت:
هدف مرتبط باشد. ریدایرکت انبوه صفحات حذفشده به صفحه اصلی، در عمل مثل ۴۰۴ نرم رفتار میشود و اعتباری منتقل نمیکند.
زنجیره نسازید. A→B→C را به A→C تبدیل کنید. هر پرش، هم زمان میبرد و هم بخشی از اعتبار را از دست میدهد.
حلقه نسازید. قبل از اعمال هر نقشه ریدایرکت، آن را روی کاغذ بررسی کنید که مقصدها خودشان مبدأ ریدایرکت دیگری نباشند.
مهاجرت سایت
مهاجرت — تغییر دامنه، تغییر ساختار URL، یا تعویض کامل پلتفرم — پرریسکترین کار سئو تکنیکال است. حداقلهای ضروری: نقشه ریدایرکت کامل قبل از انتقال، حفظ ساختار محتوا و عناوین، انتقال Search Console با ابزار Change of Address، نگهداشتن سایت قدیمی و ریدایرکتها دستکم شش ماه، و پایش روزانه گزارشهای ایندکس در هفتههای اول.
سئو تکنیکال برای موتورهای پاسخگو
در ۲۰۲۶ بخشی از ترافیک اطلاعاتی بهجای صفحه نتایج گوگل، در پاسخ ابزارهای هوش مصنوعی مصرف میشود. اگر میخواهید سایت شما منبع آن پاسخها باشد، چند اقدام فنی لازم است.
اجازه دسترسی به خزندههای هوش مصنوعی
این خزندهها به robots.txt احترام میگذارند. اگر آنها را نبستهاید، لازم نیست کاری کنید؛ اما اگر افزونه امنیتی یا فایروال شما بهصورت پیشفرض آنها را مسدود کرده، باید بدانید:
User-agent: GPTBot
Allow: /
User-agent: ChatGPT-User
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Google-Extended
Allow: /این یک تصمیم تجاری است، نه صرفاً فنی. اجازه دادن یعنی احتمال استناد و دیدهشدن برند؛ ندادن یعنی حفظ محتوا اما غیبت کامل از این کانال. بسته به مدل کسبوکار، هر دو انتخاب قابل دفاع است.
llms.txt
یک پیشنهاد نوظهور است که هنوز استاندارد رسمی نشده: فایلی در ریشه دامنه که مهمترین صفحات و توضیح مختصرشان را به زبان ساده فهرست میکند تا مدلهای زبانی راحتتر ساختار سایت را بفهمند.
# جریان دیجیتال
> آژانس سئو، توسعه وب و تولید افزونه وردپرس
## راهنماها
- [راهنمای سئو تکنیکال](https://example.com/blog/technical-seo-guide): مرجع کامل خزش، ایندکس و Core Web Vitals
- [راهنمای سئو تصاویر](https://example.com/blog/image-seo-guide): فرمت، Alt Text و CDNهزینه ساختنش نزدیک به صفر است و ریسکی ندارد. اما انتظار نتیجه فوری از آن نداشته باشید؛ پذیرشش هنوز محدود است.
چه چیزی واقعاً اثر دارد
مؤثرتر از فایلهای جدید، سه کار قدیمی است: پاسخ مستقیم و کوتاه در ابتدای هر بخش، داده ساختاریافته دقیق، و نامگذاری یکدست موجودیتها. اگر برند شما در یک صفحه «جریان»، در صفحه دیگر «جریان دیجیتال» و در سومی «Jaryan Digital» نوشته شود، هیچ سیستمی نمیتواند اینها را به یک موجودیت واحد نسبت دهد.
مسائل خاص سایتهای ایرانی
چند مسئله هست که در منابع انگلیسی پیدا نمیکنید اما برای سایت ایرانی تعیینکنندهاند.
انتخاب CDN
CDNهای بینالمللی برای بازدیدکننده داخل ایران معمولاً کندتر عمل میکنند و در مواردی دسترسی محدود میشود. از طرف دیگر، سرویسهای ابری داخلی نقاط حضورشان محدود به داخل کشور است. انتخاب باید بر اساس محل واقعی مخاطب باشد، نه شهرت برند CDN. اگر ۹۵ درصد ترافیک شما از داخل ایران است، سرویس داخلی تقریباً همیشه انتخاب بهتری است.
فونت فارسی و CLS
فونتهای فارسی حجیمتر از لاتین هستند و اگر از CDN خارجی فراخوانی شوند، هم کند میآیند و هم ریسک قطعی دارند. فونت را روی سرور خودتان میزبانی کنید، فرمت WOFF2 بگذارید، و با font-display: swap از پرش متن جلوگیری کنید.
تاریخ شمسی و اسکیما
اسکیما فقط فرمت ISO 8601 میلادی را میپذیرد. اگر سایت شما تاریخ شمسی نمایش میدهد، مقدار داخل JSON-LD باید معادل میلادی باشد: "datePublished": "2026-09-08". نمایش شمسی برای کاربر و مقدار میلادی برای ماشین — هیچ تناقضی ندارد.
اعداد فارسی در URL و اسکیما
اعداد فارسی (۱۴۰۵) در متن صفحه کاملاً درستاند، اما در URL، اسکیما و مقادیر عددی باید از ارقام لاتین استفاده کنید. این یک اشتباه رایج است که باعث میشود مقادیر اسکیما نامعتبر شوند.
چکلیست ۴۰ موردی سئو تکنیکال
این چکلیست را میتوانید مستقیم برای ممیزی سایت خودتان استفاده کنید. هر مورد یا برقرار است یا نیست؛ حالت میانی ندارد.
خزش و ایندکس
فایل robots.txt در ریشه دامنه موجود است و پاسخ ۲۰۰ میدهد.
هیچ
Disallow: /ناخواستهای در robots.txt نیست.فایلهای CSS و JS برای خزنده باز هستند.
سایتمپ XML موجود و در robots.txt معرفی شده است.
همه URLهای سایتمپ با
https://شروع میشوند.هیچ URL سایتمپ ریدایرکت، ۴۰۴ یا noindex نیست.
سایتمپ در Search Console ثبت و بدون خطا خوانده شده است.
هر صفحه یک کانونیکال خودارجاع مطلق دارد.
هیچ صفحهای همزمان noindex و کانونیکال متناقض ندارد.
گزارش Page Indexing بدون افزایش ناگهانی در «Crawled – currently not indexed» است.
صفحات جستجوی داخلی و فیلترها noindex هستند.
صفحات تگ و نویسنده خالی، حذف یا noindex شدهاند.
ساختار و URL
هر صفحه مهم حداکثر با سه کلیک از صفحه اصلی قابل دسترسی است.
URLها کوتاه، انگلیسی، با حروف کوچک و خط تیره هستند.
هیچ URLی تاریخ یا شماره نسخه در خود ندارد.
هر صفحه دقیقاً یک تگ H1 دارد.
سلسلهمراتب سرفصلها (H2 زیر H1، H3 زیر H2) رعایت شده است.
ناوبری نانریزه (Breadcrumb) در همه صفحات داخلی هست.
هر مقاله دستکم سه لینک داخلی با متن لنگر توصیفی دارد.
هیچ صفحه یتیم (بدون لینک ورودی داخلی) وجود ندارد.
سرعت و تجربه
LCP در داده میدانی زیر ۲.۵ ثانیه است.
INP در داده میدانی زیر ۲۰۰ میلیثانیه است.
CLS در داده میدانی زیر ۰.۱ است.
تصویر LCP بدون
loading="lazy"و باfetchpriority="high"است.همه تصاویر
widthوheightدارند.تصاویر با فرمت AVIF یا WebP سرو میشوند.
فونتها روی سرور خودی و با
font-display: swapبارگذاری میشوند.اسکریپتهای شخص ثالث با
deferیا پس از تعامل کاربر بارگذاری میشوند.کش سمت سرور فعال است و TTFB زیر ۶۰۰ میلیثانیه است.
سایت روی موبایل همان محتوای دسکتاپ را رندر میکند.
امنیت و پایداری
کل سایت روی HTTPS با گواهی معتبر سرو میشود.
فقط یک نسخه کانونیکال دامنه فعال است و سه نسخه دیگر ۳۰۱ میخورند.
هیچ محتوای ترکیبی (Mixed Content) روی سایت نیست.
هیچ زنجیره ریدایرکت بیش از یک پرش وجود ندارد.
صفحه ۴۰۴ سفارشی با لینک به بخشهای اصلی سایت وجود دارد.
صفحات عمداً حذفشده کد ۴۱۰ برمیگردانند، نه ۳۰۱ به صفحه اصلی.
داده ساختاریافته و موجودیت
اسکیمای Organization و WebSite در صفحه اصلی پیاده شده است.
هر مقاله اسکیمای Article و BreadcrumbList دارد و در Rich Results Test معتبر است.
نام برند در همه صفحات و اسکیماها یکسان نوشته میشود.
هر مقاله نویسنده مشخص با صفحه نویسنده و اسکیمای Person دارد.
ابزارها
ابزار | کاربرد اصلی | هزینه |
|---|---|---|
Google Search Console | ایندکس، خزش، عملکرد — پایه هر ممیزی | رایگان |
PageSpeed Insights | داده میدانی و آزمایشگاهی Core Web Vitals | رایگان |
Rich Results Test | اعتبارسنجی اسکیما | رایگان |
Screaming Frog | خزش کامل سایت و کشف خطاهای ساختاری | تا ۵۰۰ URL رایگان |
WebPageTest | تحلیل عمیق آبشار بارگذاری | رایگان |
Chrome DevTools | عیبیابی زنده رندر، شبکه و CLS | رایگان |
Bing Webmaster Tools | ایندکس بینگ و ثبت IndexNow | رایگان |
با Search Console و PageSpeed Insights شروع کنید. اگر این دو را درست بخوانید، بیش از هشتاد درصد مشکلات فنی یک سایت متوسط را پیدا میکنید — بدون هیچ هزینهای.
اشتباهات رایج
تعقیب نمره بهجای متریک. نمره PageSpeed یک عدد ترکیبی آزمایشگاهی است. بهبود آن از ۸۵ به ۹۵ ممکن است هیچ اثری بر داده میدانی نداشته باشد.
ریدایرکت انبوه به صفحه اصلی. وقتی صد صفحه حذف میکنید و همه را ۳۰۱ به صفحه اصلی میزنید، گوگل این را ۴۰۴ نرم تلقی میکند. یا به صفحه واقعاً مرتبط ریدایرکت کنید، یا صادقانه ۴۱۰ بدهید.
نصب چند افزونه سئو همزمان. دو افزونه سئو روی وردپرس یعنی دو تگ کانونیکال، دو سایتمپ و دو مجموعه متا. نتیجهاش سیگنال متناقض است.
نادیده گرفتن صفحات یتیم. صفحهای که فقط در سایتمپ هست و هیچ لینک داخلی ندارد، از دید گوگل بیاهمیت است. سایتمپ جای لینک داخلی را نمیگیرد.
ممیزی بدون اولویتبندی. خروجی یک ابزار خزش معمولاً چند صد هشدار دارد که اکثرشان بیاهمیتاند. اگر همه را هموزن ببینید، هفتهها صرف اصلاح مواردی میشود که هیچ اثری بر رتبه ندارند. اول سراغ چیزی بروید که مانع ایندکس شدن است، بعد چیزی که کند است، و آخر چیزی که فقط «بهتر است باشد».
یکبار درست کردن و رها کردن. سئو تکنیکال وضعیت است نه پروژه. یک ممیزی فصلی سبک، از یک ممیزی سنگین سالانه مؤثرتر است.
پرسشهای متداول
سئو تکنیکال چقدر طول میکشد تا نتیجه بدهد؟
اصلاحات ایندکس معمولاً ظرف چند روز تا دو هفته اثر میگذارند، چون بهمحض خزش مجدد صفحه اعمال میشوند. اما بهبود Core Web Vitals حداقل ۲۸ روز طول میکشد تا در داده میدانی دیده شود، چون CrUX در بازه ۲۸ روزه محاسبه میشود. اثر رتبهای معمولاً یک تا سه ماه بعد از اصلاح قابل اندازهگیری است.
آیا برای سئو تکنیکال حتماً باید برنامهنویس بود؟
نه. بخش بزرگی از کار — خواندن Search Console، تنظیم کانونیکال، مدیریت ریدایرکت، تنظیم سایتمپ و افزودن اسکیما — با افزونهها و پنل مدیریت قابل انجام است. اما برای بهینهسازی INP، کاهش TTFB و اصلاح مشکلات رندر جاوااسکریپت، به دانش فنی یا کمک توسعهدهنده نیاز دارید.
تفاوت ۴۰۴ و ۴۱۰ چیست و کدام را استفاده کنم؟
کد ۴۰۴ یعنی «الان نیست» و ممکن است بعداً بیاید؛ کد ۴۱۰ یعنی «عمداً حذف شده و برنمیگردد». وقتی صفحهای را آگاهانه و برای همیشه حذف میکنید، ۴۱۰ بدهید — گوگل آن را سریعتر از فهرست خارج میکند و بودجه خزش کمتری صرف بازبینیاش میشود.
چرا صفحه من ایندکس نمیشود در حالی که هیچ خطای فنی ندارد؟
اگر وضعیت «Crawled – currently not indexed» است، مشکل فنی نیست؛ قضاوت کیفی است. گوگل صفحه را دیده و ارزش ایندکس تشخیص نداده. سه علت محتمل: محتوا با صفحه دیگری از سایت خودتان همپوشانی زیاد دارد، عمق و ارزش افزوده کافی ندارد، یا هیچ لینک داخلی معناداری به آن نمیرسد.
آیا Core Web Vitals واقعاً روی رتبه اثر دارد؟
بله، اما سیگنال ضعیفی است و نقشش بیشتر تفکیککننده است تا تعیینکننده. بین دو صفحه با کیفیت محتوایی مشابه، سریعتر جلو میافتد. اما یک صفحه سریع با محتوای ضعیف، صفحهای کند با محتوای عالی را شکست نمیدهد. اثر واقعی سرعت بیشتر در نرخ خروج و نرخ تبدیل دیده میشود تا در رتبه.
URL فارسی برای سئو ضرر دارد؟
مستقیماً جریمه ندارد و گوگل آن را میفهمد. اما در عمل مشکلساز است: URL به شکل percent-encoded ذخیره میشود، هنگام اشتراکگذاری در پیامرسانها میشکند، در برخی سرورها و CDNها خطا میدهد، و در گزارشهای تحلیلی ناخوانا میشود. اسلاگ انگلیسی و کوتاه انتخاب امنتری است.
هر چند وقت یک بار باید سئو تکنیکال سایت را بررسی کرد؟
یک بررسی سبک ماهانه از Search Console (گزارش ایندکس و Core Web Vitals) کافی است. یک ممیزی کامل فصلی و همچنین بعد از هر تغییر بزرگ — تعویض قالب، مهاجرت، تغییر ساختار URL یا نصب افزونههای سنگین — ضروری است.
اسکیما حتماً باید JSON-LD باشد؟
گوگل هر سه فرمت JSON-LD، Microdata و RDFa را میپذیرد، اما JSON-LD را رسماً توصیه میکند. دلیلش ساده است: از HTML جداست، پس افزودن، ویرایش و حذفش بدون دستزدن به قالب ممکن است و احتمال خطا بهمراتب کمتر است.
جمعبندی و قدم بعدی
سئو تکنیکال کار پرزرقوبرقی نیست. هیچکس بابت درست بودن کانونیکالها تشویق نمیشود. اما هر ساعتی که روی محتوا و لینکسازی میگذارید، روی زیرساختی سوار است که یا کار میکند یا نمیکند.
اگر میخواهید از همین امروز شروع کنید، این ترتیب بیشترین بازده را دارد: اول گزارش Page Indexing را باز کنید و ببینید چند صفحه مهم ایندکس نشدهاند و چرا. بعد robots.txt و سایتمپ را با چکلیست بالا تطبیق دهید. سپس داده میدانی Core Web Vitals را ببینید و روی LCP تمرکز کنید که معمولاً بیشترین فاصله را با آستانه دارد. این سه قدم، بدون هیچ هزینهای، بخش عمده مشکلات یک سایت متوسط را آشکار میکند.
برای اینکه ببینید سایت خودتان الان کجای این چکلیست ایستاده، آدرس صفحه را در اسکنر رایگان AEO جریان دیجیتال بگذارید؛ در چند ثانیه وضعیت robots، سایتمپ، کانونیکال و دادهی ساختاریافته را بههمراه راهکار فارسی نشان میدهد.
اگر ترجیح میدهید این ممیزی را کسی انجام دهد که هر روز با آن سر و کار دارد، تیم جریان دیجیتال ممیزی سئو تکنیکال با گزارش اولویتبندیشده انجام میدهد. برای مشاوره رایگان تماس بگیرید .




نظرات کاربران
هنوز نظری ثبت نشده است. اولین نفری باشید که نظر میدهد.
ثبت نظر
نشانی ایمیل و شمارهی شما لازم نیست. نظرها پس از بررسی و تأیید منتشر میشوند.