کوکی ها در مقابل جلسات
HTTP بدون حالت است، به این معنی که وقتی مشتری صفحه را از سرور دریافت می کند و اتصال بسته می شود، هر داده ذخیره شده از بین می رود. کوکی ها و جلسات دو راه حل برای این مشکل هستند. کوکی اطلاعات بسیار کوچکی است که توسط وب سایت در دستگاه مشتری ذخیره می شود و هر بار که صفحه ای درخواست می شود به سرور بازگردانده می شود. Session روشی برای ذخیره اطلاعات بر روی سرور بر خلاف دستگاه مشتری است.
کوکی ها چیست؟
Netscape مفهوم کوکی ها را با مرورگر وب Netscape Navigator خود معرفی کرد.کوکی اطلاعات بسیار کوچکی است که توسط وب سایت در دستگاه مشتری ذخیره می شود و هر بار که صفحه ای درخواست می شود به سرور بازگردانده می شود. از آنجایی که کوکیها هر بار برگردانده میشوند، حداقل مقدار داده باید ذخیره شود تا پهنای باند ذخیره شود. یک وب سایت فقط کوکی نوشته شده توسط خود را می خواند، بنابراین وسیله ای امن برای ذخیره اطلاعات در صفحات مختلف فراهم می کند. با این حال، کوکیها در ابتدا نام خوبی نداشتند، زیرا شایعاتی وجود داشت که ادعا میکرد کوکیها میتوانند تمام اطلاعات روی هارد دیسک را بخوانند. البته این تصور غلط از بین رفت زیرا مردم متوجه شدند که کوکی ها در واقع بی ضرر هستند و اکنون بسیار مورد پذیرش قرار گرفته اند. کوکی ها طول عمر خاصی دارند که توسط سازندگان آنها تعریف شده است. در پایان این، یک کوکی منقضی می شود. کوکیها اغلب اطلاعاتی مانند تعداد دفعات بازدید کاربر، زمان بازدید، روی چه بنرهایی کلیک شدهاند، تنظیمات برگزیده کاربر و غیره را دنبال میکنند. کوکیها معمولاً برای ذخیره اطلاعات مورد نیاز برای دورههای کوتاهتر استفاده میشوند.اگر اطلاعاتی مانند آدرس های ایمیل (که باید برای مدت طولانی تری نگهداری شوند) نیاز به ذخیره سازی داشته باشند، برنامه نویس باید به جای کوکی ها از پایگاه داده استفاده کند. با این حال، اگر اطلاعات شخصی در کوکیها ذخیره میشود، باید از رمزگذاری برای بهبود امنیت استفاده شود.
جلسات چیست؟
Session وسیله دیگری برای ذخیره اطلاعات در سراسر صفحات است. اما این کار در سمت سرور انجام می شود. Session در واقع از یک کوکی سمت سرور و یک کوکی سمت سرویس گیرنده برای ذخیره داده ها استفاده می کند. اما کوکی سمت سرویس گیرنده فقط یک مرجع به داده های مربوطه ذخیره شده در سرور ذخیره می کند. هنگامی که کاربر از وب سایت بازدید می کند، کوکی سمت کلاینت (با شماره مرجع) به سرور ارسال می شود و سرور از این شماره برای بارگذاری داده های کاربر استفاده می کند. کوکی سمت سرور می تواند حجم زیادی از داده ها را ذخیره کند. از آنجایی که کوکی سمت مشتری فقط شماره مرجع را ذخیره می کند، پهنای باند به شدت ذخیره می شود. از آنجایی که داده های جلسه در سرور ذخیره می شوند، بسیار محافظت می شوند.
تفاوت بین کوکی ها و جلسات چیست؟
اگرچه کوکی ها و جلسات دو راه برای ذخیره اطلاعات در صفحات وب هستند، اما تفاوت های خود را دارند. کوکیها فقط کوکیهای سمت کلاینت را ذخیره میکنند، در حالی که جلسات از کوکیهای سمت کلاینت و سمت سرور استفاده میکنند. Session ها می توانند مقادیر زیادی داده را در مقایسه با کوکی ها ذخیره کنند. از آنجا که جلسات فقط شماره مرجع را در دستگاه مشتری ذخیره می کنند، استفاده از پهنای باند در مقایسه با استفاده از کوکی ها کمتر است. دادههای جلسه نسبتاً امنتر هستند، زیرا کوکیها میتوانند توسط کاربر دستکاری شوند.