خطاهای رایج کد وضعیت HTTP چیست؟

HTTP یک پروتکل ارتباطی ساده مبتنی بر TCP/IP  است و زیربنای مطلق برای تحویل داده ها در شبکه جهانی وب(World Wide Web) است. برای سال‌ها، HTTP  به عنوان یک پروتکل قدرتمند عمل می‌کند که در آن میلیاردها داده از طریق HTTP بین مشتری و سرور ارسال می‌شود.  اساسا HTTP(Essentially HTTP) مبتنی بر معماری سرویس گیرنده-سرور است که در آن مرورگرهای وب و موتورهای جستجو مانند یک کلاینت HTTP عمل می کنند و (HTTP)وب(Web) سرور به عنوان یک سرور عمل می کند. این درخواست/پاسخ توسط کلاینت ها و سرور از طریق یک TCP/IP مخابره می شود. سرویس گیرنده مرورگر درخواستی را به سرور وب در قالب URL آغاز می کند(URL)و وب سرور با منابع درخواستی به همراه کدهای وضعیت HTTPS(HTTPS status codes) که در هدر HTTP مرورگرها وجود دارد پاسخ می دهد. (HTTP)به عبارت دیگر، وب سرور با کدهای موفقیت آمیز یا خطا به درخواست پاسخ می دهد.

خطاهای کد وضعیت HTTP

خطاهای کد وضعیت HTTP

کد وضعیت HTTPS(HTTPS) یادداشت کوتاهی است که توسط سرور ارسال می شود و زمانی که مشتری درخواستی را برای سرور ارسال می کند در صفحه وب نمایش داده می شود. کد وضعیت HTTPS(HTTPS) برای صاحب وب‌سایت‌ها یا هر توسعه‌دهنده‌ای حیاتی است، زیرا آنها نقش مهمی در تشخیص خطاهای سمت کلاینت/سرور و حل مشکلات پیکربندی دارند. به عبارت دیگر، کد وضعیت HTTPS راهی است که سرور می گوید چیزی درست نیست. عنصر کد وضعیت یک عدد 3 رقمی است که اولین رقم کد وضعیت، کلاس‌های پاسخ‌ها را مشخص می‌کند. در داخل کلاس، انواع کدهای سرور وجود دارد و توسط سرور برگردانده می شود. دو رقم آخر کد وضعیت HTTPS هیچ نقش طبقه بندی ندارند. پنج کلاس استاندارد برای HTTP وجود دارد(HTTP)کدهای وضعیت که ما قصد داریم به طور مفصل در مورد آنها بحث کنیم و برخی از کدهای وضعیت HTTPS را که ممکن است به طور منظم با آنها برخورد کنیم، مورد بحث قرار دهیم.

کدهای وضعیت HTTPS(HTTPS) به 5 کلاس طبقه بندی می شوند:

1xx:

این کلاس نشان دهنده پاسخ های اطلاعاتی(Informational) است که نشان می دهد درخواست های آغاز شده توسط مشتری توسط وب سرور دریافت می شود و در حال پردازش است.

در این کلاس، انواع کدهای سرور وجود دارد و توسط سرور برگردانده می شود.

در زیر لیستی از کدهای وضعیت زیر کلاس 1xx آمده است.

100 Continue: این نشان می دهد که سرور تنها بخشی از درخواست شروع شده توسط مشتری را از یک درخواست بزرگ دریافت کرده است و به این معنی است که مشتری می تواند تا زمانی که درخواست از انتهای سرور رد نشده است به ارسال درخواست ادامه دهد.

101 پروتکل های سوئیچینگ:(101 Switching Protocols:) کد وضعیت به این معنی است که سرور آماده است تا پروتکل ها را طبق درخواست مشتری تغییر دهد.

2xx:

این کلاس یک کد موفقیت آمیز است که توسط سرور برگردانده شده است. به این معنی است که درخواست آغاز شده توسط مشتری توسط سرور دریافت شده است و همچنین اقدام درک و پردازش شده است.

