منو سایت

  • خانه
  • وبلاگ
  • چگونه رایج ترین خطاهای HTTP را برطرف کنیم؟

چگونه رایج ترین خطاهای HTTP را برطرف کنیم؟

 تاریخ انتشار :
/
  وبلاگ
چگونه رایج ترین خطاهای HTTP را برطرف کنیم؟

هنگامی که به یک وب سرور یا برنامه وب متصل می شوید، به هر درخواست HTTP دریافت شده از سرور با یک کد وضعیت HTTP پاسخ داده می شود. در پاسخ، کدهای وضعیت (کدهای وضعیت HTTP) کدهای سه رقمی هستند و در پنج کلاس مختلف گروه بندی می شوند. کلاس هر کد وضعیت با اولین رقم آن مشخص می شود، مانند مثال های زیر:

  • 1xx: اطلاعات
  • 2xx: موفقیت
  • 3xx: تغییر مسیر
  • 4xx: خطای مشتری
  • 5xx: خطای سرور

در این مقاله راهنمای کاملی برای شناسایی و حذف رایج ترین کدهای خطای HTTP، کدهای وضعیت 4xx و 5xx ارائه می دهیم. موقعیت های زیادی وجود دارد که در آن سرور وب به درخواست مشتری با یک کد خطای خاص پاسخ می دهد. در اینجا چنین موقعیت هایی را در نظر می گیریم.

مشاهده خطاهای سرویس گیرنده و سرور

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

خطاهای سرور با کدهای وضعیت HTTP از 500 تا 599 تنظیم می شوند. این کدها زمانی که سرور خطا را تشخیص داده و نیاز به اصلاح دارد، توسط وب سرور برگردانده می شوند (نمایش داده می شوند). در غیر این صورت قادر به پردازش درخواست نخواهد بود.

نکات عیب یابی

  1. پس از ایجاد تغییرات در سرور و تست وب سرور، ابتدا هنگام استفاده از مرورگر خود آن را به روز کنید. گزارش سرور را برای جزئیات بیشتر در مورد نحوه پردازش درخواست‌ها توسط سرور بررسی کنید. به عنوان مثال، سرورهای وب مانند Apache یا Nginx دو فایل به نام‌های access.log و error.log تولید می‌کنند که می‌توانند برای اطلاعات مرتبط اسکن شوند.
  2. تعاریف کد وضعیت HTTP بخشی از استاندارد پیاده سازی شده توسط برنامه ارائه دهنده درخواست است. این بدان معنی است که کد وضعیت واقعی که بازگردانده می شود بستگی به نحوه رسیدگی نرم افزار سرور به یک خطای خاص دارد.

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

400 درخواست بد

وضعیت – کد 400 یا خطا در صورت درخواست نادرست به این معنی است که درخواست HTTP ارسال شده به سرور دارای اصول نامعتبر است. در اینجا چند نمونه از خطاهای احتمالی 400Bad Request آورده شده است:

  • کوکی کاربر مرتبط با سایت خراب است. پاک کردن حافظه پنهان و کوکی‌های مرورگر شما ممکن است این مشکل را حل کند.
  • درخواست فرمت نادرست: به دلیل نقص مرورگر
  • درخواست نادرست تشکیل شده: به دلیل خطای انسانی هنگام تنظیم دستی درخواست های HTTP (مثلا استفاده نادرست از curl)

رفع اشکال 400 پرس و جو بد

علت ارور 400 و نحوه رفع آن

401 غیر مجاز

کد وضعیت 401 یا خطای غیرمجاز به این معنی است که یک کاربر غیرمجاز (یا به طور صحیح غیرمجاز) در تلاش برای دسترسی به منبع است. به عبارت دیگر، کاربر باید برای مشاهده منبع محافظت شده، اعتبار ارائه کند.

به عنوان مثال، اگر کاربری سعی کند به منبعی دسترسی پیدا کند که با احراز هویت HTTP محافظت می شود، با کد پاسخ 401 مواجه می شود. البته، تنها در صورتی که نام کاربری و رمز عبور معتبر (نام کاربری و رمز عبور در فایل htpasswd.) را ارائه کند. وب سرور

401 خطای مجوز

خطای مجوز 401 چیست و چگونه می توان آن را برطرف کرد؟

403 ممنوع

وضعیت – کد 403 یا خطای ممنوعه به این معنی است که کاربر یک درخواست معتبر ارسال کرده است، اما سرور از پاسخگویی به این درخواست خودداری می کند. زیرا دسترسی به منبع درخواستی مجاز نیست. اگر به طور غیرمنتظره ای با خطای 403 مواجه شدید، چندین دلیل متداول وجود دارد که در ادامه به توضیح آن ها می پردازیم.

