وقتی صفحهای در سایت باز نمیشود، اشتباه ریدایرکت میشود یا در نتایج گوگل افت میکند، یکی از اولین چیزهایی که باید بررسی شود HTTP Status Code است. این کدها نشان میدهند سرور در پاسخ به درخواست مرورگر چه وضعیتی داشته؛ مثلاً صفحه با موفقیت لود شده، پیدا نشده، منتقل شده یا سرور خطا داده است.
شناخت این کدها برای مدیر سایت، سئوکار و توسعهدهنده اهمیت زیادی دارد؛ چون هم در عیبیابی خطاها کمک میکند و هم روی سئو، تجربه کاربر و عملکرد فنی سایت اثر مستقیم دارد.
تفاوت Status Code با خطاهای مرورگر و وردپرس
کدهای وضعیت HTTP پاسخ رسمی سرور هستند؛ مثل ۲۰۰، ۴۰۴ یا ۵۰۰.
اما خطاهای مرورگر مثل ERR_CONNECTION_TIMED_OUT یا DNS_PROBE_FINISHED_NXDOMAIN معمولاً به مشکل اتصال، DNS یا SSL مربوط میشوند.
از طرف دیگر، خطاهای وردپرس مثل خطای اتصال به دیتابیس یا صفحه سفید، بیشتر به مشکلات داخلی سایت، افزونه، قالب یا سرور مربوط هستند.
در نتیجه، برای عیبیابی درست باید اول مشخص شود که مشکل از پاسخ HTTP است، از مرورگر و شبکه است یا از خود وردپرس.
HTTP Status Code چیست؟
HTTP Status Code یا کد وضعیت HTTP، عددی است که سرور در پاسخ به درخواست مرورگر برمیگرداند تا مشخص شود نتیجه آن درخواست چه بوده است. این کدها بخشی از ارتباط بین مرورگر و سرور هستند و به ما میگویند آیا صفحه با موفقیت بارگذاری شده، منتقل شده، پیدا نشده یا با خطا مواجه شده است.
برای مثال، وقتی کاربر وارد یک آدرس در سایت میشود، مرورگر درخواستی به سرور میفرستد. سرور هم علاوه بر محتوای صفحه، یک کد وضعیت ارسال میکند. اگر همهچیز درست باشد معمولاً کد ۲۰۰ برمیگردد، اگر صفحه وجود نداشته باشد ۴۰۴ و اگر سرور دچار مشکل شده باشد ۵۰۰ نمایش داده میشود.
این کدها فقط برای نمایش خطا نیستند، بلکه وضعیت کلی پاسخ را مشخص میکنند. به همین دلیل در عیبیابی فنی، بررسی سئو، مدیریت ریدایرکتها و تحلیل رفتار سایت اهمیت زیادی دارند.
HTTP چگونه کار میکند؟
HTTP پروتکلی است که ارتباط بین مرورگر و سرور را برقرار میکند. مرورگر یک درخواست میفرستد و سرور در پاسخ، هم محتوا و هم یک وضعیت مشخص برمیگرداند. این وضعیت همان چیزی است که با نام Status Code شناخته میشود.
چرا Status Code مهم است؟
چون مشخص میکند سرور دقیقاً چه پاسخی به درخواست کاربر داده است. بدون دانستن این کد، ممکن است فقط ظاهر مشکل را ببینیم، اما دلیل واقعی آن را متوجه نشویم. به همین خاطر، Status Code یکی از پایهایترین ابزارها برای بررسی سلامت صفحات و خطاهای سایت است.
هر خانواده از کدهای وضعیت HTTP چه مفهومی دارد؟
کدهای وضعیت HTTP به ۵ دسته اصلی تقسیم میشوند و هر دسته، نوع مشخصی از پاسخ سرور را نشان میدهد. این دستهبندی کمک میکند خیلی سریع بفهمیم نتیجه یک درخواست چه بوده و مشکل احتمالی از کدام بخش است.
1xx — پاسخهای اطلاعاتی
کدهای خانواده 1xx نشان میدهند که درخواست مرورگر دریافت شده و فرایند پردازش آن در حال ادامه است. این کدها معمولاً در تعاملات فنیتر دیده میشوند و کاربران عادی کمتر با آنها مواجه میشوند.
2xx — پاسخهای موفق
کدهای 2xx یعنی درخواست با موفقیت انجام شده است. به زبان ساده، سرور درخواست را دریافت و پردازش کرده و نتیجه درست بوده است. معروفترین کد این دسته ۲۰۰ OK است که نشان میدهد صفحه یا منبع موردنظر بدون مشکل در دسترس است.
3xx — ریدایرکت
کدهای 3xx نشان میدهند که برای دسترسی به منبع موردنظر باید به آدرس دیگری هدایت شد. این دسته معمولاً در ریدایرکتها استفاده میشود؛ مثلاً وقتی صفحهای به آدرس جدید منتقل شده یا بهصورت موقت از URL دیگری در دسترس است.
4xx — خطاهای سمت کاربر
کدهای 4xx یعنی مشکلی در درخواست کاربر وجود دارد. این مشکل میتواند به دلیل اشتباه بودن آدرس، نداشتن دسترسی، معتبر نبودن درخواست یا حذف شدن صفحه باشد. معروفترین نمونه این دسته ۴۰۴ Not Found است.
5xx — خطاهای سمت سرور
کدهای 5xx نشان میدهند که درخواست کاربر درست به سرور رسیده، اما سرور نتوانسته آن را بهدرستی پردازش کند. این نوع خطاها معمولاً به مشکلات داخلی سایت، سرور، تنظیمات یا سرویسهای وابسته مربوط میشوند. یکی از رایجترین نمونهها ۵۰۰ Internal Server Error است.
جدول کامل HTTP Status Code ها
در جدول زیر، مهمترین کدهای وضعیت HTTP را بهصورت خلاصه و کاربردی میبینی. این جدول برای زمانی مفید است که بخواهی سریع بفهمی هر کد چه معنایی دارد، معمولاً چرا رخ میدهد، چطور باید بررسیاش کنی و چه اثری روی سئو دارد.
| کد | نام | معنی ساده | علت رایج | راهحل پیشنهادی | اهمیت برای سئو |
|---|---|---|---|---|---|
| 200 | OK | درخواست با موفقیت انجام شده | صفحه سالم است و بهدرستی لود میشود | فقط مطمئن شو صفحه محتوای درست و قابل ایندکس دارد | بسیار مهم؛ بهترین وضعیت برای صفحات قابل ایندکس |
| 201 | Created | منبع جدید با موفقیت ساخته شده | بیشتر در فرمها، API یا ثبت اطلاعات جدید دیده میشود | اگر در API استفاده میشود، پاسخ را بررسی و تست کن | معمولاً اثر مستقیم سئویی ندارد |
| 204 | No Content | درخواست موفق بوده ولی محتوایی برنگشته | عملیات انجام شده اما خروجی صفحهای ندارد | فقط در سناریوهای درست از آن استفاده شود | برای صفحات قابل ایندکس مناسب نیست |
| 301 | Moved Permanently | انتقال دائمی به آدرس جدید | تغییر URL، تغییر ساختار سایت، تغییر دامنه | ریدایرکت را مستقیم و بدون زنجیره تنظیم کن | بسیار مهم؛ برای انتقال اعتبار صفحه استفاده میشود |
| 302 | Found | انتقال موقت به آدرس دیگر | جابهجایی موقت صفحه یا تست موقت | اگر انتقال دائمی است، بهجای آن ۳۰۱ بگذار | در استفاده اشتباه میتواند برای سئو مشکلساز شود |
| 304 | Not Modified | فایل تغییری نکرده و از کش استفاده میشود | کش مرورگر یا سرور فعال است | معمولاً نیاز به اقدام ندارد، فقط تنظیمات کش را درست نگه دار | برای سرعت و بهینهسازی مفید است |
| 307 | Temporary Redirect | ریدایرکت موقت با حفظ روش درخواست | ریدایرکت موقت در شرایط فنی خاص | فقط وقتی واقعاً موقت است از آن استفاده کن | شبیه ۳۰۲ است و معمولاً برای سئو موقتی تلقی میشود |
| 308 | Permanent Redirect | ریدایرکت دائمی با حفظ روش درخواست | جایگزین دقیقتر برای ریدایرکت دائمی | در صورت نیاز به حفظ متد درخواست استفاده شود | مشابه ۳۰۱ و برای انتقال دائمی مناسب است |
| 400 | Bad Request | درخواست نامعتبر یا خراب است | URL نادرست، پارامتر خراب، درخواست اشتباه | آدرس، فرم، پارامترها و تنظیمات درخواست را بررسی کن | اگر زیاد رخ دهد، تجربه کاربر را ضعیف میکند |
| 401 | Unauthorized | نیاز به احراز هویت وجود دارد | ورود انجام نشده یا اعتبارنامه اشتباه است | سیستم لاگین، دسترسی و احراز هویت را بررسی کن | معمولاً صفحات عمومی نباید این وضعیت داشته باشند |
| 403 | Forbidden | دسترسی به منبع ممنوع است | محدودیت دسترسی، تنظیمات امنیتی، مجوز فایل | سطح دسترسی فایلها، افزونه امنیتی و تنظیمات سرور را چک کن | اگر اشتباهی روی صفحات مهم باشد، به سئو آسیب میزند |
| 404 | Not Found | صفحه پیدا نشد | حذف صفحه، لینک اشتباه، URL نادرست | وجود صفحه، لینکها و ریدایرکتها را بررسی کن | مهم؛ ۴۰۴ زیاد میتواند به تجربه کاربر و خزش آسیب بزند |
| 405 | Method Not Allowed | روش درخواست مجاز نیست | مثلاً ارسال POST به آدرسی که فقط GET را میپذیرد | تنظیمات فرم، API یا سرور را اصلاح کن | اثر مستقیم کمی دارد، بیشتر فنی است |
| 408 | Request Timeout | زمان درخواست تمام شده | کندی اتصال، تأخیر زیاد کاربر یا سرور | وضعیت سرور، شبکه و زمان پاسخ را بررسی کن | اگر زیاد رخ دهد، تجربه کاربر و خزش را مختل میکند |
| 410 | Gone | منبع برای همیشه حذف شده | صفحه عمداً و دائماً حذف شده | اگر حذف دائمی است، ۴۱۰ مناسب است؛ وگرنه ۳۰۱ یا ۴۰۴ را بررسی کن | برای اعلام حذف قطعی به موتور جستوجو مفید است |
| 429 | Too Many Requests | تعداد درخواستها بیش از حد مجاز بوده | محدودیت نرخ، حمله رباتی، درخواست زیاد API | rate limit، کش، CDN یا کاهش درخواستها را بررسی کن | اگر گوگلبات یا کاربران زیاد با آن روبهرو شوند، مشکلساز میشود |
| 500 | Internal Server Error | خطای داخلی سرور | مشکل در کد، افزونه، قالب، htaccess یا تنظیمات سرور | لاگ خطا، افزونهها، قالب و فایلهای سرور را بررسی کن | بسیار مهم؛ میتواند خزش و ایندکس را مختل کند |
| 502 | Bad Gateway | پاسخ نامعتبر از سرور بالادستی | مشکل بین سرورها، پروکسی، CDN یا وبسرور | وضعیت سرور مبدا، پراکسی و CDN را بررسی کن | برای سئو منفی است اگر تکرار شود |
| 503 | Service Unavailable | سرویس موقتاً در دسترس نیست | فشار زیاد روی سرور، تعمیرات، اختلال موقت | منابع سرور را بررسی کن و در زمان تعمیرات از ۵۰۳ درست استفاده کن | برای توقف موقت مناسب است، اما تداوم آن آسیبزننده است |
| 504 | Gateway Timeout | سرور بالادستی بهموقع پاسخ نداده | کندی شدید پردازش، اختلال شبکه یا سرور | زمان پاسخ، سرور مبدا، دیتابیس و سرویسهای وابسته را بررسی کن | برای سئو و تجربه کاربر منفی است اگر تکرار شود |
در عمل، مهمترین کدهایی که بیشتر با آنها سروکار داری اینها هستند:
۲۰۰ برای صفحات سالم، ۳۰۱ برای انتقال دائمی، ۳۰۲ برای انتقال موقت، ۴۰۴ برای صفحات پیدانشده، ۴۱۰ برای حذف دائمی و ۵۰۰ تا ۵۰۴ برای خطاهای سمت سرور.
مهمترین HTTP Status Code ها
در این بخش، مهمترین کدهای وضعیت HTTP را جداگانه بررسی میکنیم؛ کدهایی که هم در مدیریت سایت و عیبیابی فنی پرکاربرد هستند و هم از نظر سئو اهمیت زیادی دارند.
200 OK
کد ۲۰۰ OK یعنی درخواست با موفقیت انجام شده و سرور توانسته پاسخ درست را به کاربر یا مرورگر برگرداند. این کد، رایجترین و استانداردترین پاسخ برای صفحاتی است که بدون مشکل در دسترس هستند.
چه زمانی رخ میدهد
وقتی کاربر وارد یک صفحه سالم از سایت میشود و سرور بدون خطا محتوای آن را نمایش میدهد، معمولاً پاسخ ۲۰۰ برمیگردد. این وضعیت برای صفحات عادی سایت، مقالات، دستهبندیها، صفحات محصول و بسیاری از فایلها طبیعی است.
مثال واقعی
کاربر وارد صفحه اصلی سایت یا یک مقاله وبلاگ میشود و صفحه بهدرستی باز میشود. در این حالت، سرور پاسخ ۲۰۰ میدهد؛ یعنی همهچیز درست بوده و محتوا با موفقیت تحویل داده شده است.
اثر روی سئو
کد ۲۰۰ بهترین وضعیت برای صفحات قابل ایندکس است. گوگل و سایر موتورهای جستوجو انتظار دارند صفحاتی که باید در نتایج ظاهر شوند، پاسخ ۲۰۰ داشته باشند. البته فقط داشتن ۲۰۰ کافی نیست؛ صفحه باید واقعاً محتوای مفید و درست داشته باشد. اگر صفحهای عملاً بیارزش یا حذفشده باشد اما همچنان ۲۰۰ برگرداند، ممکن است مشکل soft ۴۰۴ ایجاد شود.
روش رفع
اگر صفحهای که باید سالم باشد پاسخ دیگری غیر از ۲۰۰ میدهد، باید بررسی شود که مشکل از ریدایرکت، تنظیمات سرور، افزونهها، کش یا ساختار URL نیست. اگر هم صفحه ۲۰۰ برمیگرداند اما محتوای اشتباه دارد، باید از نظر فنی و محتوایی اصلاح شود.
301 Moved Permanently
کد ۳۰۱ Moved Permanently یعنی آدرس صفحه بهصورت دائمی به URL جدید منتقل شده است. این کد به مرورگر و موتور جستوجو میگوید که از این به بعد باید آدرس جدید را بهعنوان مقصد اصلی در نظر بگیرند.
چه زمانی رخ میدهد
وقتی URL یک صفحه برای همیشه تغییر میکند، دامنه سایت عوض میشود، ساختار لینکها تغییر میکند یا نسخههای تکراری به نسخه اصلی هدایت میشوند، معمولاً از ۳۰۱ استفاده میشود.
مثال واقعی
فرض کن آدرس یک مقاله از
site.com/old-page
به
site.com/new-page
تغییر کرده است. اگر این انتقال دائمی باشد، باید آدرس قبلی با ۳۰۱ به آدرس جدید ریدایرکت شود.
اثر روی سئو
۳۰۱ یکی از مهمترین کدها برای سئو است، چون به انتقال اعتبار صفحه قدیمی به صفحه جدید کمک میکند. استفاده درست از آن باعث میشود کاربر و موتور جستوجو هر دو به مقصد درست هدایت شوند. استفاده نادرست، زنجیره ریدایرکت یا ریدایرکت به صفحات نامرتبط میتواند به سئو آسیب بزند.
روش رفع
اگر انتقال دائمی است، ریدایرکت ۳۰۱ را مستقیم و بدون واسطه تنظیم کن. از زنجیرههای طولانی یا چندمرحلهای پرهیز کن. همچنین بررسی کن که مقصد نهایی مرتبط، قابل دسترس و دارای پاسخ ۲۰۰ باشد.
302 Found
کد ۳۰۲ Found یعنی صفحه بهصورت موقت به آدرس دیگری منتقل شده است. برخلاف ۳۰۱، این کد به موتورهای جستوجو میگوید که انتقال دائمی نیست و ممکن است آدرس اصلی دوباره استفاده شود.
چه زمانی رخ میدهد
وقتی میخواهی بهصورت موقت کاربر را به صفحه دیگری هدایت کنی، مثلاً در کمپینهای کوتاهمدت، تستهای موقت یا زمانی که یک صفحه برای مدت محدود از دسترس خارج شده، از ۳۰۲ استفاده میشود.
مثال واقعی
فرض کن یک صفحه فروش ویژه فقط برای چند روز فعال است و کاربران موقتاً از صفحه اصلی دستهبندی به آن هدایت میشوند. در این حالت، ۳۰۲ میتواند انتخاب مناسبی باشد؛ چون این انتقال دائمی نیست.
اثر روی سئو
۳۰۲ برای انتقال موقت مناسب است، اما اگر بهاشتباه بهجای ۳۰۱ برای انتقال دائمی استفاده شود، ممکن است باعث شود موتورهای جستوجو آدرس قدیمی را همچنان اصلی در نظر بگیرند. این موضوع میتواند روی ایندکس و انتقال اعتبار صفحه اثر بگذارد.
روش رفع
اگر انتقال واقعاً موقتی است، ۳۰۲ مناسب است. اما اگر قرار است URL برای همیشه تغییر کند، باید آن را به ۳۰۱ تبدیل کرد. بهتر است همه ریدایرکتها از نظر هدف و مدتزمان استفاده بازبینی شوند.
304 Not Modified
کد ۳۰۴ Not Modified یعنی منبع موردنظر از آخرین باری که مرورگر آن را ذخیره کرده تغییری نکرده و نیازی به دانلود دوباره آن نیست. این کد معمولاً در ارتباط با کش استفاده میشود.
چه زمانی رخ میدهد
وقتی مرورگر نسخهای از فایل یا صفحه را در کش دارد و از سرور میپرسد آیا نسخه جدیدی وجود دارد یا نه، اگر تغییری ایجاد نشده باشد، سرور ۳۰۴ برمیگرداند.
مثال واقعی
کاربر دوباره وارد سایتی میشود که قبلاً فایلهای CSS یا تصاویر آن را دریافت کرده است. اگر آن فایلها تغییری نکرده باشند، سرور میتواند ۳۰۴ برگرداند تا مرورگر از نسخه کششده استفاده کند.
اثر روی سئو
۳۰۴ بهخودیخود مشکل سئویی نیست و حتی میتواند به بهبود سرعت بارگذاری و کاهش مصرف منابع کمک کند. از نظر فنی، استفاده درست از کش میتواند تجربه کاربر را بهتر کند، اما تنظیمات اشتباه کش ممکن است باعث نمایش نسخه قدیمی محتوا شود.
روش رفع
در بیشتر مواقع، ۳۰۴ نیاز به رفع ندارد. فقط باید مطمئن شوی کش مرورگر، سرور یا CDN درست تنظیم شده و محتوای مهم سایت در زمان لازم بهروزرسانی میشود.
403 Forbidden
کد ۴۰۳ Forbidden یعنی سرور درخواست را فهمیده، اما اجازه دسترسی به منبع موردنظر را نمیدهد. یعنی مشکل از نبود صفحه نیست، بلکه از محدود بودن دسترسی است.
چه زمانی رخ میدهد
این خطا معمولاً زمانی دیده میشود که سطح دسترسی فایلها یا پوشهها اشتباه باشد، قوانین امنیتی دسترسی را بسته باشند، IP مسدود شده باشد یا تنظیمات سرور مانع نمایش صفحه شوند.
مثال واقعی
کاربر وارد صفحهای میشود که روی سرور وجود دارد، اما به دلیل تنظیمات امنیتی یا مجوزهای فایل، اجازه باز کردن آن را ندارد. در این حالت بهجای ۴۰۴، پاسخ ۴۰۳ نمایش داده میشود.
اثر روی سئو
اگر صفحات مهم و عمومی سایت بهاشتباه ۴۰۳ بدهند، گوگل و کاربران نمیتوانند به آنها دسترسی داشته باشند و این موضوع مستقیماً به سئو آسیب میزند. اما برای بخشهای خصوصی یا محدودشده، ۴۰۳ میتواند طبیعی باشد.
روش رفع
سطح دسترسی فایلها و پوشهها را بررسی کن، تنظیمات افزونههای امنیتی و فایروال را چک کن و فایلهایی مثل .htaccess یا تنظیمات سرور را بازبینی کن. اگر صفحه باید عمومی باشد، دسترسی آن باید اصلاح شود.
404 Not Found
کد ۴۰۴ Not Found یعنی سرور نتوانسته صفحه یا منبع موردنظر را پیدا کند. این یکی از رایجترین خطاهای وب است و معمولاً زمانی رخ میدهد که URL نادرست باشد یا صفحه حذف شده باشد.
چه زمانی رخ میدهد
وقتی صفحهای حذف شده، لینک اشتباه وارد شده، ساختار URL تغییر کرده یا ریدایرکت مناسب تنظیم نشده، معمولاً ۴۰۴ دیده میشود.
مثال واقعی
کاربری روی لینکی قدیمی از یک محصول حذفشده کلیک میکند، اما چون صفحه دیگر وجود ندارد و ریدایرکتی هم تعریف نشده، با خطای ۴۰۴ روبهرو میشود.
اثر روی سئو
وجود تعداد محدودی ۴۰۴ در سایت طبیعی است، اما اگر تعداد آنها زیاد شود یا برای صفحات مهم رخ دهد، هم تجربه کاربر را خراب میکند و هم میتواند بر خزش و کارایی سایت در موتورهای جستوجو اثر منفی بگذارد. مخصوصاً اگر صفحات ارزشمند بدون ریدایرکت مناسب حذف شده باشند.
روش رفع
اول بررسی کن آیا صفحه باید وجود داشته باشد یا نه. اگر باید وجود داشته باشد، URL یا ساختار لینک را اصلاح کن. اگر صفحه به آدرس جدید منتقل شده، ۳۰۱ بگذار. اگر عمداً حذف شده، ببین ۴۰۴ مناسبتر است یا ۴۱۰. همچنین لینکهای داخلی شکسته را اصلاح کن.
410 Gone
کد ۴۱۰ Gone یعنی منبع موردنظر قبلاً وجود داشته، اما اکنون بهصورت دائمی حذف شده و قرار نیست برگردد. این کد از ۴۰۴ صریحتر است.
چه زمانی رخ میدهد
وقتی مطمئن هستی یک صفحه یا منبع برای همیشه حذف شده و دیگر جایگزینی هم ندارد، میتوانی بهجای ۴۰۴ از ۴۱۰ استفاده کنی.
مثال واقعی
فرض کن یک صفحه محصول برای همیشه از فروش خارج شده و قرار نیست مشابه یا جایگزینی برای آن وجود داشته باشد. در چنین حالتی، ۴۱۰ میتواند وضعیت واضحتری نسبت به ۴۰۴ ایجاد کند.
اثر روی سئو
۴۱۰ به موتورهای جستوجو پیام واضحتری میدهد که صفحه عمداً و دائماً حذف شده است. در بعضی سناریوها این موضوع میتواند باعث شود موتور جستوجو سریعتر آن URL را از ایندکس خارج کند.
روش رفع
فقط زمانی از ۴۱۰ استفاده کن که حذف دائمی قطعی باشد. اگر صفحه جایگزین مرتبط دارد، ۳۰۱ گزینه بهتری است. اگر هم وضعیت حذف دائمی مشخص نیست، ۴۰۴ معمولاً انتخاب محافظهکارانهتری است.
429 Too Many Requests
کد ۴۲۹ Too Many Requests یعنی تعداد درخواستهایی که در یک بازه زمانی به سرور ارسال شده، بیش از حد مجاز بوده است. این کد معمولاً برای محدودسازی درخواستها استفاده میشود.
چه زمانی رخ میدهد
وقتی کاربر، ربات، اسکریپت یا حتی یک سرویس خارجی در مدت کوتاه تعداد زیادی درخواست بفرستد، سرور یا CDN ممکن است برای جلوگیری از فشار یا سوءاستفاده، پاسخ ۴۲۹ بدهد.
مثال واقعی
یک ربات بهسرعت صدها درخواست به یک صفحه یا API میفرستد. برای جلوگیری از فشار روی سرور، سیستم محدودیت نرخ فعال میشود و ۴۲۹ برمیگرداند.
اثر روی سئو
اگر این خطا بیشازحد رخ دهد و موتورهای جستوجو هم با آن مواجه شوند، میتواند روی خزش سایت اثر منفی بگذارد. برای کاربران هم تجربه بدی ایجاد میکند، مخصوصاً اگر محدودیتها بیشازحد سختگیرانه باشند.
روش رفع
تنظیمات rate limit را بررسی کن، کش و CDN را درست پیکربندی کن، از فشار رباتها یا درخواستهای غیرعادی جلوگیری کن و در صورت نیاز منابع سرور را افزایش بده. اگر خطا برای کاربران عادی رخ میدهد، محدودیتها باید منطقیتر تنظیم شوند.
500 Internal Server Error
کد ۵۰۰ Internal Server Error یعنی سرور با یک خطای داخلی مواجه شده و نتوانسته درخواست را کامل پردازش کند. این کد کلی است و معمولاً نشان میدهد مشکلی در سمت سرور وجود دارد.
چه زمانی رخ میدهد
زمانی که خطای برنامهنویسی، ناسازگاری افزونه، مشکل فایلهای سیستمی، خرابی تنظیمات یا اختلال در سرور وجود داشته باشد، ممکن است ۵۰۰ نمایش داده شود.
مثال واقعی
بعد از نصب یک افزونه ناسازگار در وردپرس، سایت بهجای نمایش صفحه، خطای ۵۰۰ میدهد. این یعنی سرور در اجرای درخواست دچار مشکل داخلی شده است.
اثر روی سئو
۵۰۰ یکی از بدترین وضعیتها برای سئو و تجربه کاربر است. اگر این خطا تکرار شود، هم کاربران سایت را ترک میکنند و هم موتورهای جستوجو در دسترسی و خزش صفحات با مشکل روبهرو میشوند.
روش رفع
لاگ خطاهای سرور را بررسی کن، افزونهها و قالب را تست کن، فایل .htaccess را چک کن، محدودیت حافظه PHP را بررسی کن و تغییرات اخیر سایت را بازبینی کن. در وردپرس، غیرفعال کردن افزونههای مشکوک و فعال کردن حالت دیباگ میتواند مفید باشد.
502 Bad Gateway
کد ۵۰۲ Bad Gateway یعنی سروری که نقش واسطه یا درگاه را دارد، پاسخ معتبر و قابل قبولی از سرور اصلی دریافت نکرده است.
چه زمانی رخ میدهد
این خطا معمولاً در ساختارهایی دیده میشود که بین کاربر و سرور اصلی، یک لایه واسطه مثل CDN، پراکسی یا load balancer وجود دارد. اگر ارتباط بین این لایهها مشکل داشته باشد، ۵۰۲ رخ میدهد.
مثال واقعی
سایت پشت Cloudflare قرار دارد، اما سرور اصلی پاسخ ناقص یا نامعتبر میدهد. در نتیجه کاربر با خطای ۵۰۲ مواجه میشود.
اثر روی سئو
اگر ۵۰۲ زیاد تکرار شود، دسترسی خزندههای موتور جستوجو به صفحات کاهش پیدا میکند و این موضوع میتواند بر ایندکس و پایداری سایت اثر منفی بگذارد.
روش رفع
سرور اصلی، پراکسی، CDN و سرویسهای واسطه را بررسی کن. وضعیت وبسرور، اپلیکیشن، فایروال و منابع سرور را چک کن. در بسیاری از موارد، مشکل از ارتباط بین دو سرور است نه از مرورگر کاربر.
503 Service Unavailable
کد ۵۰۳ Service Unavailable یعنی سرور موقتاً قادر به پاسخگویی نیست، اما این وضعیت دائمی نیست و احتمالاً بعداً برطرف میشود.
چه زمانی رخ میدهد
زمانی که سرور در حال تعمیر است، فشار زیادی را تحمل میکند، منابع کافی ندارد یا سرویس بهطور موقت از دسترس خارج شده، ممکن است ۵۰۳ نمایش داده شود.
مثال واقعی
سایت در حال بهروزرسانی یا تعمیرات است و مدیر سایت نمیخواهد در این مدت پاسخ ۲۰۰ یا خطای نامشخص نمایش داده شود. در این شرایط، ۵۰۳ پاسخ مناسبی است.
اثر روی سئو
۵۰۳ برای قطعی یا تعمیرات موقت، کد مناسبی است و به موتورهای جستوجو میگوید که مشکل موقتی است. اما اگر این وضعیت طولانی شود، میتواند روی خزش، ایندکس و اعتماد موتور جستوجو به پایداری سایت اثر منفی بگذارد.
روش رفع
اگر سایت عمداً در حالت تعمیر است، ۵۰۳ انتخاب درستی است. اگر ناخواسته رخ داده، باید منابع سرور، مصرف CPU و RAM، افزونهها، دیتابیس و ترافیک ورودی بررسی شود. هدف این است که علت موقت شناسایی و سریع برطرف شود.
504 Gateway Timeout
کد ۵۰۴ Gateway Timeout یعنی یک سرور واسطه بهموقع از سرور بالادستی پاسخ نگرفته و زمان انتظار به پایان رسیده است.
چه زمانی رخ میدهد
وقتی سرور اصلی خیلی کند پاسخ میدهد، پردازش بیشازحد طول میکشد یا ارتباط بین سرورها دچار اختلال میشود، سرور واسطه ممکن است ۵۰۴ برگرداند.
مثال واقعی
یک درخواست به سایتی ارسال میشود، اما به دلیل کندی شدید دیتابیس یا اپلیکیشن، سرور اصلی در زمان مناسب پاسخ نمیدهد و CDN یا reverse proxy خطای ۵۰۴ نشان میدهد.
اثر روی سئو
۵۰۴ هم برای کاربر و هم برای موتور جستوجو خطای منفی محسوب میشود. اگر تکرار شود، میتواند باعث کاهش کیفیت خزش و تجربه کاربر شود، مخصوصاً در صفحات مهم سایت.
روش رفع
زمان پاسخ سرور، عملکرد دیتابیس، سرویسهای وابسته و تنظیمات timeout را بررسی کن. در بسیاری از موارد، بهینهسازی کوئریها، کاهش بار سرور، اصلاح کدهای سنگین یا تقویت منابع هاست میتواند مشکل را حل کند.