در زیر لیستی از کدهای وضعیت زیر کلاس 2xx آمده است.

200 OK: این کد وضعیت یک پاسخ استاندارد به درخواست های HTTP موفقیت آمیز است که توسط کلاینت ها آغاز شده است. زمانی که صفحه وب به همان شیوه ای که انتظار می رود رفتار کند، توسط سرور برگردانده می شود.

201 Created: این کد وضعیت زمانی بازگردانده می شود که درخواست آغاز شده توسط سرویس گیرنده توسط سرور تکمیل شود و یک منبع جدید ایجاد شود.

205 Reset Content: این کد وضعیت زمانی برگردانده می شود که سرور با موفقیت درخواست مشتری را تکمیل کرده باشد اما نتوانسته محتوایی را برگرداند. به مشتری/مرورگر نیاز دارد که نمای سند را بازنشانی کند.

3xx:

این کلاس یک کد Redirection است که به مشتری پیشنهاد می‌کند تا یک اقدام اضافی برای تکمیل درخواست آغاز شده انجام دهد. این نشان می دهد که مشتری باید اقدامات بیشتری برای تکمیل درخواست انجام دهد.

در زیر لیستی از کدهای وضعیت زیر کلاس 3xx آمده است.

300 انتخاب چندگانه:(300 Multiple Choices:) انتخاب چندگانه را برای منابع آغاز شده توسط مشتری نشان می دهد. مشتری می تواند پیوندی با حداکثر پنج آدرس انتخاب کند.

301 Moved Permanently: این کد وضعیت زمانی نمایش داده می شود که درخواست شروع شده توسط مشتری برای منابع یا صفحه وب به طور دائم با منبع دیگری جایگزین شود. به یک URL جدید هدایت می شود.

302 Found: این کد وضعیت زمانی نمایش داده می‌شود که درخواست آغاز شده توسط مشتری برای منابع یا صفحه وب، اما در مکانی متفاوت از آنچه انتظار می‌رفت، پیدا شود. به طور موقت به منبع دیگری منتقل می شود یا به طور موقت به یک URL جدید هدایت می شود.

304 Not Modified: اگر مشتری از آخرین بازدید منابع را قبلا دانلود کرده باشد، این کد وضعیت برگردانده می شود و برای اطلاع به مرورگر مشتری نمایش داده می شود که منابع درخواستی قبلاً در حافظه پنهان مرورگر ذخیره شده است که اصلاح نشده است. این کد وضعیت اساساً با استفاده از نسخه دانلود شده قبلی که از آخرین بازدید هنوز در حافظه پنهان وجود دارد، تحویل منابع از صفحه وب را سرعت می بخشد.

4xx:

خطای سمت مشتری نشان می دهد که مشکلی در درخواست مشتری وجود دارد. اگر ممکن است درخواست مشتری حاوی نحو نادرستی باشد، کد برگردانده می شود.

در زیر لیستی از کدهای وضعیت زیر کلاس 4xx آمده است.

400 Bad Request: اگر سرور به دلیل خطای کلاینت مانند نحو اشتباه، درخواست مسیریابی فریبنده، کادربندی نامعتبر و غیره درخواست را پردازش نکند، این کد وضعیت برگردانده می شود.

401 Unauthorized: این کد وضعیت توسط سرور برگردانده می شود اگر مشتری اعتبار احراز هویت معتبری ارائه نکرده باشد.

403 Forbidden : این کد وضعیت HTTPS(HTTPS) زمانی بازگردانده می شود که دسترسی به منبع ممنوع باشد و مشتری مجوز لازم برای مشاهده محتوا را نداشته باشد. این اساساً زمانی اتفاق می‌افتد که مشتری تلاش می‌کند محتوای محافظت شده با رمز عبور را بدون اعتبار ورود معتبر مشاهده کند.

404 یافت نشد(404 Not Found)(404 Not Found) : این خطای کد وضعیت HTTPS(HTTPS) رایج ترین خطای همه است و اگر سرور نتواند درخواست آغاز شده توسط سرویس گیرنده را پیدا کند، بازگردانده می شود.