مجوزهای فایل

خطاهای 403 معمولاً زمانی رخ می‌دهند که کاربر در حال اجرای فرآیند وب سرور است و مجوز کافی برای خواندن فایلی که از قبل در دسترس است را ندارد. برای ارائه یک مثال اشکال زدایی 403، موارد زیر را در نظر بگیرید:

  • کاربر در تلاش برای دسترسی به فایل فهرست در وب سرور از http://example.com/index.html معرفی شده است.
  • گردش کار وب سرور متعلق به کاربر www-data است.
  • فایل را در سرور ایندکس کنید /usr/share/nginx/html/index.html قرارداد.

اگر کاربر خطای 403 Forbidden را دریافت کرد، ابتدا مطمئن شوید که کاربر www-data مجوز کافی برای خواندن فایل را داشته باشید. این معمولاً به این معنی است که سایر مجوزهای فایل باید برای خواندن تنظیم شوند. راه های مختلفی برای اطمینان از این موضوع وجود دارد، اما استفاده از دستور زیر کار خواهد کرد:

$ sudo chmod o=r /usr/share/nginx/html/index.html

خطای 403 در http

چگونه خطای 403 HTTP را برطرف کنیم؟

htaccess.

یکی دیگر از دلایل احتمالی خطاهای 403 استفاده از فایل htaccess است. و مثلاً از فایل htaccess. می توان از آن برای مسدود کردن دسترسی به آدرس های IP خاص یا دامنه های منابع خاص استفاده کرد. اگر کاربر به طور غیرمنتظره ای خطای 403 Forbidden را دریافت کرد، مطمئن شوید که خطا توسط تنظیمات htaccess تصحیح شده است. ایجاد نشده است.

فایل فهرست وجود ندارد

اگر کاربر درخواست دسترسی به دایرکتوری بدون فایل فهرست پیش فرض را داشته باشد و لیست دایرکتوری فعال نشود، وب سرور خطای 403 Forbidden را دریافت می کند. برای مثال اگر کاربر قصد دسترسی داشته باشد http://example.com/emptydir/ و هیچ فایل شاخصی در پوشه خالی سرور وجود ندارد، وضعیت 403 برگردانده می شود.

اگر می خواهید فهرست دایرکتوری را فعال کنید، می توانید این کار را در پیکربندی وب سرور خود انجام دهید.

صفحه 404 یافت نشد

کد وضعیت 404 یا No error found به این معنی است که کاربر می تواند با سرور ارتباط برقرار کند اما نمی تواند فایل یا منبع درخواستی را پیدا کند. خطاهای 404 می توانند در موقعیت های مختلف رخ دهند. اگر کاربر به طور غیرمنتظره ای خطای 404 Not Found را دریافت کرد، در اینجا چند مسئله وجود دارد که باید هنگام عیب یابی به خاطر بسپارید:

  • آیا یک اتصال چاپی وجود دارد که کاربر را به منبع سرور هدایت کند؟
  • آیا کاربر آدرس اینترنتی را اشتباه وارد کرده است؟
  • آیا فایل در محل صحیح سرور قرار دارد؟ آیا منبع سرور منتقل شده یا حذف شده است؟
  • آیا مکان اصلی سند در پیکربندی سرور صحیح است؟
  • آیا کاربر با پردازش وب سرور فعال دسترسی خاصی برای دسترسی به دایرکتوری دارد؟ (توجه: دایرکتوری ها نیاز به مجوز خواندن و اجرا دارند)
  • آیا دسترسی به منبع از طریق پیوند نمادین است؟ در این مورد، مطمئن شوید که وب سرور برای دنبال کردن پیوندهای نمادین پیکربندی شده است.

خطای HTTP 404

آموزش عیب یابی HTTP 404

500 خطای سرور داخلی

کد وضعیت 500 یا خطای سرور داخلی به این معنی است که سرور به دلایل نامعلومی نمی تواند درخواست را پردازش کند. گاهی اوقات این کد زمانی ظاهر می شود که با خطاهای خاص 5xx مناسب تر باشد. شایع ترین علت این خطا، پیکربندی نادرست سرور (مانند htaccess. فایل نادرست) یا بسته های از دست رفته است (مثلاً تلاش برای شروع یک فایل PHP بدون نصب صحیح PHP).

خطای http error 500

502 پورتال بد

