فهرست سرآیندهای پروتکل انتقال ابرمتن

سرآیندهای پروتکل انتقال ابرمتن یا فیلدهای سرآیند  جزئی از پیام‌های ارسالی و دریافتی در پروتکل انتقال ابرمتن می‌باشند. این فیلدها پارامترهای یک ارتباط در این پروتکل را مشخص و مقداردهی می‌کنند.

 قالب کلی 
فیلدهای سرآیند بعد از خطِ وضعیت (اولین خط هر پیام) ارسال می‌شوند. این فیلدها به صورت متن ساده بوده و دارای یک نام یا کلید و یک یا چند مقدار هستند که با علامت کولون (:) از هم جدا می‌شوند. هر خطِ سرآیند می‌تواند حاوی یک فیلد سرآیند باشد. در واقع در پایانِ هر فیلد سرآیند باید حروف CR و LF قرار بگیرند. این حروف از حروف کنترلی در رایانش هستند که باعث رفتن به خط بعد می‌شوند. باید توجه داشت که مقدار یک فیلد سرآیند می‌تواند خالی نیز باشد. پایان تمامی سرآیندهای ارسال شده با ارسال یک خطِ خالی مشخص می‌شود. مثال زیر تعدادی از سرآیندهای ارسالی مرورگر وب فایرفاکس هنگام تماس با ویکی‌پدیای فارسی را نمایش می‌دهد: (توجه داشته باشید که حروف CR و LF در پایان هر خط قرار دارند اما دیده نمی‌شوند)

 Host: fa.wikipedia.org
 User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:23.0) Gecko/20100101 Firefox/23.0
 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

خطوط طولانی فیلدهای سرآیند می‌تواند به چند خط نیز شکسته شود. حرف فاصله (Space) یا حرف تَب (Tab) در آغازِ یک خط نمایان‌گر این مسئله است که این خط ادامهٔ خط قبلی می‌باشد.

 نام فیلد 
نام‌های استانداردی که باید توسط تمامی ابزارهایی که با پروتکل انتقال ابرمتن کار می‌کنند پیاده‌سازی شوند، توسط نیروی ضربت مهندسی اینترنت در RFC 2616 و تعدادی دیگری از RFCهای استاندارد مانند RFC 4229 تعریف شده‌است. نرم‌افزارهای دیگر می‌توانند برای استفاده‌های خود نام‌های دیگری که در این لیست وجود ندارند را انتخاب کنند.

سیستم ثبت‌نام سرآیند توسط آیانا کنترل و مدیریت می‌شود.

سرآیندهای اختصاصی نرم‌افزارها که استاندارد نیستند، براساس یک استاندارد قدیمی با حروف X- آغاز می‌شوند. در ماه جون سال ۲۰۱۲ این استاندارد به دلیل مشکلاتی که سرآیندهایی که بعدها استاندارد می‌شدند به آن‌ها برمی‌خوردند، منتفی گردید. برای مثال سرآیند X-Gzip که برای فشرده‌سازی هم در پیام‌های ارسالی و هم در پیام‌های دریافتی استفاده می‌شد، بعد از استاندارد شدن، باید به Gzip تغییر می‌کرد.

استفاده اجباری از پیش‌وند Downgraded- نیز برداشته شده‌است.

 مقدارهای فیلد 
تعداد کمی از مقادیر فیلدهای سرآیند (مانند فیلدهای User-Agent, Server و Via) دارای توضیحات خاص و تکمیلی هستند که این توضیحات نیز ضروری نبوده و می‌توانند توسط نرم‌افزارها نادیده گرفته‌شوند.

 محدودیت‌های حجم 
در تعریف استاندارد هیچ‌گونه محدودیتی برای اندازهٔ یک فیلد یا مقدارِ آن و تعداد فیلدها در نظر گرفته نشده‌است. بااین‌حال بسیاری از نرم‌افزارها به دلایل کاربردی و امنیتی محدودیت‌هایی را اعمال می‌کنند. برای مقال سرور وب آپاچی در نسخهٔ ۲٫۲ حجم هر سرآیند را به‌صورت پیش‌فرض به ۸۱۹۰ بایت محدود کرده‌است. همچنین به صورت پیش‌فرض حداکثر ۱۰۰ سرآیند در یک درخواست قابل قبول است.

 فیلدهای درخواست 

 نام فیلد توضیحات مثال وضعیت Accept نوع محتویات قابل قبول در پاسخ 
Accept: text/plain دائمی Accept-Encoding لیست کدگذاری‌ها و فشرده‌سازی‌های قابل قبول در پاسخ 
Accept-Encoding: gzip, deflate دائمی Cache-Control دستورهای مربوط به ذخیره‌سازی در حافظهٔ نهان را مشخص می‌کند. این دستورات باید توسط تمامی نرم‌افزارها و اجزای شبکه اجرا گردند 
Cache-Control: no-cache دائمی Connection عامل کاربر چه نوع ارتباطی را ترجیح می‌دهد 
Connection: keep-alive دائمی Cookie یک کوکی اچ‌تی‌تی‌پی که قبلاً با سرآیند Set-Cookie ارسال شده‌است. 
Cookie: $Version=1; Skin=new; دائمی Host نام دامنه اینترنتی سرور (میزبان مجازی) و شماره درگاه مورد استفاده. شماره درگاه مورد استفاده در صورتی که شمارهٔ درگاه استاندارد برای سرویس باشد، می‌تواند حذف شود. مثلاً برای وبسایت‌ها می‌توان شماره درگاه ۸۰ را حذف نمود. از نسخهٔ ۱٫۱ اچ‌تی‌تی‌پی استفاده از این سرآیند اجباری است. نام دامنه به کوچکی و بزرگی حروف حساس نیست. 
Host: fa.wikipedia.org:80
Host: fa.wikipedia.org دائمی User-Agent رشتهٔ مشخص کنندهٔ عامل کاربر 
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/21.0 دائمی

 فیلدهای پاسخ 

 نام فیلد توضیحات مثال وضعیت Accept-Ranges انواع داده‌های قسمت‌بندی شده قابل پشتیبانی 
Accept-Ranges: bytes دائمی Cache-Control نحوه و مدت ذخیره‌سازیِ منبع در حافظهٔ نهان. به واحد ثانیه 
Cache-Control: max-age=3600 دائمی Connection نحوهٔ مدیریت ارتباط برای اطلاعات بیشتر به اتصال پایا مراجعه کنید 
Connection: close دائمی Content-Length حجم بدنهٔ منبع (بدون در نظر گرفتن سرآیندها) به واحد بایت (بایت‌های ۸ بیتی) 
Content-Length: 348 دائمی Content-Type نوع دادهٔ ارسالی (مانند تصویر، صفحهٔ وب و …) 
Content-Type: text/html; charset=utf-8 دائمی

 جستارهای وابسته 
 پروتکل انتقال ابرمتن

 منابع 


رده:استانداردهای وب

رده:پروتکل انتقال ابرمتن
رده:فهرست‌های مرتبط با اینترنت