روش 405 مجاز نیست:(405 Method Not Allowed:) اگر روش درخواستی مشتری توسط سرور میزبان پشتیبانی شود اما توسط منابع درخواست شده توسط مشتری پشتیبانی نشود، این کد وضعیت HTTPS برگردانده می شود.(HTTPS)

408 درخواست مهلت زمانی:(408 Request Timeout:) اگر سرور نتواند درخواست کاملی از مرورگر مشتری دریافت کند، این کد وضعیت HTTPS توسط سرور برگردانده می شود. (HTTPS)دلیل اصلی این خطا از بین رفتن بسته های داده در طول ارتباط بین مشتری و سرور است. زمان انتظار سرور برای دریافت کامل درخواست از مرورگر مشتری تمام می شود.

410 Gone: اگر سرور نتواند صفحه درخواست یا منابع آغاز شده توسط مشتری را پیدا کند، این کد وضعیت HTTPS برگردانده می شود. (HTTPS)این خطای وضعیت مشابه خطای 404 Not Found است با این تفاوت که این خطا دائمی است و صفحه یا منابع درخواستی دیگر در حال حاضر در دسترس نیست و همچنین در آینده دیگر در دسترس نخواهد بود.

5xx:

این کلاس یک خطای سمت سرور است و اگر سرور نتواند درخواست مشتری را برآورده کند، بازگردانده می شود - خطا در سرور ممکن است یکی از دلایلی باشد که مانع از انجام درخواست می شود.

در زیر لیستی از کدهای وضعیت زیر کلاس 5xx آمده است.

500 خطای داخلی سرور(500 Internal Server Error) :(500 Internal Server Error:) این خطای وضعیت HTTPS(HTTPS) توسط افزونه های شخص ثالث یا افزونه های معیوب ایجاد می شود. این یک خطای سرور زمانی است که سرور نتواند پایگاه داده را متصل کند و منبع درخواستی را تحویل ندهد.

501 اجرا نشد:(501 Not Implemented:) این یک مشکل وب سرور است، اگر سرور از عملکرد درخواست شده توسط سرویس گیرنده پشتیبانی نکند، خطا برگردانده می شود. این خطا فقط میزبان قابل حل است

502 Bad Gateway: این خطا بیشتر زمانی رخ می دهد که سروری که منابع را به پایگاه داده درخواست می کند زمان زیادی می برد و توسط خود وب سرور لغو می شود و در نهایت اتصال به سرور بالادست یا پایگاه داده قطع می شود. این خطا زمانی که سرور پاسخ نامعتبری از سرور بالادستی دریافت می کند توسط سرور برگردانده می شود.

503 Service Unavailable: اگر سرور با درخواست های بیش از حد بارگیری شود و برای رسیدگی به موقع درخواست ها در دسترس نباشد، این خطا برگردانده می شود.

504 Gateway Timeout : این خطا زمانی برمی گردد که سروری که به عنوان دروازه عمل می کند نتواند پاسخ یک سرور بالادستی را دریافت کند. این زمانی اتفاق می افتد که یک درخواست آغاز شده توسط مشتری شامل دو سرور برای پردازش درخواست می شود که در آن سرور اول به عنوان یک دروازه عمل می کند. سرور اول درخواست را به سرور دوم ارسال می کند و اگر زمان سرور اول منتظر پاسخ سرور دوم باشد، خطا برگردانده می شود.

امیدوارم این اطلاعات کمی برای شما مفید باشد.(I hope you find this bit of information useful.)



About the author

من یک برنامه نویس کامپیوتر هستم و بیش از 15 سال است که هستم. مهارت های من در توسعه و نگهداری برنامه های کاربردی نرم افزاری و همچنین ارائه پشتیبانی فنی برای آن برنامه ها نهفته است. همچنین برنامه نویسی کامپیوتر را به دانش آموزان دبیرستانی آموزش داده ام و در حال حاضر یک مربی حرفه ای هستم.



Related posts