HTTP چیست ؟

HTTP چیست ؟

HTTP یا Hypertext Transfer Protocol، پروتکلی برای انتقال داده‌ها در وب است که مرورگرها و سرورها از آن برای ارتباط و ارسال اطلاعات استفاده می‌کنند. HTTP پایه و اساس عملکرد وب است و در بسیاری از وب‌سایت‌ها و برنامه‌های تحت وب به کار می‌رود.

ویژگی‌های اصلی HTTP

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

  2. درخواست‌ها و پاسخ‌ها: در HTTP، مرورگر (یا کلاینت) درخواست‌هایی را به سرور ارسال می‌کند و سرور پاسخی به آن درخواست می‌دهد. این درخواست‌ها می‌توانند شامل دستورات مختلف مانند GET، POST، PUT و DELETE باشند.

  3. پورت‌های پیش‌فرض: به صورت پیش‌فرض، HTTP از پورت 80 استفاده می‌کند. در HTTP امن یا HTTPS، پورت 443 به‌کار می‌رود.

  4. ساختار URL: URL یا آدرس وب برای دسترسی به یک منبع از قوانین خاصی پیروی می‌کند که شامل پروتکل (http:// یا https://)، دامنه و مسیر منابع است.

  5. نسخه‌ها: پروتکل HTTP نسخه‌های مختلفی دارد، از جمله:

    • HTTP/1.0: اولین نسخه عمومی با ویژگی‌های پایه مانند GET و POST.
    • HTTP/1.1: نسخه‌ای با بهبودهای مهم مثل استفاده از Keep-Alive.
    • HTTP/2: سرعت و عملکرد بهبود یافته با امکان ارسال همزمان چندین درخواست.
    • HTTP/3: استفاده از پروتکل QUIC که سرعت و امنیت را ارتقا داده است.

HTTP امن (HTTPS)

HTTPS نسخه امن HTTP است که از پروتکل SSL/TLS برای رمزنگاری اطلاعات استفاده می‌کند تا امنیت تبادل داده‌ها بین کاربر و سرور را تضمین کند.

ساختار درخواست HTTP

یک درخواست HTTP شامل موارد زیر است:

  • خط درخواست (Request Line): شامل متد، URL و نسخه پروتکل.
  • سربرگ‌ها (Headers): شامل اطلاعات اضافی مثل نوع محتوا و احراز هویت.
  • بدنه (Body): اطلاعاتی که با متدهایی مثل POST ارسال می‌شود.

ساختار پاسخ HTTP

پاسخ HTTP شامل موارد زیر است:

  • خط وضعیت (Status Line): شامل نسخه HTTP، کد وضعیت و توضیحات کد وضعیت.
  • سربرگ‌ها: اطلاعات اضافی مثل نوع محتوا و طول محتوا.
  • بدنه: محتوای اصلی پاسخ که معمولاً HTML، JSON، یا فایل‌های دیگر است.

کدهای وضعیت HTTP

کدهای وضعیت در HTTP نشان‌دهنده نتیجه درخواست هستند:

  • 2xx (موفقیت): درخواست با موفقیت پردازش شده است، مثل 200 OK.
  • 3xx (انتقال): درخواست باید به آدرسی دیگر هدایت شود، مثل 301 Moved Permanently.
  • 4xx (خطای کاربر): درخواست مشکلی دارد، مثل 404 Not Found.
  • 5xx (خطای سرور): سرور نتوانسته درخواست را پردازش کند، مثل 500 Internal Server Error.

HTTP به مرور زمان بهبود یافته و امنیت، سرعت، و کارایی بیشتری را برای وب فراهم کرده است.

error: شماره تماس : 09193156178