HTTP چیست؟ تعریف ساده و کاربرد آن
در سادهترین تعریف برای HTTP چیست؟ باید بگوییم که “HTTP” یا “HyperText Transfer Protocol” پروتکل اصلی ارتباطی در وب است. پروتکل HTTP در سال ۱۹۹۱ توسط تیم «برنرز لی» معرفی شد، اولین استاندارد رسمی برای تبادل اطلاعات در اینترنت بود و امکان ساخت صفحات وب و برقراری ارتباط میان سرور و مرورگر را فراهم کرد. HTTP به زبان ساده یعنی پروتکلی که کمک میکند وقتی روی یک لینک کلیک، صفحهای را باز یا فرمی ارسال میکنید، درخواست شما به سرور منتقل شده و پاسخ مناسب به مرورگر بازگردد. این پروتکل اساس عملکرد همه وبسایتها و بسیاری از سرویسهای آنلاین است و بهدلیل سادگی، سرعت و قابلیت توسعه به یکی از مهمترین اجزای دنیای وب تبدیل شده است.
چرا به HTTP پروتکل متنباز گفته میشود؟
استانداردها، ساختار و نحوه عملکرد پروتکل HTTP بهنحوی است که آن را بهصورت عمومی و آزاد منتشر و برای همه توسعهدهندگان، شرکتها و سازمانها قابل استفاده، بررسی و توسعه میکند. هیچ محدودیت مالکیتی یا تجاری برای استفاده از HTTP وجود ندارد و هر فرد یا سیستمی میتواند بدون نیاز به مجوز خاص آن را در پروژههای خود پیادهسازی کند. همین دسترسی آزاد باعث شده HTTP بهسرعت به استاندارد جهانی وب تبدیل و امکان همکاری، یکپارچگی و نوآوری در مقیاس وسیع فراهم شود.
HTTP چگونه کار میکند؟ (مدل Request / Response)
HTTP بر اساس یک مدل ساده درخواست–پاسخ (Request/Response) کار میکند. مرورگر (Client) یک درخواست را برای سرور ارسال میکند و سرور پس از پردازش، پاسخ مناسب را برمیگرداند. برای مثال وقتی آدرس یک سایت را وارد میکنید، مرورگر یک درخواست GET به سرور میفرستد و سرور فایل HTML صفحه را در قالب یک پاسخ HTTP به شما تحویل میدهد. این چرخه در هر بار کلیک باز کردن صفحه یا ارسال فرم تکرار میشود.
ساختار یک درخواست HTTP
این تبادل در چارچوب یک مکانیزم “Handshaking” انجام میشود؛ ابتدا کلاینت با ارسال درخواست ارتباط را آغاز میکند، سپس سرور وجود و امکان ارائه اطلاعات را تایید کرده و در مرحله بعد دادهها را در بستههای کوچکتر تقسیم کرده و دادهها از طریق پروتکل TCP/IP منتقل میشوند؛TCP وظیفه تضمین صحت و ترتیب دادهها را دارد و در صورت استفاده از HTTPS، امنیت ارتباط توسط TLS تامین میشود. این ارتباط معمولا روی پورت ۸۰ برقرار میشود و مجموعه درخواستها و پاسخهایی که میان کلاینت و سرور رد و بدل میشود یک “Session” را تشکیل میدهد. این چرخه در هر بار باز کردن صفحه یا ارسال فرم تکرار میشود و اساس کارکرد وب مدرن را تشکیل میدهد.