وضعیت – کد 502 یا خطای دروازه بد به این معنی است که سرور دارای یک سرور ورودی یا پروکسی است که پاسخ معتبری از سرورهای باطن دریافت نمی کند. این بدان معناست که سرور باید به درخواست ها پاسخ دهد. اگر سرور مورد نظر یک سرور پروکسی معکوس است، مانند یک بار متعادل کننده، نکات زیر باید در نظر گرفته شود:

  • سرورهای Backend (جایی که درخواست های HTTP برای آنها ارسال می شود) ایمن هستند.
  • پروکسی معکوس به درستی پیکربندی شده و با نسخه های پشتیبان مناسب علامت گذاری شده است.
  • اتصال شبکه بین سرورهای باطن و سرور پروکسی معکوس ایمن است. اگر سرورها می توانند روی پورت های دیگر ارتباط برقرار کنند، مطمئن شوید که فایروال اجازه ترافیک بین آنها را می دهد.
  • اگر برنامه وب شما برای گوش دادن در سوکت پیکربندی شده است، مطمئن شوید که سوکت در محل صحیح نصب شده است. همچنین مجوزهای صحیح را بررسی کنید.

رفع خطای 502 bad gateway

عیب یابی 502 Bad Gateway

503 این سرویس در دسترس نیست

وضعیت- کد 503 یا سرویس خطا در دسترس نیست به این معنی است که سرور بیش از حد بارگذاری شده است یا تحت تعمیر و نگهداری است. این خطا نشان می دهد که سرویس خارج از محدوده است و باید در دسترس باشد.

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

چگونه خطای 503 را برطرف کنم؟

چگونه خطا را تصحیح کنیم. سرویس در دسترس نیست؟

مهلت زمانی دروازه 504

کد وضعیت 504 یا خطای در انتظار دروازه به این معنی است که سرور لاگین یا پروکسی در مدت زمان مجاز پاسخی از سرورهای پشتی دریافت نمی کند. این حالت معمولاً در شرایط زیر رخ می دهد:

  • اتصال شبکه بین سرورها ضعیف است.
  • سرور باطن به دلیل عملکرد ضعیف بسیار کند است.
  • دروازه یا سرور پروکسی بسیار کوتاه است.

خطای 504 در انتظار دروازه

چگونه خطای دروازه 504 را برطرف کنم؟

آخرین کلمه

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

سوالات متداول

1. خطای HTTP چیست؟

گاهی اوقات وقتی صفحه وب را با خطایی به نام HTTP می بینید، یک کد و یک پیام کوتاه دریافت می کنید. این پیام ها معمولا نشان دهنده مشکلی در وب سرور هستند. البته گاهی اوقات خطای انسانی نیز می تواند باعث این خطا شود.

2. رایج ترین خطاهای HTTP چیست؟

رایج ترین خطاهای HTTP عبارتند از:

  • خطای 500 یا خطای سرور داخلی
  • خطای 403 یا غیرفعال است
  • 404 یا یافت نشد
  • 400 یا درخواست بد
  • 401 یا غیر مجاز

3. تفاوت خطای 400 و 404 با HTTP چیست؟

خطای 404 اعلام می کند که هیچ منبعی ندارد. به عبارت دیگر، هیچ API فراخوانی یا صفحه ای درخواست نشده است. اما در خطای 400 یک منبع وجود دارد، اما ورودی اشتباه است.

{“@context”: “https://schema.org”، “@type”: “FAQPage”، “mainEntity”: [{
“@type”: “Question”,
“name”: “خطای HTTP چیست؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “برخی اوقات برای دیدن یک صفحه وب با خطایی تحت عنوان HTTP با یک کد و پیغام کوتاه مواجه می‌شوید. این پیام‌ها عموما نشان‌دهنده مشکلی از سمت وب‌سرور می‌باشند. البته برخی مواقع اشتباهات انسانی نیز می توانند سبب بروز این خطا بشوند.”
}
},{
“@type”: “Question”,
“name”: “معروف ترین خطاهای HTTP کدامند؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “معروف‌ترین خطاهای HTTP عبارتند از:

خطای ۵۰۰ یا Internal Server Error
خطای ۴۰۳ یا Forbidden
۴۰۴ یا Not found
۴۰۰ یا Bad Request
۴۰۱ یا Unauthorized”
}
},{
“@type”: “Question”,
“name”: “تفاوت بین خطای ۴۰۰ و ۴۰۴ از HTTP در چیست؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “خطای ۴۰۴ اعلام می‌کند که resource‌ وجود ندارد. به بیانی دیگر، یا API فرخوانده‌‌شده و یا پیج درخواست‌شده وجود ندارد. اما در خطای ۴۰۰ منبع یا resource وجود دارد اما ورودی یا همان input اشتباه است.”
}
}]
}

چگونه رایج ترین خطاهای HTTP را برطرف کنیم؟ برای اولین بار در پارسوپک. به نظر می رسد.