کدهای وضعیت HTTP و معنای آنها

بخش: توسعه وب 105 بار مشاهده شده چهارشنبه ۸ شهریور ۹۶ 0 نظر ارسال شده
کدهای وضعیت HTTP و معنای آنها

اینترنت از بیش از 1 میلیارد وب سایت تشکیل شده است و اگر یک کاربر اینترنتی بخواهد وب سایتی مانند صفحه اصلی تیم مورد علاقه خود، بانک یا inbox ایمیل را در مرورگر وب خود ایجاد کند، ابتدا به آدرس اینترنتی نیاز دارند.

این کار وب سایت مورد نظرش را در سرور شبکه مربوطه قرار می دهد. انتقال پرونده های درخواست شده به کامپیوتر محلی (local) به لطف پروتکل HTTP (Hypertext Transfer Protocol) انجام می شود. مرورگر (به عنوان «کاربر» در این مورد) درخواست می کند که سرور وب با یک کد وضعیت (status code) HTTP که از سه عدد تشکیل شده، پاسخ دهد. وب سرور پس از آن مرورگر را جهت موفقیت آمیز بودن درخواست و اینکه چه خطایی وجود دارد، یا احراز هویت مورد نیاز می باشد یا خیر، مطلع می کند. بنابراین، کد وضعیت HTTP بخشی ضروری از پاسخ منتقل شده وب سرور است و سرور به طور خودکار آن را در heading (عنوان) هر پاسخ HTTP قرار میدهد. به طور معمول اگر سرور وب قادر به انجام درخواست کاربر نبود یا نمی توانست هیچ یک از اطلاعات وب سایت را انتقال دهد، کاربر اینترنتی یک کد وضعیت HTTP را در قالب صفحه HTML به صورت خودکار مشاهده می نماید.

http statuscodes bedeutung c

 

کلاس های کد وضعیت HTTP

کدهای وضعیت HTTP معمولا به پنج کلاس مختلف تقسیم می شوند. اولین رقم کد سه رقمی، نشان می دهد که به کدام کلاس تعلق دارد. بنابراین کد وضعیت 200 درHTTP متعلق به کلاس 2xx و کد 404 به کلاس 4xx مربوط است. این طبقه بندی بر اساس اهمیت و عملکرد کد وضعیت تعیین می شود. کلاس های مختلف عبارتند از:

  • کلاس1xx - Informational: اگر کد وضعیت 1xx  منتقل شود، سرور به کاربر اطلاع می دهد که درخواست در حال حرکت است. این کلاس ترکیبی از کدهایی است که در طول درخواست مسئول ارائه اطلاعات به کاربر می باشند.
  • کلاس 2xx - Success: یک کد 2xx عملیات موفق را اعلام می کند. اگر این کد منتقل شود، به این معنی است که درخواست کاربر توسط سرور دریافت ، درک و پذیرفته شده است. کدهای 2xx اغلب در همان زمان به عنوان اطلاعات وب سایت مورد نظر ارسال می شوند و کاربران اغلب تنها متوجه وب سایت هایی که درخواست کرده اند می شود.
  • کلاس 3xx - Redirection: یک کد 3xx نشان می دهد که درخواست سرور دریافت شده است. برای اطمینان از این که درخواست به صورت موفقیت آمیز پردازش می شود، مراحل بعدی از پایان سرویس گیرنده ضروری است. کدهای 3xx در هنگام تغییر مسیر به آدرسی دیگر ظاهر می شوند.
  • کلاس 4xx - Client error: اگر یک کد 4xx ظاهر شود، یک خطای سرویس گیرنده وجود دارد. سرور درخواست را دریافت کرده است، اما نمی تواند آن را انجام دهد. معمولا این امر به دلیل نادرست بودن درخواست می باشد که با دریافت یک صفحه HTML به طور خودکار تولید شده و کاربران اینترنت را از این خطا مطلع می کند.
  • کلاس 5xx - Server error: هنگامی که سرور برای انجام درخواست موفق نشد، کد 5xx نمایش داده می شود. این کد خطاهای سرور را گزارش می دهد و می گوید که در حال حاضر درخواست قابل انجام نیست یا در تمام موارد امکان پذیر نمی باشد و سپس به صفحه خطای HTML منجر می شود.

 

کدهای مهم وضعیت HTTP در یک نگاه

