پروتکل انتقال ابرمتن: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
جز v1.39b - اصلاح شده توسط ابزار تمیرکاری> (دارای نویسههای نادرست که باید جایگزین شوند) برچسب: WPCleaner |
جز اصلاح نویسه نادرست با استفاده از AWB |
||
خط ۱:
{{پشته پروتکل اینترنت}}
'''منشور انتقال ابرمتن''' {{به انگلیسی|Hypertext Transfer Protocol}} {{مخفف انگلیسی|HTTP}} یک [[قرارداد (رایانه)|پروتکل]] [[لایه کاربرد|لایهٔ کاربرد (Application Layer)]] برای [[رایانش توزیعشده|
گسترش این پروتکل بر عهدهٔ [[نیروی ضربت مهندسی اینترنت]] (IETF) و [[کنسرسیوم وب جهانشمول]] (W3C) ) است. این امر در [[گروه کاری پروتکل انتقال ابرمتن]] (HTTP Working Group) صورت
== تاریخچه ==
[[پرونده:Tim Berners-Lee CP 2.jpg|بندانگشتی|چپ|150px|[[تیم برنرز لی]]، به وجود آورندهٔ [[وب جهانی]]]]
[[تیم برنرز لی]]، طراح و پیشنهاد دهنده [[وب جهانی]] که اکنون تحت عنوان WWW شناخته
اولین نسخهٔ مستند پروتکل انتقال ابرمتن نسخهٔ ۰٫۹ آن بود که در سال ۱۹۹۱ منتشر شد.
گروه کاری این پروتکل در ژانویه سال ۱۹۹۷ اولین استاندارد نسخهٔ ۱٫۱ را که در همان زمان توسط بسیاری از [[مرورگر|مرورگرها]] پشتیبانی
== ساختار کلی ==
پروتکل انتقال ابرمتن یک پروتکل درخواست و پاسخ در مدل [[مدل کارخواه-کارساز|کلاینت–سرور]]
مرورگر وب یک نمونه از [[عامل کاربر]] {{به انگلیسی|User Agent}} است. از دیگر عوامل کاربر
پروتکل انتقال ابرمتن یک پروتکل [[لایهٔ کاربرد]] است که در [[مجموعه پروتکل اینترنت]] طراحی شده و مورد استفاده قرار میگیرد. این پروتکل با فرض اینکه [[لایه حمل|لایهٔ حمل (Transport Layer)]] زیرین آن قابل اعتماد است طراحی شده و معمولاً از [[قرارداد هدایت انتقال|پروتکل هدایت انتقال (TCP)]] به عنوان لایهٔ زیرین استفاده
منابع HTTP همگی با یک [[یوآرآی|شناسانهٔ یکنواخت منبع (URI)]] یا به طور
نسخهٔ ۱٫۱ این پروتکل برخلاف نسخهٔ ۱٫۰ قابلیت استفاده از یک اتصال {{به انگلیسی|Connection}} برای چندین درخواست را دارد. مثلا
== جلسه ==
در پروتکل انتقال ابرمتن به
یک نمونه از ''خط وضعیت'' در پاسخ به یک درخواست مجاز:
خط ۳۱:
{{پایان چپچین}}
===
پروتکل انتقال ابرمتن
در نسخهٔ ۱٫۱ پنج روش جدید افزوده شد<ref name="rfc_2616" /><sup>[بخش ۹]</sup>: OPTIONS، PUT، DELETE، TRACE و CONNECT. از آنجایی که عملکرد این
; '''GET''': درخواست نمایش منبعِ
; '''HEAD''': این روش دقیقا مانند روش GET عمل
; '''POST''': در این روش به همراه بستهٔ درخواست اطلاعاتی نیز فرستاده
; '''PUT''': در این روش منبعی به همراه بستهٔ درخواست ارسال شده و از سرور تقاضا
; '''DELETE''': از سرور درخواست
; '''TRACE''': در این روش سرور اطلاعات ارسال شده را ''عیناً'' به کلاینت باز
; '''OPTIONS''': از سرور تقاضا
; '''CONNECT''': بستهٔ پروتکل ابرمتن را به یک تونل TCP/IP تبدیل
; '''PATCH''': این روش که در سال ۲۰۱۰ به پروتکل افزوده شد، برای ایجاد تغییرات جزیی بر روی منابع استفاده
سرورهای وب موظف هستند حداقل
=== وضعیت جلسه ===
پروتکل انتقال ابرمتن یک پروتکل Stateless
* [[کوکی اچتیتیپی|کوکی]]
* استفاده از متغیر های پنهان در
* استفاده از متغیر های موجود در رشتهٔ درخواست. مانند: index.php?session_id=some_unique_id
== کدهای وضعیت ==
از نسخهٔ ۱٫۰ پروتکل انتقال ابرمتن به بعد، خطِ اولِ پاسخِ سرور تحت عنوان ''خط وضعیت'' شناخته شده است. این خط حاوی یک کد عددی (مانند ۴۰۴) که به عنوان ''کد وضعیت'' شناخته
کدهای وضعیت پروتکل انتقال ابرمتن به ۵ دستهٔ کلی تقسیم
* کدهای 1xx یا اطلاعاتی: این کدها با عدد ۱ آغاز
* کدهای 2xx یا موفقیت: این کدها با عدد ۲ آغاز
* کدهای 3xx یا تغییر مسیر: این کدها با عدد ۳ آغاز
* کدهای 4xx یا خطای کلاینت: این کدها با عدد ۴ آغاز
* کدهای 5xx یا خطای سرور: این کدها با عدد ۵ آغاز
''علت وضعیت'' هایی که در متن تعریف پروتکل
== مثال ==
خط ۷۲:
Host: www.wikipedia.com
{{پایان چپچین}}
در درخواست کلاینت، خط اول روش، [[نشانی وب|نشانی]] و نسخهٔ پروتکل استفاده شده در درخواست را مشخص
=== پاسخ سرور ===
خط ۹۳:
</html>
{{پایان چپچین}}
در پاسخ سرور، خط اول، که خط وضعیت نامیده
== جستارهای وابسته ==
|