دانستنی‌های دنیای وب و زیرساخت

HTTP چیست؟ درخواست، پاسخ و تفاوت با HTTPS

HTTP پروتکل درخواست و پاسخ وب است: کلاینت منبعی را می‌خواهد و سرور پاسخ می‌دهد. نشانی، روش درخواست، هدرها، کد وضعیت و گاهی بدنه، بخش‌های این گفتگو هستند. نمایش یک خطا در مرورگر الزاماً به معنی یک خطای یکسان در همهٔ لایه‌ها نیست.

نمودار درخواست منبع، جزئیات درخواست، پاسخ سرور و تفسیر وضعیت HTTP

HTTP پروتکل درخواست و پاسخ وب است: کلاینت منبعی را می‌خواهد و سرور پاسخ می‌دهد. نشانی، روش درخواست، هدرها، کد وضعیت و گاهی بدنه، بخش‌های این گفتگو هستند. نمایش یک خطا در مرورگر الزاماً به معنی یک خطای یکسان در همهٔ لایه‌ها نیست.

درخواست و پاسخ چه دارند؟

روش‌هایی مانند GET برای دریافت منبع و POST برای فرستادن داده، نقش درخواست را مشخص می‌کنند. URL مقصد و هدرها اطلاعات تکمیلی را می‌رسانند. پاسخ شامل کد وضعیت، هدرها و در صورت نیاز بدنه است؛ بدنه می‌تواند HTML، تصویر یا دادهٔ دیگری باشد.

HTTP ذاتاً وضعیت درخواست‌های مستقل را نگه نمی‌دارد. برنامه‌ها برای قابلیت‌هایی مانند ورود و نشست، سازوکارهایی نظیر کوکی را به کار می‌برند. موفقیت یک درخواست به معنی موفقیت تمام درخواست‌های بعدی، فایل‌های صفحه یا عملیات حساب کاربر نیست.

کدهای وضعیت و حدود تفسیر آن‌ها

نمونهمعنی کلی
200درخواست با موفقیت پاسخ گرفته است.
301منبع به مقصد دیگری منتقل شده و پاسخ، نشانی انتقال را اعلام می‌کند.
403سرور دسترسی به درخواست را رد کرده است.
404منبع درخواستی پیدا نشده است.
500سرور در پردازش درخواست با خطای داخلی روبه‌رو شده است.

کد، نقطهٔ شروع تشخیص است. برای مثال، 200 به‌تنهایی درست‌بودن محتوای صفحه یا صحت پرداخت را ثابت نمی‌کند. 404 هم لزوماً به معنی قطع کل سرور نیست؛ مسیر خاص می‌تواند اشتباه یا حذف شده باشد.

HTTPS و تفکیک خطاهای ارتباط

HTTPS استفاده از HTTP با حفاظت TLS است؛ محرمانگی مسیر ارتباط و اعتبار هویت سرور به تنظیم درست اتصال و گواهی وابسته است. این حفاظت جای امنیت خود برنامه یا مجوز کاربران را نمی‌گیرد.

در تشخیص مشکل، ابتدا مشخص کنید نام دامنه حل می‌شود، اتصال برقرار می‌شود و سپس چه پاسخ HTTP برمی‌گردد. خطای DNS، خطای گواهی و پاسخ خطای برنامه علت و اقدام یکسان ندارند. گزارش Network مرورگر و لاگ مجاز سرور را برای همان URL و زمان بررسی کنید و اطلاعات حساس درخواست را عمومی نکنید.

کدهای خطای HTTP و اولین بررسی

کدمعنی و مسیر بررسی
400درخواست نامعتبر؛ ساختار و دادهٔ درخواست را بررسی کنید.
401احراز هویت معتبر برای منبع لازم است؛ با ممنوعیت دسترسی یکسان نیست.
403سرور درخواست را فهمیده ولی دسترسی را نمی‌پذیرد؛ سیاست مجوز را بررسی کنید.
404منبع پیدا نشده؛ URL و مسیر و انتشار مقصد را کنترل کنید.
408مهلت دریافت درخواست در سرور تمام شده است.
500خطای عمومی سرور؛ علت دقیق از کد به‌تنهایی معلوم نیست.
501قابلیت لازم درخواست پشتیبانی یا پیاده‌سازی نشده است.
502دروازه یا پراکسی پاسخ نامعتبر از سرور بالادست گرفته است.
503سرویس موقتاً در دسترس نیست؛ مانند نگهداری یا بار زیاد.
504دروازه یا پراکسی در انتظار پاسخ بالادست به مهلت رسیده است.

کد را از پاسخ همان درخواست بگیرید؛ عنوان یک صفحهٔ خطا می‌تواند با وضعیت واقعی HTTP متفاوت باشد. URL، روش درخواست و زمان را ثبت و لاگ مجاز برنامه، وب‌سرور یا پراکسی را تطبیق دهید. همهٔ خطاهای 5xx از کمبود RAM نیستند و 403 را نباید با بازکردن عمومی مجوزها رفع کرد. برای درخواست تغییردهنده مانند پرداخت، پیش از تکرار اثر درخواست اول را مشخص کنید.

نظر شما مهم است

این مطلب چقدر برایتان مفید بود؟

اولین نفری باشید که به این مطلب امتیاز می‌دهد.

ادامه گفت‌وگو

این مطلب را به اشتراک بگذارید

اگر برایتان مفید بود، آن را برای همکاران و دوستانتان بفرستید.

برای ادامه مطالعه
همه مطالب مجله
قدم بعدی را با هم برداریم

برای شروع، یک گفت‌وگو کافی‌ست.

از انتخاب سرور تا ساخت وب‌سایت، مسیر مناسب کسب‌وکارتان را پیدا کنیم.

تماس با آفاق هاست 021-91092061