کدهای وضعیت HTTP نقش مهمی برای صاحبان وب سایت و یا متخصصان جستجوگرها ایفا می کنند. کدهای Client error (خطای کاربر) مانند 404 (Not Found) یا server errorها (خطاهای سرور) مانند 503 (سرویس در دسترس نیستند) برای بازدیدکنندگان وب سایت قابل مشاهده هستند، زیرا در مرورگر وب به صورت صفحات HTML و به طور خودکار تولید می شوند. بسیاری از کدهای HTTP وجود دارند که در نگاه اول قابل مشاهده نیستند و تنها توسط مدیر و با استفاده از ابزار خاص و برنامه های مرورگر کنترل می شوند. برای بهینه سازی تجربه کاربر و موتورهای جستجو یافتن اشتباهات و اصلاح آن ها را توصیه می کنیم. رایج ترین کدهای پاسخ در زیر نشان داده شده و می توانید برای مشاهده لیست کامل به مقاله لیست کدهای وضعیت یا Status code های HTTP در سافت اسکیل مراجعه نمایید.

  • Status code 200 – OK: کد وضعیت HTTP نشان دهنده موفقیت در انجام شدن درخواست بگونه ای است که تمام داده های درخواست شده بر روی وب سرور قرار گرفته و به مشتری منتقل می شود و کاربران اینترنت معمولا این کد را نمی بینند.
  • Status code 301 – Moved Permanently: کد 301 بدین معنی است که داده های درخواست شده از طرف کاربر به علت انتقال یافتن دائمی نمی تواند در آدرس داده شده پیدا شود. از آنجا که مکان فعلی محتوای درخواست شده در گزارش وضعیت تحویل داده می شود، مرورگر می تواند آدرس جدید را به طور مستقیم درخواست کند. سپس کاربر به آدرس جدید فرستاده شده و آدرس قدیمی دیگر معتبر نمی باشد. کد 301 نیزبه کاربر نمایش داده نمی شود زیرا URL در نوار آدرس به سادگی تغییر می کند.
  • Status code 302 – Moved Temporarily: بر خلاف کد 301، که یک هدایت دائمی است، 302 به کاربر اطلاع می دهد که داده های درخواست شده به طور موقت منتقل شده اند. با کد 302 اطلاعات باقی مانده مشخص می شود به طوری که یک مسیر هدایت اتوماتیک نیز می تواند استفاده شود. آدرس قدیمی معتبر باقی می ماند.
  • Status code 403 – Forbidden: کد 403 وضعیت HTTP به کاربر می گوید که دارای دسترسی به داده های درخواست شده را ندارد و درخواست نمی تواند انجام شود و به طور خودکار یک صفحه HTML ایجاد می شود که به کاربر در مورد مشکل دسترسی اطلاع رسانی می نماید.
  • Status code 404 – Not Found: اگر سرور یک پیام 404 را ارائه می کند، به این معنی است که اطلاعات وب سایت درخواست شده بر روی سرور یافت نشده و ممکن است این آدرس دیگر وجود نداشته یا محتویات بدون اطلاع قبلی به یک آدرس جدید منتقل شده باشند. کاربران که پیام 404 را دریافت می کنند باید بررسی نمایند که آیا آدرس در نوار آدرس به درستی نوشته شده یا خیر و هر لینک به صفحات غیر موجود به عنوان "لینک های مرده" شناخته می شود.
    مطالعه مقاله پیشنهادی: خطای 404، صفحه خطای یا page error چیست و چگونه باید از آن استفاده کنیم.
  • Status code 500 – Internal Server Error: توابع پاسخ 500 سرور به عنوان کد وضعیت مجموعه برای خطاهای غیرمنتظره سرور می باشد. اگر یک خطا در قسمت سرور وجود داشته باشد، که مانع از بازیابی اطلاعات درخواست شده شود، این کد وضعیت HTTP به طور خودکار صادر می گردد که منجر به ارسال پاسخ به مشتری و ایجاد گزارش خطای داخلی در وب سرور می شود. این امر باید توسط مالک وب سایت تحلیل شود تا تعمیرات بر روی نرم افزار سرور انجام پذیرد.
  • Status code 503 ­– Service Unavailable: اگر کاربر یک کد 503 دریافت کند، به این معنی است که وب سرور مربوطه که باید اطلاعات درخواستی را ارائه کند، overload شده است. گاهی اوقات پاسخ سرور شامل اطلاعاتی در مورد زمانی که درخواست می تواند در ابتدا پردازش شود می باشد. کاربران اینترنت می توانند این امر را که مدیر در حال کار بر روی مشکلات سرور است و سرور بعدا در دسترس خواهد بود را در نظر بگیرند.

 

نحوه جلوگیری صاحبان وب سایت از کدهای وضعیت HTTP

به منظور ارائه بازدید کنندگان وب سایت به یک تجربه کاربری مطلوب، مدیران باید تولید خودکار صفحات خطای http را به حداقل برسانند. این امر به ویژه در مورد وب سایت هایی با حضور گسترده وب مانند فروشگاه های آنلاین یا پورتال های خبری که دارای محدوده های بسیار متنوع و یا اطلاعات حجیم هستند، استفاده می شود.

