پی سی سیتی

پی سی سیتی (http://p30city.net/index.php)
-   اینترنت و شبکه INternet & network (http://p30city.net/forumdisplay.php?f=8)
-   -   Http‌ به زبان ساده - يكشنبه 01 دي 1387 - ساعت 21:03 (http://p30city.net/showthread.php?t=7157)

امیر عباس انصاری 12-22-2008 03:54 AM

Http‌ به زبان ساده - يكشنبه 01 دي 1387 - ساعت 21:03
 
يكشنبه 01 دي 1387 - ساعت 21:03
شماره خبر:
100957549341

Http‌ به زبان ساده - يكشنبه 01 دي 1387 - ساعت 21:03



http://www.jamejamonline.ir/Media/im...0957539433.jpg



حتما تابه‌حال براي شما پيش آمده است كه از خود بپرسيد اين ‌http://‌ كه در ابتداي آدرس وب‌سايت‌ها مي‌گذارند يعني چه؟ كلمه‌اي كه قبل از ‌://‌ مي‌آيد، پروتكل انتقال پيام ميان سرويس‌دهنده و سرويس‌گيرنده را مشخص مي‌كند. از پركاربردترين اين پروتكل‌ها، ‌HTTP‌ است. ‌‌هما‌ن‌طور كه از نام ‌HTTP‌1‌ ‌برمي‌آيد، سرويسي استاندارد براي فرستادن درخواست و دريافت پاسخ بين سرويس‌دهنده و سرويس‌گيرنده است. در اينجا سرويس‌گيرنده كاربر هدف و سرويس‌دهنده وب‌سايت است. ‌ ‌
هر درخواست ‌HTTP‌ از سمت سرويس‌گيرنده (كه ممكن است به فرم ربات جستجوگر، مرورگر اينترنت و ... باشد) به‌عنوان كارگزار كاربر2‌ ‌تعريف مي‌شود. سرويس‌دهنده‌‌اي كه پاسخ مي‌دهد (و ممكن است اين پاسخ به‌شكل تصوير، متن و حتي فايل باشد)، سرور مبدا3‌ ‌ناميده مي‌شود. در اين ميان ممكن است كه كارگزار كاربر و سرور مبدا از واسط‌هاي متفاوتي مانند پروكسي‌ها، درگاه‌هاي شبكه4‌‌و تونل‌ها استفاده كنند. ‌

HTTP‌ ملزم به استفاده از پشته ‌TCP/IP‌ و لايه‌هاي آن نيست، با اين وجود محبوب‌ترين پروتكل در اينترنت است. درواقع اين ويژگي ‌HTTP‌ است كه مي‌تواند روي هر پروتكل ديگري در اينترنت يا شبكه‌هاي داخلي پياده‌سازي شود. ‌ ‌
شيوه عملكرد ‌HTTP‌ به‌طور ساده به‌اين صورت است: ‌ ‌

سرويس‌گيرنده، درخواست جديدي روي پروتكل ‌TCP‌ و پورتي خاص (به‌طور پيش‌فرض 80 در نظر گرفته مي‌شود) ايجاد مي‌كند. سرويس‌دهنده‌ ‌HTTP‌ روي آن پورت به‌انتظار مي‌نشيند تا سرويس‌گيرنده درخواست خود را ارسال كند. سرور به‌محض دريافت درخواست، پيامي كه مشخص‌كننده‌وضعيت5‌ ‌است (مانند "‌OK 200 1.1HTTP/‌)"، از طرف خود بازمي‌گرداند. در مرحله بعد، با توجه به درخواست ممكن است بدنه‌پيام ارسالي پيام خطا يا اطلاعات درخواستي كاربر باشد. ‌ ‌

به‌عنوان مثال، بياييد رفت و برگشت يك درخواست ساده را بررسي كنيم: ‌ ‌

1– بسته اطلاعاتي در پروتكل ‌HTTP‌ درخواستي

– درخواست، مانند:

‌1.1 GET/images/logo.gif HTTP/‌‌ ‌كه منبعي با نام ‌/images/logo.gif‌ را از سرور درخواست مي‌كند.

– مجموعه‌اي از سرآيندها، مانند زبان مقبول: انگليسي ‌(Accept-Language: en)‌

– يك خط خالي

– بدنه پيام اختياري.

توجه داشته باشيد كه منظور از خط خالي، ‌CRLF‌ است. در پروتكل ‌HTTP‌ نسخه 1.1، تمامي سرآيندهايي كه در بسته قرار مي‌گيرند اختياري‌اند. تنها سرآيند6‌ ‌اجباري است كه ميزبان را مشخص مي‌كند.

2– روش‌هاي درخواست

پروتكل ‌HTTP‌ هشت روش7‌ ‌را براي ارسال درخواست تعريف كرده است. اين روش‌ها، بسته به نوع تعامل سرويس‌گيرنده و سرويس‌دهنده به كار مي‌آيند. در اين‌جا مهم‌ترين آن‌ها را بررسي مي‌كنيم: ‌ ‌

‌HEAD‌: اين روش، هنگامي مفيد است كه تنها به اطلاعاتي كه از سوي سرويس‌دهنده ارسال مي‌شود، نياز داريم و با محتوي بسته كاري نداريم. ‌ ‌‌GET‌: به كمك ‌GET‌ مي‌توان اطلاعات را از طريق ‌URI‌8‌ ‌انتقال داد. اين موضوع وقتي مفيد است كه بخواهيم از سرويس‌گيرنده اطلاعاتي را منتقل كنيم. اما اطلاعات در بدنه نباشد. ‌ ‌

‌POST‌: اطلاعات را براي پردازش ارسال مي‌كند. اطلاعات در بدنه بسته ارسالي (بعد از خط خالي) قرار مي‌گيرند. ‌ ‌

3– بسته اطلاعاتي پاسخ در پروتكل ‌HTTP‌

يك بسته نمونه كه از طرف سرور ارسال مي‌شود، تقريبا مشابه شكل زير است: ‌ ‌

‌OK 200 1.1 HTTP/‌
‌ 2005 May 23 Date: Mon,‌
‌GMT 22:38:34‌
‌ 1.3.3.7Server: Apache/‌
‌(Unix) (Red-Hat/Linux)‌
‌ Jan 08 Last-Modified: Wed,‌
‌GMT 23:11:55 2003‌
‌Accept-Ranges: bytes‌
‌438 :Content-Length‌
‌ Content-Type: text/html;‌
‌8 charset=UTF-‌
خط اول، وضعيت پاسخ را مشخص مي‌كند. 200 به اين معنا است كه همه چيز مرتب است. سرآيندهاي بعدي، به‌ترتيب، تاريخ درخواست، نام سرويس‌دهنده، تاريخ اصلاح منبع درخواستي، نوع انتقال داده، طول داده و نوع انتقال داده است. ‌ ‌

منابع ‌ ‌

http://www.w3.org/Protocols
http://en.wikipedia.org/wiki/Http
پي‌نوشت‌ها

‌ HyperText Transfer Protocol. 1‌

User agent. 2‌

Origin Server. 3‌

Gateway. 4‌

Status line. 5‌

Host. 6‌

Method. 7‌

Uniform Resource Indicator. 8
محمدحسين كردوني



اکنون ساعت 12:04 AM برپایه ساعت جهانی (GMT - گرینویچ) +3.5 می باشد.

Powered by vBulletin® Version 3.8.4 Copyright , Jelsoft Enterprices مدیریت توسط کورش نعلینی
استفاده از مطالب پی سی سیتی بدون ذکر منبع هم پیگرد قانونی ندارد!! (این دیگه به انصاف خودتونه !!)
(اگر مطلبی از شما در سایت ما بدون ذکر نامتان استفاده شده مارا خبر کنید تا آنرا اصلاح کنیم)