کدهای وضعیت سرور و کلاینت
کدهای وضعیت یا استاتوس کدها پیامهایی هستند که سرور یا هاست به عنوان پاسخ به درخواستهای مرورگر (کلاینت) ارسال میکند. این کدها به صورت عددی و در قالب گروههایی طبقهبندی میشوند و هر کد معنی خاصی دارد. هدف این کدها این است که وضعیت درخواست و پاسخی که سرور به مرورگر میدهد را مشخص کنند. در ادامه به بررسی گروههای مختلف این کدها و توضیحات آنها در پانی دیزاین میپردازیم.
۱. کدهای ۱۰۰ (اطلاعاتی – Informational)
این دسته از کدها به درخواستهایی اشاره دارند که هنوز کامل نشدهاند و باید منتظر اطلاعات بیشتری باشیم.
- ۱۰۰ Continue: سرور تأیید کرده که بخشی از درخواست را دریافت کرده و مرورگر میتواند ادامه دهد.
- ۱۰۱ Switching Protocols: مرورگر درخواست تغییر پروتکل داده و سرور این تغییر را پذیرفته است.
۲. کدهای ۲۰۰ (موفقیتآمیز – Success)
این گروه نشان میدهد که درخواست به درستی انجام شده و سرور توانسته پاسخ مناسبی ارسال کند.
- ۲۰۰ OK: درخواست کلاینت موفق بوده و سرور پاسخ مناسبی ارسال کرده است.
- ۲۰۱ Created: درخواست با موفقیت انجام شده و یک منبع جدید در سرور ایجاد شده است.
- ۲۰۴ No Content: درخواست با موفقیت انجام شده اما نیازی به ارسال محتوای جدید نیست؛ مثلاً وقتی دادهای بهروزرسانی شده باشد.
۳. کدهای ۳۰۰ (ریدایرکت – Redirection)
این دسته مربوط به مواقعی است که منبع درخواستشده به آدرس یا URL دیگری منتقل شده است و مرورگر باید به آن آدرس مراجعه کند.
- ۳۰۱ Moved Permanently: منبع دائماً به آدرس جدیدی منتقل شده و این تغییر باید همواره لحاظ شود.
- ۳۰۲ Found: منبع موقتاً به آدرس جدیدی منتقل شده و ممکن است بعداً به آدرس اصلی بازگردد.
- ۳۰۴ Not Modified: منبع درخواستشده تغییر نکرده و مرورگر میتواند از نسخه کش شده (ذخیره شده) استفاده کند.
۴. کدهای ۴۰۰ (خطای کلاینت – Client Errors)
این کدها به معنای وجود خطا در درخواستهای مرورگر هستند، به طوری که سرور قادر به پردازش آنها نیست.
- ۴۰۰ Bad Request: درخواست ناقص یا نادرست است و سرور نمیتواند آن را پردازش کند.
- ۴۰۱ Unauthorized: درخواست به دلیل عدم احراز هویت رد شده و کاربر باید لاگین کند.
- ۴۰۳ Forbidden: کاربر اجازه دسترسی به منبع را ندارد.
- ۴۰۴ Not Found: منبع درخواستی در سرور یافت نشده است؛ یکی از رایجترین خطاها.
- ۴۰۵ Method Not Allowed: روش درخواست (مانند GET یا POST) برای این منبع مجاز نیست.
۵. کدهای ۵۰۰ (خطای سرور – Server Errors)
این کدها نشاندهنده وجود مشکلی در سمت سرور هستند که مانع از پردازش صحیح درخواست شده است.
- ۵۰۰ Internal Server Error: خطای عمومی در سرور رخ داده که درخواست را نمیتواند انجام دهد.
- ۵۰۲ Bad Gateway: سرور به عنوان پروکسی عمل کرده و پاسخی از سرور دیگر دریافت نکرده یا پاسخ نادرستی دریافت کرده است.
- ۵۰۳ Service Unavailable: سرور به دلایلی مانند بار زیاد یا تعمیرات موقتاً قادر به پاسخدهی نیست.
- ۵۰۴ Gateway Timeout: سرور گیتوی در زمان مناسب پاسخی از سرور دیگر دریافت نکرده است.
توضیح بیشتر درباره کدهای رایج
- ۴۰۴ Not Found: یکی از شناختهشدهترین کدهای وضعیت است که نشان میدهد صفحه یا فایلی که کاربر به دنبال آن بوده، در سرور یافت نشده است. این خطا معمولاً در مواقعی که لینک شکستهای وجود داشته باشد یا صفحه حذف شده باشد رخ میدهد.
- ۳۰۱ Moved Permanently: این کد اهمیت زیادی در سئو دارد. وقتی یک صفحه به طور دائمی به آدرس جدیدی منتقل میشود، از این کد استفاده میکنیم تا مطمئن شویم موتورهای جستجو صفحه جدید را ایندکس کنند و تمام قدرت سئوی صفحه قبلی به آدرس جدید منتقل شود.
- ۵۰۰ Internal Server Error: یک خطای عمومی است که معمولاً نشاندهنده مشکلی در سمت سرور است که میتواند به دلایل مختلفی مانند مشکلات پایگاه داده، اسکریپتها یا تنظیمات سرور ایجاد شود.
درباره ارور this site cant be reached هم بخوانید
اصطلاحات کدهای وضعیت HTTP
- ۱۰۲ Processing: سرور در حال پردازش درخواست است و هنوز پاسخ نهایی نداده است.
- ۲۰۲ Accepted: درخواست پذیرفته شده اما هنوز پردازش نشده است.
- ۲۰۳ Non-Authoritative Information: اطلاعات موجود در پاسخ ممکن است از منبع دیگری باشد.
- ۲۰۵ Reset Content: درخواست موفقیتآمیز بود و کلاینت باید صفحه نمایش خود را ریست کند.
- ۲۰۶ Partial Content: بخشی از محتوای درخواستشده ارسال شده است.
- ۳۰۰ Multiple Choices: چندین گزینه در دسترس است و کاربر باید یکی را انتخاب کند.
- ۳۰۳ See Other: درخواست به آدرس دیگری هدایت میشود و باید از آن آدرس بازدید شود.
- ۳۰۷ Temporary Redirect: درخواست بهطور موقت به آدرس دیگری هدایت شده است.
- ۳۰۸ Permanent Redirect: مانند ۳۰۱، این ریدایرکت دائمی است اما با این تفاوت که از روش درخواست اصلی استفاده میکند.
- ۴۰۲ Payment Required: این کد برای پرداخت لازم است اما معمولاً استفاده نمیشود.
- ۴۰۶ Not Acceptable: سرور قادر به ارائه محتوای درخواستشده با فرمت مناسب نیست.
- ۴۰۷ Proxy Authentication Required: کلاینت باید از طریق پروکسی احراز هویت کند.
- ۴۰۹ Conflict: تضادی در درخواست وجود دارد، مانند درگیری منابع.
- ۴۱۰ Gone: منبع درخواستشده دیگر وجود ندارد و باز نمیگردد.
- ۴۱۱ Length Required: کلاینت باید طول محتوای درخواست را مشخص کند.
- ۴۱۲ Precondition Failed: یکی از شرطهای درخواست نقض شده است.
- ۴۱۳ Payload Too Large: درخواست کلاینت بیش از حد بزرگ است.
- ۴۱۴ URI Too Long: URL درخواستشده بسیار طولانی است.
- ۴۱۵ Unsupported Media Type: فرمت رسانهای ارسالی توسط کلاینت پشتیبانی نمیشود.
- ۴۱۶ Range Not Satisfiable: محدوده درخواستشده از منبع قابل دسترسی نیست.
- ۴۱۷ Expectation Failed: انتظارات کلاینت برآورده نشد.
- ۴۱۸ I’m a teapot: یک کد شوخی که در RFC 2324 معرفی شده و به یک سرور چای اشاره دارد.
- ۴۲۱ Misdirected Request: درخواست به سروری ارسال شده که قادر به پاسخگویی نیست.
- ۴۲۲ Unprocessable Entity: سرور نمیتواند درخواست را پردازش کند.
- ۴۲۶ Upgrade Required: کلاینت باید به پروتکل دیگری ارتقاء پیدا کند.
- ۴۲۸ Precondition Required: درخواست نیاز به تعیین شرایط دارد.
- ۴۲۹ Too Many Requests: کلاینت درخواستهای زیادی در مدت زمان کوتاهی ارسال کرده است.
- ۴۳۱ Request Header Fields Too Large: هدر درخواست بسیار بزرگ است.
- ۴۵۱ Unavailable For Legal Reasons: منبع به دلایل قانونی در دسترس نیست.
- ۵۰۱ Not Implemented: سرور قابلیت انجام درخواست را ندارد.
- ۵۰۵ HTTP Version Not Supported: نسخه HTTP استفادهشده پشتیبانی نمیشود.
- ۵۰۷ Insufficient Storage: سرور فضای کافی برای ذخیره دادههای درخواستشده ندارد.
- ۵۰۸ Loop Detected: سرور یک حلقه بینهایت در درخواست پیدا کرده است.
- ۵۱۰ Not Extended: سرور به اطلاعات بیشتری نیاز دارد تا بتواند درخواست را پردازش کند.
- ۵۱۱ Network Authentication Required: کلاینت باید برای دسترسی به شبکه احراز هویت کند.
اینها دیگر اصطلاحات کدهای وضعیت HTTP هستند که کمتر شناختهشدهاند یا در موارد خاصی استفاده میشوند.
جمعبندی
کدهای وضعیت سرور و کلاینت نقش مهمی در نحوه تعامل سایتها با مرورگرها و همچنین تجربه کاربری و سئو دارند. آشنایی با این کدها به مدیران سایتها و توسعهدهندگان کمک میکند تا بتوانند مشکلات احتمالی سایت را شناسایی کرده و آنها را برطرف کنند، همچنین از وضعیتهای صحیح برای بهبود عملکرد سئوی سایت خود استفاده کنند.