بازدید کننده یک پیام وضعیت 404 (Not Found) دریافت می کند زمانی که یک صفحه وب دیگر وجود نداشته باشد. برای بسیاری از کاربران این امر دلیلی برای خروج از سایت و جستجوی اطلاعات مورد نظر یا محصول در جای دیگر است. بنابراین برای صاحب وب سایت در نظر گرفتن تمام موارد برای نگه داشتن بازدید کننده در وب سایت خود و نیز شناسایی خطاهای 404 در وب سایت امری حیاتی است. Google’s webmaster tools (ابزارهای webmaster گوگل) می تواند آمار خطای خزنده را برای این منظور ایجاد کند. می توان از طریق هدایت کاربران به مکان مربوطه از کد 404 HTTP اجتناب کرد و همچنین میزان بازگشت گمانه بازدیدکنندگان را می توان از طریق صفحات خطای ایجاد شده به صورت دستی کاهش داد.

404 page template sample

 

تغییر مسیر صفحات خطای 404 به گزینه های جایگزین با استفاده از کد 301

اگر یک خطای 404 به علت صفحۀ حذف شده رخ دهد، می توانید با استفاده از کد وضعیت 301 (انتقال دائمی)، کاربر را به محتوای مشابه منتقل کنید. اگر بازدید کننده محصول یا اطلاعاتی را که درخواست کرده را پیدا نکند، محتوای جایگزین آنها را به ماندن در سایت تشویق می کند. در اینجا آدرس جایگزین مربوط به درخواست اصلی است که به بازدید کننده ارائه می شود. از لحاظ تئوری صفحه 404 به طور خودکار با کد 301 به آدرس های جایگزین مانند صفحه شروع هدایت می شوند. اگر صفحات فرود را به صورت دستی و مناسب مسیریابی کنید، در مواجهه با پرش بازدیدکنندگان موثرتر عمل می نمایید.

 

بهبود تجربه کاربر با صفحات خطای جایگزین

با وجود نگهداری خوب وب سایت ، همیشه نمی توان از خطای 404 اجتناب نمود. بنابراین توصیه می شود که اعلان های خود را به جای استفاده از صفحات خودکار خطای HTML به صورت دستی ادغام کنید. فایل پیکربندی .htaccess کاربران را قادر به انجام این روند می سازد. پیام های 404 جایگزین به طراحی وب سایت سازگاری و اطلاعات اضافی در بالای کد وضعیت ، صفحات محصول قابل مقایسه و یا یک مرور کلی از اطلاعات ارائه شده را ارائه می دهند. در مقالات آینده به چگونگی ادغام خطای جایگزین توسط صاحبان وب سایت می پردازیم.

 

کد های وضعیت HTTP برای بهینه سازی موتور جستجو

بسیاری از کدهای وضعیت HTTP در هنگام بهینه سازی موتورهای جستجو (SEO) اهمیت زیادی دارند. کد 404 نه تنها به این معنی است که سایت درخواست شده را نمی توان پیدا کرد، بلکه همچنین موتورهای جستجو قادر به خالی نمودن محتوا نمی باشند. درست مانند بازدیدکنندگان انسانی، ربات های موتور جستجو نیز به محتوای مختلف منتقل می شوند. به دلایل SEO، کد 301 نمایش داده می شود زیرا نگهداری اعتبار لینک از اهمیت زیادی برخوردار است. اگر خزنده موتور جستجو کدهای وضعیت 301 را در یک درخواست آدرس وب پیدا کند، آدرس نامعتبر از فهرست جستجو حذف شده و سپس مسیریابی انجام می شود.

قدرت لینک صفحات قدیمی در این روند فراموش نشدنی است، اما به مقصد forward 301 منتقل می شود. این امر به خصوص در زمانی که صفحه قدیمی مقصدی از لینک های ورودی است و شما می خواهید اعتبار و قدرت حاصل خود را به مقصد هدایت کنید مفید است. کد وضعیت 302 به طور متفاوت رفتار می کند، زیرا تنها یک تغییر مسیر موقت را نشان می دهد بنابراین آدرس قدیمی در این فهرست قرار می گیرد. قدرت پیوند لینک های موجود در این مورد به مقصد هدایت می شوند.

گروه تحقیقات سافت اسکیل
گروه تحقیقات سافت اسکیل

گروه تحقیقات سافت اسکیل به منظور افزایش سطح دانش جامعه، سعی در ترجمه، تالیف و تولید محتوای با کیفیت در زمینه های مختلف نرم افزاری دارد

شما چه نظر و یا سوالی درباره این نوشته دارید؟

پرســیدن سؤال جدید

سؤال های تخصصی خود را از ما بپرسید

دنبال کردن تلگرام کانال سافت اسکیل

https://telegram.me/softskill_ir

عملیات کاربران

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

کلیک کنید و سوالات خود را از ما بپرسید
لطفا فرم سوال را پر کنید

سوال شما با موفقیت ثبت شد. برای اینکه بتوانیم به شما اطلاع رسانی کنیم، موارد زیر را وارد کنید:

لطفا چند لحظه منتظر بمانید ...