در دنیای وب، هر تعاملی بین مرورگر کاربران و سرور وب، با کدهای رمزگذاری شدهای همراه است. این کدها که به عنوان کدهای وضعیت HTTP شناخته میشوند، اطلاعات حیاتی در مورد وضعیت درخواست شما ارائه میدهند. در مقاله “راهنما جامع کدهای وضعیت http و انواع کدهای http” و مقالات آینده، با هم سفری خواهیم داشت به دنیای رمزگذاری کدهای وضعیت HTTP و به شما خواهیم گفت که باید در مورد آنها بدانید؛ از معانی هر کد، انواع و دستهبندیها، تا تأثیر این کدها بر سئوی وبسایت شما (در مقاله بعدی در مورد سئو صحبت خواهیم کرد).
شاید شما با ارور 404 (404 NOT FOUND) آشنا باشید و برخورد داشتهاید؛ اما لازم است بدانید که تعداد کدهای وضعیت بسیار زیاد است و عموماً کاربران قادر به دیدن آنها نیستند. شاید براتون سوال بشه که دانستن این کدها چه خاصیتی برای ما دارد! نکتهای که باید به آن توجه کنیم این است که برای سئو و رابط کاربری بهتر، هر وبمستری نیاز به آشنایی کامل با این موارد دارد. بهعنوان مثال، اگر سایت شما به کاربر کد وضعیت 500 را نشان بدهد، تأثیر بسیار زیادی بر سئوی سایت شما خواهد داشت و افت رتبهی شما در گوگل را به همراه خواهد داشت!
در این مقاله قصد داریم تا با هم در سایت بیت آموز به بررسی انواع کدهای وضعیت و توضیح مفهومی هر کدام از آنها بپردازیم.
کدهای وضعیت HTTP (HTTP Status Codes) چگونه طبقهبندی میشوند؟
همانطور که اشاره شد، طبقهبندی کدهای وضعیت HTTP بر اساس رقم صدگان کد صورت میگیرد. کل کدهای وضعیت HTTP به 5 دسته تقسیم میشوند. اگر اطلاعات زیادی در این زمینه ندارید، تنها با دانستن این طبقهبندی میتوانید به سادگی متوجه شوید که مشکل از کجاست!
این 5 دسته عبارتند از:
بررسی کدهای وضعیت HTTP 100 (پاسخ موقت یا اطلاعات):
کد 100 “Continue” (ادامه):
این کد به معنای تأیید بخش اول درخواست کاربر است. کاربر باید فرآیند ارسال درخواست را ادامه دهد و در صورت تمایل میتواند فرآیند را لغو کند.
کد 101 “Switching Protocols” (در حال تغییر پروتکلها):
این کد زمانی استفاده میشود که مرورگر کاربر از سرور درخواست تغییر پروتکل دهد و سرور در حال انجام تغییرات لازم است.
کد 102 “Processing” (در حال پردازش):
این کد نشاندهنده این است که سرور در حال پردازش درخواست است و هنوز نتیجه نهایی آماده نیست.
بررسی کدهای وضعیت HTTP 200 (موفقیتآمیز):
کد 200 “OK” (موفقیت آمیز):
نشاندهنده این است که سرور بهطور موفقیتآمیز درخواستها را پردازش کرده و صفحه موردنظر را بهکامل برای کاربر فراهم کرده است.
کد 201 “Created” (ساخته شده):
این کد به معنی این است که درخواست موفقیتآمیز بوده و سرور یک یا چندین منبع ایجاد کرده است.
کد 202 “Accepted” (پذیرفته شده):
سرور درخواست را پذیرفته، اما هنوز آن را پردازش نکرده است و نتیجه این درخواست هنوز مشخص نیست.
کد 203 “Non-Authoritative Information” (اطلاعات نامعتبر):
سرور با موفقیت درخواست را پردازش کرده، اما اطلاعاتی را نمایش میدهد که با اطلاعات موجود در سرور مبدا متفاوت است.
کد 204 “No Content” (بدون محتویات):
این کد نشاندهنده این است که درخواست با موفقیت پردازش شده، اما هیچ چیزی برای نمایش وجود ندارد. این حالت معمولاً زمانی رخ میدهد که کاربر نیازی به ترک صفحه فعلی نداشته باشد، مانند ذخیره پیشنویس در وبسایتهای بلاگ.
کد 205 “Reset Content” (تنظیم مجدد محتوا):
این کد شبیه کد 204 است، با این تفاوت که پس از پردازش موفقیتآمیز درخواست، کاربر باید فرم یا صفحهای که در آن بوده را بهاصطلاح ریست کند.
کد 206 “Partial Content” (محتوا جزئی):
این کد زمانی به کار میرود که سرور با موفقیت درخواستهای جزئی را پردازش کند، مانند زمانی که سرور یک فایل دانلودی را به چندین بخش تقسیم میکند.
بررسی کدهای وضعیت HTTP 300 (تغییر مسیر یا هدایت لازم):
کد 300 “Multiple Choices” (چندین انتخاب):
این کد زمانی نمایش داده میشود که سرور دارای فعالیتها یا پاسخهای متفاوتی برای درخواست کاربر است. در این حالت، سرور ممکن است بهطور خودکار یک پاسخ انتخاب کند یا لیستی از پاسخها ارائه دهد تا کاربر انتخاب کند.
کد 301 “Moved Permanently” (انتقال دائم):
همانطور که از نامش پیداست، سرور بهمحض درخواست کاربر، او را به صفحه جدیدی بهطور دائمی منتقل میکند و معمولاً برای انتقال دائمی URL از این کد استفاده میشود.
کد 302 “Found” (انتقال موقتی):
این کد زمانی نمایش داده میشود که درخواست در صفحه دیگری در حال پردازش است و کاربر بهمنظور دریافت پاسخ خود به صفحه جدیدی منتقل میشود.
کد 303 “See Other” (به محل دیگری مراجعه کنید):
این کد زمانی استفاده میشود که درخواستکننده با روش GET درخواستی ارسال کند و پاسخ به مکان دیگری ارجاع داده میشود.
کد 304 “Not Modified” (اصلاح نشده):
این کد به معنای این است که محتوای ذخیرهشده در کش هنوز معتبر است و نیازی به بارگذاری مجدد محتوا نیست.
کد 305 “Use Proxy” (استفاده از پروکسی):
کاربر میتواند به صفحه موردنظر دسترسی پیدا کند فقط در صورتی که از پروکسی استفاده کند.
کد 306 “Switch Proxy” (تعویض پروکسی):
این کد مشابه کد 305 است با این تفاوت که کاربر باید پروکسی را تعویض کند.
کد 307 “Temporary Redirect” (تغییر مسیر موقت):
این کد مشابه کد 302 عمل میکند.
بررسی کدهای وضعیت HTTP 400 (خطای سمت کاربر):
کد 400 “Bad Request” (درخواست ناصحیح):
این کد زمانی نمایش داده میشود که سرور به دلیل مشکل در کدها نمیتواند درخواست را پردازش کند.
کد 401 “Unauthorized” (مجاز نیست):
این کد زمانی نمایش داده میشود که کاربر در احراز هویت مشکل دارد و باید ابتدا احراز هویت کند.
کد 403 “Forbidden” (نداشتن مجوز دسترسی):
سرور امکان دسترسی کاربر به برخی بخشها را محدود میکند.
کد 404 “Not Found” (پیدا نشد):
این کد زمانی نمایش داده میشود که سرور نتوانسته صفحه مورد درخواست را پیدا کند.
کد 405 “Method Not Allowed” (متود مجاز نیست):
این کد به کاربر اطلاع میدهد که نمیتواند متدی خاص را اجرا کند.
کد 406 “Not Acceptable” (قابل قبول نیست):
زمانی نمایش داده میشود که سرور نتوانسته با توجه به معیارهای کاربر، پاسخهای را ارائه دهد.
کد 407 “Proxy Authentication Required” (نیاز به تصدیق پروکسی):
این کد زمانی نمایش داده میشود که کاربر در حال استفاده از پروکسی باشد و باید احراز هویت کند.
کد 408 “Request Timeout” (وقفه درخواست):
این کد به معنای پایان مدت زمان انتظار برای دریافت پاسخ است.
کد 409 “Conflict” (ناسازگاری):
سرور نمیتواند درخواست را به دلیل درگیری پردازش کند.
کد 410 “Gone” (رفته):
این کد برای زمانی است که فایل بهطور دائم حذف شده است.
کد 411 “Length Required” (طول مورد نیاز است):
سرور نمیتواند درخواست را بدون فیلد هدر Content-Length پردازش کند.
کد 412 “Precondition Failed” (پیش شرط با شکست مواجه شد):
این کد زمانی نمایش داده میشود که مرورگر نتوانسته شروط هدر را اجرا کند.
کد 413 “Request Entity Too Large” (موجودیت درخواست بسیار بزرگ است):
سرور به دلیل بزرگی درخواست نمیتواند آن را پردازش کند.
کد 414 “URI Too Long” (URL درخواست شده بسیار بزرگ است):
این کد زمانی نمایش داده میشود که URL بسیار طولانی است.
کد 415 “Unsupported Media Type” (نوع رسانه پشتیبانی نمیشود):
این کد زمانی نمایش داده میشود که درخواست شامل نوع رسانهای است که سرور نمیتواند پشتیبانی کند.
کد 416 “Range Not Satisfiable” (محدوده درخواست مورد تأیید نیست):
اگر درخواست برای محدودهای باشد که برای صفحه در دسترس نیست، این کد نمایش داده میشود.
کد 417 “Expectation Failed” (انتظار با شکست مواجه شد):
نشاندهنده این است که سرور نمیتواند نیازهای هدر را برطرف کند.
کد 422 “Unprocessable Entity” (موجودیت قابل پردازش نیست):
درخواست کاربر به سمت سرور هدایت شده اما به دلیل خطای معنایی نمیتواند پردازش شود.
کد 425 “Too Early” (پردازش با ریسک):
سرور تمایل به اجرای درخواستی که ممکن است تکرار شود را ندارد.
کد 426 “Upgrade Required” (ارتقاء لازم است):
سرور با دادن کد 426 نشان میدهد که پروتکل فعلی برای پردازش درخواست کافی نیست.
کد 428 “Precondition Required” (پیش شرط لازم است):
این کد به معنای این است که سرور نیاز به شرطی بودن درخواست دارد.
کد 429 “Too Many Requests” (درخواست زیاد):
این کد زمانی نمایش داده میشود که کاربر تعداد زیادی درخواست را در مدت زمان کوتاهی ارسال کند.
کد 431 “Request Header Fields Too Large” (فیلدهای هدر درخواست بسیار بزرگ است):
زمانی نمایش داده میشود که سرور نتواند به دلیل بزرگ بودن فیلدهای هدر به درخواست پاسخ دهد.
کد 451 “Unavailable for Legal Reasons” (به دلایل قانونی در دسترس نیست):
به این معناست که سرور دسترسی به منابع درخواستشده را به دلیل مسائل قانونی محدود میکند.
کد 499 “Client Closed Request” (درخواست کاربر بسته شد):
زمانی رخ میدهد که کاربر در حین پردازش درخواست خود را بسته است.
بررسی کدهای وضعیت HTTP 500 (خطای سمت سرور):
کد 500 “Server Error” (خطای داخلی سرور):
این کد زمانی نمایش داده میشود که سرور با خطایی مواجه گردد و قادر به پردازش درخواستها نباشد. این مشکل معمولاً به دلیل افزونههای جانبی، کدهای PHP معیوب، یا قطع ارتباط با پایگاه داده به وجود میآید.
کد 501 “Not Implemented” (اجرا نشده):
سرور قابلیت انجام درخواست را ندارد و از متد مورد نیاز برای پردازش آن پشتیبانی نمیکند.
کد 502 “Bad Gateway” (درگاه خراب):
سرور مانند یک درگاه عمل کرده و نتوانسته اطلاعات مناسبی از سرور بالادستی دریافت کند.
کد 503 “Service Unavailable” (سرویس در دسترس نیست):
سرور موقتی در دسترس نیست. این کد معمولاً در زمانهایی که سرور در حال تعمیر یا بار ترافیکی بالاست نمایش داده میشود.
کد 504 “Gateway Timeout” (وقفه درگاه):
این کد زمانی نمایش داده میشود که درخواست بین دو سرور در حال پردازش است و سرور اول به موقع پاسخ را از سرور بالادستی دریافت نکرده است.
کد 505 “HTTP Version Not Supported” (نگارش HTTP پشتیبانی نمیشود):
این کد نشاندهنده این است که سرور از نسخه HTTP که درخواستکننده استفاده کرده پشتیبانی نمیکند.
نتیجهگیری
درک کدهای وضعیت HTTP کلید داشتن یک وبسایت سالم و کارآمد است. با نظارت بر این کدها، میتوانید به سرعت مشکلات را شناسایی و برطرف کنید، تجربه کاربری را بهبود ببخشید و رتبهبندی وبسایت خود را در موتورهای جستجو افزایش دهید. به خاطر داشته باشید که دنیای وب پر از رمز و راز است، اما با کمی دانش و ابزار مناسب میتوانید این رمزها را رمزگشایی کرده و وبسایت خود را به سطح بالاتری ارتقا دهید.
آیا میخواهید رازهای بیشتری از دنیای رمزنگاریشده کدهای وضعیت HTTP و تأثیر آنها بر سئوی وبسایت خود را کشف کنید؟
به وبسایت ما بپیوندید و یاد بگیرید چگونه از این کدها برای ارتقای رتبهبندی خود در موتورهای جستجو و تبدیل وبسایت خود به یک آهنربای ترافیک استفاده کنید! همین الان به ما (بیت آموز) بپیوندید و سفر خود را به سوی تسلط بر سئوی وبسایت آغاز کنید!
جهت مشاهده کامل کدهای وضعیت HTTP به سایت httpstatuses.com مراجعه فرمایید.
چقدر این پست مفید بود؟
🌟 با یک کلیک، صدای خود را به گوش ما برسانید!
میانگین امتیاز کاربران / 5. تعداد نظر:
⭐️ اولین باشید! نظر شما اهمیت دارد!
متاسفیم این پست برای شما مفید نبود.
اجازه دهید این پست را بهتر کنیم!
🌟 به ما بگویید چگونه میتوانیم بهتر شویم!
8 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
سلام. اگر امکانش هست بیشتر از تاثیر کدهای وضعیت بگید یا کلا زمینه سئو رو بیشتر مانور بدید.
ممنونم از سایت خوبتون❤
سلام متشکرم از نظرتون.
مقاله ای مطابق با درخواست شما در سایت موجوده که میتونید ازش استفاده کنید:
https://bitamooz.com/تاثیر-کدهای-http-بر-سئوی-سایت/
موفق و پیروز باشید!🌹
لیست شما کامل نیست. از یک سری سرویس استفاده میکنم که خروجی بهم کد 11 یا اعداد دو رقمی میدن.
زحمت بکش اول مقاله ات و کامل کن بعدش بزار توی گوگل😐👌
ممنون از توجه و وقتی که گذاشتید برای مطالعه مقاله و ارسال نظر.
فقط یک نکته مهم وجود داره که شاید باعث این سوءتفاهم شده باشه:
در این مقاله، ما لیست کامل کدهای وضعیت استاندارد HTTP رو بر اساس مستندات رسمی W3C ارائه دادیم؛ یعنی همون کدهایی مثل 200، 404، 500 و… که در پروتکل HTTP تعریف شدن و در همه مرورگرها و سرورها به یک شکل معنی میدن.
اما عددهایی مثل 11 یا سایر کدهای دو رقمی که شما فرمودید، معمولاً کدهای اختصاصی اپلیکیشن یا وبسرویسها هستن که خارج از محدوده استاندارد HTTP تعریف میشن و تفسیرشون وابسته به همون سرویس خاصه.
باز هم ممنون بابت نکتهسنجیتون
عالی بود.
من دنبال معنی کد 500 میگشتم و این مقاله دقیق و ساده توضیح داده بود که خطای سرور یعنی چی و چه باید کرد.
سپاس از نظر شما
یه سوال: تأثیر کدهای HTTP بر سئو سایت چطوری با بحث crawl budget مربوط میشه؟ اگه کوتاه توضیح بدین ممنون میشم
سؤال خیلی خوبی پرسیدی. کدهای HTTP مستقیم روی crawl budget اثر میذارن. مثلاً اگه صفحات زیادی خطای 404 یا ریدایرکتهای بیمورد داشته باشن، ربات گوگل زمانش رو الکی اونجا هدر میده و کمتر میرسه به صفحات مهم سایتت. ولی وقتی کدها درست و بهینه باشن (مثل 200 یا ریدایرکتهای اصولی 301)، رباتها بهتر صفحات ارزشمند رو میبینن و همین به بهبود سئو کمک میکنه.