اگر در Google Search Console هنگام بررسی Sitemap با خطای Sitemap status: Couldn’t fetch یا پیام Sitemap could not be read مواجه شدهاید، لزوما به این معنی نیست که Sitemap سایت شما خراب است.
این وضعیت در بسیاری از مواقع به این دلیل نمایش داده میشود که گوگل هنوز Sitemap را دریافت و پردازش نکرده است. اما اگر این وضعیت ادامهدار باشد، باید بررسی کنید که Googlebot واقعا امکان دسترسی و خواندن فایل Sitemap را دارد یا خیر.
در این مقاله، علتهای مختلف این خطا و روش برطرف کردن آن را مرحلهبهمرحله بررسی میکنیم.
خطای Sitemap status: Couldn’t fetch چیست؟
در بخش Sitemaps سرچ کنسول، گوگل وضعیت آخرین تلاش خود برای دریافت Sitemap را نمایش میدهد. یکی از این وضعیتها خطای Sitemap status: Couldn’t fetch است.
به زبان ساده، این پیام یعنی گوگل در حال حاضر نتوانسته Sitemap را در فرایند پردازش خود دریافت کند. اما نکته مهم این است که این پیام همیشه به معنای وجود یک مشکل فنی قطعی نیست.
طبق مستندات گوگل، اگر Sitemap در همان لحظه قابل دریافت نباشد، دلایل مختلفی از جمله مشکلات موقتی سرور، مسدود شدن توسط robots.txt، اشتباه بودن آدرس Sitemap یا حتی پایین بودن Crawl Demand میتواند باعث این وضعیت شود. گوگل همچنین اشاره میکند که بعضی از خطاهای دریافت Sitemap موقتی هستند.
آیا Couldn’t fetch یعنی Sitemap خراب است؟
خیر.
این یکی از مهمترین نکاتی است که باید درباره این پیام بدانید.
همانطور که در آموزش سرچ کنسول هم گفته شد، اگر Sitemap را بهتازگی در سرچ کنسول ثبت کردهاید، ممکن است وضعیت آن برای مدتی خطای Sitemap status: Couldn’t fetch باقی بماند، در حالی که Sitemap کاملا سالم است.
در Google Search Central نیز موارد متعددی گزارش شده که Sitemap در مرورگر قابل دسترسی بوده، کد HTTP 200 برمیگردانده و ساختار XML نیز صحیح بوده، اما Search Console هنوز آن را پردازش نکرده است. در چنین شرایطی، معمولا با پردازش Sitemap وضعیت به Success تغییر میکند یا در صورت وجود مشکل واقعی، گوگل خطای دقیقتری نمایش میدهد.
بنابراین اگر همین الان Sitemap جدیدی ساختهاید و در Search Console ثبت کردهاید، لازم نیست بلافاصله آن را حذف و دوباره ثبت کنید.
Sitemap could not be read چیست؟
Sitemap could not be read معمولا در صفحه جزئیات Sitemap نمایش داده میشود و ارتباط نزدیکی با خطای Sitemap status: Couldn’t fetch دارد.
این پیام به این معناست که گوگل در مرحله دریافت یا پردازش Sitemap نتوانسته آن را بخواند.
اما برای تشخیص مشکل باید به جزئیات همان Sitemap مراجعه کنید. گوگل در مستندات Search Console توصیه میکند بعد از ورود به Sitemap، جزئیات آخرین Fetch را بررسی کنید و در صورت وجود خطای مشخص، علت آن را از همان بخش دنبال کنید.
اگر فقط همین پیام عمومی را مشاهده میکنید و Sitemap بهتازگی ثبت شده، ممکن است هنوز Fetch واقعی انجام نشده باشد.
چرا Sitemap status روی Couldn’t fetch میماند؟
چند دلیل اصلی وجود دارد.
1. Sitemap تازه ثبت شده است
این سادهترین و در عین حال یکی از رایجترین حالتهاست.
ثبت Sitemap در Search Console به این معنی نیست که گوگل همان لحظه آن را دریافت و پردازش میکند. Sitemap در واقع یک سیگنال یا پیشنهاد الگوریتم های گوگل برای سئو است و گوگل زمان پردازش آن را خودش تعیین میکند.
بنابراین اگر Sitemap را تازه ثبت کردهاید و URL آن در مرورگر بدون مشکل باز میشود، ابتدا کمی زمان بدهید.
در گزارشهای Google Search Central نیز بارها به این نکته اشاره شده که وضعیت خطای Sitemap status: Couldn’t fetch میتواند صرفا به این دلیل باشد که Sitemap هنوز توسط گوگل پردازش نشده است.
2. آدرس Sitemap اشتباه است
آدرس Sitemap ثبتشده در Search Console را دقیق بررسی کنید.
برای مثال ممکن است Sitemap واقعی این باشد:
https://example.com/sitemap_index.xml
اما آدرس زیر را در Search Console ثبت کرده باشید:
https://example.com/sitemap.xml
آدرس Sitemap را مستقیما در مرورگر باز کنید و مطمئن شوید فایل موردنظر واقعا وجود دارد.
اگر آدرس Sitemap با 404 Not Found مواجه شود، گوگل نیز نمیتواند آن را دریافت کند. گوگل این مورد را یکی از دلایل رسمی Fetch Error معرفی کرده است.
3. Sitemap توسط robots.txt مسدود شده است
فایل robots.txt را بررسی کنید.
اگر قوانینی در robots.txt وجود داشته باشد که دسترسی Googlebot به Sitemap را مسدود کند، گوگل نمیتواند آن را دریافت کند.
همچنین بهتر است Sitemap اصلی را در robots.txt معرفی کنید:
Sitemap: https://example.com/sitemap.xml
البته قرار داشتن Sitemap در robots.txt بهتنهایی تضمین نمیکند که گوگل فورا آن را پردازش کند؛ فقط مسیر Sitemap را در اختیار موتور جستجو قرار میدهد.
4. مشکل موقت سرور یا هاست
ممکن است Sitemap در مرورگر شما باز شود اما سرور در بعضی درخواستها پاسخ مناسبی به Googlebot ندهد.
برای مثال:
- Server Error یا خطای 5xx
- Timeout
- قطعی موقت سرور
- محدودیت منابع هاست
- مشکلات CDN
- تنظیمات اشتباه Firewall یا WAF
- مسدود شدن درخواستهای Googlebot
گوگل نیز صراحتا اشاره میکند که در دسترس نبودن موقت سرور میتواند باعث خطای Sitemap status: Couldn’t fetch شود.
5. Sitemap نیاز به ورود دارد
Sitemap باید برای Googlebot عمومی و قابل دسترسی باشد.
اگر برای مشاهده Sitemap نیاز به ورود به حساب کاربری، رمز عبور یا دسترسی خاصی باشد، گوگل نمیتواند آن را بخواند.
6. Sitemap یا Sitemap Index مشکل ساختاری دارد
اگر Sitemap واقعا دریافت شود اما ساختار XML آن مشکل داشته باشد، ممکن است گوگل نتواند محتوای آن را بهدرستی پردازش کند.
در Sitemap Index نیز باید آدرس Sitemapهای فرزند صحیح و قابل دسترسی باشند.
بنابراین اگر از فایلهایی مانند:
sitemap_index.xml
استفاده میکنید، فقط خود فایل Index را بررسی نکنید؛ Sitemapهای فرزند آن را نیز بررسی کنید.
مقالات مرتبط: ابزارهای تست سرعت سایت
چطور بفهمیم مشکل از Sitemap است یا از Search Console؟
قبل از هر اقدامی، این چند بررسی را انجام دهید.
مرحله اول: Sitemap را مستقیم باز کنید
آدرس Sitemap را در مرورگر وارد کنید.
باید فایل XML را مشاهده کنید و صفحه نباید با خطاهایی مانند 404 یا 500 مواجه شود.
مرحله دوم: robots.txt را بررسی کنید
به آدرس زیر بروید:
https://example.com/robots.txt
بررسی کنید که دسترسی Googlebot به Sitemap مسدود نشده باشد.
مرحله سوم: وضعیت HTTP را بررسی کنید
Sitemap بهتر است با پاسخ موفق HTTP در دسترس باشد؛ معمولا 200 OK.
اگر Sitemap به صفحات دیگری Redirect میشود، خطاهای سرور دارد یا در بعضی درخواستها پاسخ متفاوتی میدهد، باید مشکل را در سطح هاست یا سرور بررسی کنید.
مرحله چهارم: داخل Search Console جزئیات Sitemap را ببینید
از مسیر:
Search Console → Indexing → Sitemaps
روی Sitemap موردنظر کلیک کنید و جزئیات آخرین Fetch را بررسی کنید.
گوگل پیشنهاد میکند برای بررسی علت عدم دسترسی، URL Sitemap را در URL Inspection وارد کرده و Live Test را اجرا کنید تا وضعیت دسترسی و Fetch مشخص شود.
اگر Sitemap سالم است، آیا باید آن را دوباره Submit کنیم؟
معمولا نه.
اگر:
- URL Sitemap صحیح است؛
- Sitemap در مرورگر باز میشود؛
- سایت با HTTPS بهدرستی کار میکند؛
- robots.txt مانع دسترسی نیست؛
- Sitemap ساختار درستی دارد؛
- و مشکل سروری وجود ندارد؛
صرفا به دلیل نمایش Couldn’t fetch آن را مرتبا حذف و دوباره ثبت نکنید.
ثبت چندباره Sitemap باعث نمیشود گوگل الزاما سریعتر آن را پردازش کند.
بهتر است Sitemap را ثبتشده باقی بگذارید و منتظر Fetch بعدی گوگل باشید.
آیا خطای Sitemap status: Couldn’t fetch باعث ایندکس نشدن صفحات میشود؟
الزاما خیر.
Sitemap یکی از روشهای معرفی URLها به گوگل است، اما تنها روش کشف صفحات نیست.
Googlebot میتواند URLها را از طریق لینکهای داخلی، لینکهای خارجی و سایر مسیرهای کشف پیدا کند. بنابراین حتی اگر Sitemap هنوز پردازش نشده باشد، این موضوع بهتنهایی به معنی ایندکس نشدن صفحات سایت نیست.
از طرف دیگر، Sitemap نیز تضمین نمیکند که URLهای موجود در آن حتما Crawl یا Index شوند. خود گوگل نیز در مستندات Search Console تأکید میکند که URLهای کشفشده از Sitemap الزاما Crawl یا Index نخواهند شد.
چه زمانی باید خطای Sitemap status: Couldn’t fetch را جدیتر پیگیری کنیم؟
اگر Sitemap تازه ثبت شده، ابتدا عجله نکنید.
اما اگر وضعیت برای مدت طولانی بدون تغییر باقی مانده یا همزمان نشانههای دیگری از مشکل Crawl مشاهده میکنید، بررسی فنی را جدیتر انجام دهید.
در این شرایط موارد زیر را بررسی کنید:
- URL دقیق Sitemap
- وضعیت HTTP و خطاهای سرور
- robots.txt
- دسترسی Googlebot
- Firewall و WAF
- CDN و تنظیمات امنیتی
- Redirectهای Sitemap
- ساختار XML
- Sitemapهای فرزند در صورت استفاده از Sitemap Index
- وضعیت کلی Crawl سایت
همچنین اگر گوگل واقعا Sitemap را دریافت کند و هنگام پردازش با مشکل مشخصی مواجه شود، معمولا اطلاعات دقیقتری درباره نوع خطا ارائه میکند.
جمعبندی
خطای Sitemap status: Couldn’t fetch را نباید همیشه به معنی خراب بودن Sitemap در نظر گرفت.
اگر Sitemap را بهتازگی در Google Search Console ثبت کردهاید، ممکن است این وضعیت صرفا به این دلیل باشد که گوگل هنوز آن را Fetch و پردازش نکرده است. در این حالت، بهتر است Sitemap را بررسی کنید و اگر از نظر فنی مشکلی ندارد، کمی زمان بدهید.
اما اگر مشکل ادامه پیدا کرد، ابتدا آدرس Sitemap، کد HTTP، robots.txt، دسترسی Googlebot، وضعیت سرور و ساختار XML را بررسی کنید.
مهمترین نکته این است که بین «گوگل هنوز Sitemap را پردازش نکرده» و «گوگل تلاش کرده Sitemap را دریافت کند اما واقعا با خطای فنی مواجه شده» تفاوت قائل شوید؛ چون پیام Couldn’t fetch بهتنهایی همیشه برای تشخیص مشکل فنی کافی نیست. حتما وبسایت ایده پرداز را دنبال کنید تا از اینجور مقالات را بیشتر مطالعه کنید.
