خطوط وضعیت پروتکل HTTP چه هستند؟ ما در این مقاله یک فهرست کاملی از خطوط وضعیت HTTPیا همان HTTPstatus درج کردهایم و مهمترین این کدها را به مرور زمان در سایت سئوراز تشریح خواهیم کرد. توجه داشته باشید که این کدها میتواند در سئو ، تجربه کاربری و همینطور فروش تاثیر ویژهای داشته باشد.
نکته: کد وضعیت HTTP یا HTTP status code و یا کد وضعیت اچ تی تی پی، یک اصطلاح هستند و همینطور خط وضعیت HTTP یا HTTP status line و یا خط وضعیت اچ تی تی پی، یک معنی دارند.
خط وضعیت HTTP، اصطلاحی است که به کد وضعیت HTTP زمانی که با عبارت HTTP همراه شده است، اطلاق میشود، ما کدهای وضعیت HTTP مختلفی را تعریف کردهایم که مهمترین آنها کدهای وضعیت ۴XX و کدهای وضعیت ۵XX هستند.
البته اگرچه از فنی نادرست است اما خطوط وضعیت HTTP در بیشتر اوقات تحت عنوان کدهای وضعیت HTTP مورد اشاره قرار میگیرند.
- ۱ دستهبندی کد وضعیت HTTP
- ۲ خطوط وضعیت HTTP (کدهای وضعیت HTTP + معنای آن)
- ۲٫۱ فرق بین ۳۰۲ با ۳۰۷
- ۲٫۲ فرق بین ۳۰۱ و ۳۰۸
- ۳ خطوط وضعیت HTTP غیر رسمی
دستهبندی کد وضعیت HTTP
همان گونه که در پایین مشاهده میکنید، کدهای وضعیت HTTP، اعداد صحیح سه رقمی هستند؛ رقم نخست آنها برای شناسایی یا تعریف کد مورد نظر در یک دستهبندی خاص استفاده میشود که یکی از پنج حالت زیر است:
- ۱XX: اطلاعات – به این معنی که درخواست، پذیرفته شده است یا فرایند همچنان ادامه دارد.
- ۲XX: تایید میکند که عمل با موفقیت انجام شد و یا با موفقیت دریافت شد. همانند کد ۲۰۰
- ۳XX: راهنمایی مجدد یا هدایت لازم دارد – برای تکمیل درخواست خود، به چیز دیگری نیاز دارد. همانند ریدایرکت ۳۰۱
- ۴XX: خطای سرویسگیرنده (سمت کاربر) که نشان میدهد درخواست قابلیت تکمیل ندارد یا اینکه کاربر چیزی را نادرست وارد میکند.
- ۵XX: خطای سرویسدهنده (سمت سرور) که حاکی از ناتوانی سرور در تکمیل یا انجام درخواستی است که ظاهراَ معتبر بوده است.
درک این کدها در برنامه ای که ما استفاده میکنیم بسیار مهم است مثلا اگر برنامه ما یک سایت هست و از CMS مثل وردپرس استفاده میکنیم مهم است که این سیستم بتواند خطاها را درست تشخیص دهد تا بتوان براساس نوع کد به بررسی سایت و یا حل مشکلات پرداخت. اصولا به موارد بالا کد وضعیت یا خط وضعیت گویند ولی گاهی مثلا با اسمهای خطای ۴۰۴ شناخته میشود و به همین دلیل ما هم در دسته عیب یابی خطاها نیز این مقاله را قرار دادهایم.
اگر نرمافزار (برنامه مورد استفاده در سایت شما) در مورد کدی خاص، اطلاع ندارد، دستکم میتواند رده آن را شناسایی کند. به عنوان نمونه اگر کد وضعیت ۴۰۴ برای برنامهی کاربردی نامشخص است، میتواند با این کد همانند کد ۴۰۰ رفتار کند چرا که کد ۴۰۴ با کد ۴۰۰ در یک دستهبندی (رده) قرار میگیرد، بنابراین میتوانیم این گونه فرض کنیم که (کد ۴۰۴) به این معنا است که اشتباه یا خطایی رخ داده است که منشا آن به سرویسگیرنده (سمت کاربر) برمیگردد.
خطوط وضعیت HTTP (کدهای وضعیت HTTP + معنای آن)
کد وضعیت | معنای آن در فارسی به همراه اطلاحات انگلیسی آن |
۱۰۰ | ادامه – Continue |
۱۰۱ | پروتکل انتقال – Switching Protocols |
۱۰۲ | پردازش – Processing |
۲۰۰ | حله یا بسیار خوب – OK |
۲۰۱ | ایجاد شده است – Created |
۲۰۲ | پذیرفته شده است – Accepted |
۲۰۳ | اطلاعات غیرمجاز – Non-Authoritative Information |
۲۰۴ | بدون محتوا – No Content |
۲۰۵ | تنظیم مجدد محتوا – Reset Content |
۲۰۶ | محتوای ناقص (جزئی) – Partial Content |
۲۰۷ | چند وضعیتی – Multi-Status |
۳۰۰ | چند گزینهای – Multiple Choices |
۳۰۱ | انتقال دائم (معروف به ریدایرکت ۳۰۱) – Moved Permanently |
۳۰۲ | تغییر مسیر موقت – Found |
۳۰۳ | دیگری را ببینید – See Other |
۳۰۴ | اصلاح نشده – Not Modified |
۳۰۵ | استفاده از پراکسی – Use Proxy |
۳۰۷ | تغییر مسیر موقت (ریدایرکت موقت) – Tiporary Redirect |
۳۰۸ | تغییر مسیر دائم – Permanent Redirect |
۴۰۰ | درخواست بد – Bad Request |
۴۰۱ | غیرمجاز – Unauthorized |
۴۰۲ | پرداخت الزامی است – Payment Required |
۴۰۳ | ممنوع – Forbidden |
۴۰۴ | یافت نشد – Not Found |
۴۰۵ | روش غیرمجاز – Method Not Allowed |
۴۰۶ | غیرقابل پذیرش – Not Acceptable |
۴۰۷ | تایید پراکسی الزامی است – Proxy Authentication Required |
۴۰۸ | مهلت زمانی درخواست، پایان یافته است – Request Time-out |
۴۰۹ | تعارض و یا تضاد – Conflict |
۴۱۰ | رفته (گذشته) – Gone |
۴۱۱ | طول مورد نیاز – Length Required |
۴۱۲ | پیش نیاز لازم انجام نشد – Precondition Failed |
۴۱۳ | موجودیت درخواست خیلی طولانی است – Request Entity Too Large |
۴۱۴ | درخواست نشانی اینترنتی خیلی طولانی است – Request-URI Too Large |
۴۱۵ | (این) نوع رسانه پشتیبانی نمیشود – Unsupported Media Type |
۴۱۶ | بُعد درخواست، رضایتبخش نیست – Request Range Not Satisfiable |
۴۱۷ | انتظار برآورده نشد – Expectation Failed |
۴۲۱ | درخواست گمراهکننده – Misdirected Request |
۴۲۲ | هویت غیرقابل پردازش – Unprocessable Entity |
۴۲۳ | قفل شده – Locked |
۴۲۴ | وابستگی از بین رفت – Failed Dependency |
۴۲۵ | مجموعه نامرتب – Unordered Collection |
۴۲۶ | نیازمند به ارتقارسانی – Upgrade Required |
۴۲۸ | پیشنیاز لازم است – Precondition Required |
۴۲۹ | درخواستهای بسیار زیاد – Too Many Requests |
۴۳۱ | فیلدهای درخواست سرصفحه خیلی بزرگ است – Request Header Fields Too Large |
۴۵۱ | به دلایل قانونی غیرقابل دسترس است – Unavailable For Legal Reasons |
۵۰۰ | خطای سرویسدهندهی داخلی – Internal Server Error |
۵۰۱ | قابل اجرا نیست – Not Impliented |
۵۰۲ | دروازهی بد – Bad Gateway |
۵۰۳ | خدمات در دسترس نیست – Service Unavailable |
۵۰۴ | وقفه در دروازه – Gateway Time-out |
۵۰۵ | این نسخه از HTTP قابل پشتیبانی نیست – HTTP Version Not Supported |
۵۰۶ | متغیر قابل انتقال – Variant Also Negotiates |
۵۰۷ | فضا ذخیرهسازی ناکافی است – Insufficient Storage |
۵۰۸ | حلقهشناسایی شده است – Loop Detected |
۵۱۰ | تمدید نشده – Not Extended |
۵۱۱ | احراز صلاحیت شبکه مورد نیاز است – Network Authentication Required |
فرق بین ۳۰۲ با ۳۰۷
شاید برای شما سوالی پیش آید که کد ۳۰۲ و کد ۳۰۷ که هر دو تغییر مسیر موقت هستند چه تفاوتی با هم دارند؟ فرق اصلی این دو کد در این هست که در کد ۳۰۲ میتوان از یک متد به متد دیگر رفت ولی در کد ۳۰۷ امکان پذیر نیست، توضیحات بیشتر درباره متدها
فرق بین ۳۰۱ و ۳۰۸
تفاوت و فرق اصلی این کدها هم همانند کدهای بالا است و کد ۳۰۱ قابلیت تغییر متد را داراست. به شکل خلاصه:
Tiporary | Permanent | |
۳۰۲ | ۳۰۱ | Allows changing the request method from POST to GET |
۳۰۷ | ۳۰۸ | Doesn’t allow changing the request method from POST to GET |
خطوط وضعیت HTTP غیر رسمی
خطوط وضعیت HTTP که در زیر اشاره شده است ممکن است به وسیلهی خدمات یا سرویسهای شخص ثالث به عنوان پاسخهای خطا استفاده شود اما در هیچ RFC مشخص نشده است.
کد وضعیت | معنای آن در فارسی به همراه اطلاحات انگلیسی آن |
۱۰۳ | محل بررسی (چکپوینت) – Checkpoint |
۴۲۰ | روش با شکست مواجه شده است – Method Failure |
۴۲۰ | آرامش خود را ارتقا ببخشید – Enhance Your Calm |
۴۴۰ | پایان زمان ورود – Login Timeout |
۴۴۹ | تلاش دوباره – Retry With |
۴۵۰ | مسدود شده به وسیلهی برنامههای کنترل توسط والدین که در ویندوز است – Blocked by Windows Parental Controls |
۴۵۱ | تغییر مسیر – Redirect |
۴۹۸ | نامعتبر است – Invalid Token |
۴۹۹ | کد مورد نیاز است – Token Required |
۴۹۹ | درخواست به وسیلهی آنتیویروسها ممنوع شده است – Request has been forbidden by antivirus |
۵۰۹ | پهنای باند بیش از حد مجاز است – Bandwidth Limit Exceeded |
۵۳۰ | سایت متوقف شده است – Site is frozen |
توجه: مهم است که به یاد داشته باشید که با وجود این که کدهای وضعیت HTTP ممکن است با شمارههای مربوط به پیغامهای خطایی که در متون دیگر است ، مانند کدهای خطای مربوط به مدیریت دستگاه به اشتراک گذاشته شود اما این بدان معنا نیست که این دو (کد وضعیت و شمارهها) در هر حالبه هم مرتبط هستند.
سایت ویکی پدیا هم در این مقاله به توضیحات خوبی اشاره کرده است.
مطلب قبلی : رفع خطای ۴۰۱ unauthorized