خطای Reduce cookie size در GTmetrix چیست؟

خطای Reduce cookie size در GTmetrix به شما می‌گوید حجم کوکی‌های سایت شما بیش از حد بوده و برای جلوگیری از کاهش سرعت باید فکری به حال کوکی‌ها کنید. برای اینکه بفهمید دقیقا کجای کار وب‌سایتتان می‌لنگد و چطور می‌توان آن را برطرف کرد، GTmetrix به کمکتان می‌آید. این ابزار رایگان، مثل یک آزمایشگاه تخصصی، سرعت صفحات سایت را با معیارهای گوگل Page Speed و YSlow آنالیز می‌کند و یک گزارش مفصل با کلی پیشنهاد کاربردی برای رفع مشکلات احتمالی به شما می‌دهد. اگر در این گزارش چشمتان به خطای Reduce cookie size خورد، با خواندن این مقاله خواهید فهمید چگونه از شر آن خلاص شوید.

فهرست مطالب

عضویت در خبرنامه

با عضویت در خبرنامه‌ ایران‌سرور، اخبار و مقالات را به‌روز و دست اول دریافت کنید.

خطای Reduce cookie size در GTmetrix چیست؟

کوکی‌ها فایل‌های متنی کوچکی هستند که توسط وب‌سایت‌ها روی مرورگر شما و کاربران ذخیره می‌شوند. این فایل‌ها اطلاعاتی مانند تنظیمات کاربر، سابقه بازدیدها و اطلاعات ورود به سیستم را در خود دارد. برای مثال، زمانی که شما وارد سایتی می‌شوید و تیک‌ گزینه «مرا به خاطر بسپار» را می‌زنید، یک کوکی ذخیره می‌شود تا سری بعد نیازی به وارد کردن رمز عبورتان نباشید.

نحوه ارسال درخواست مرورگر به سرور

هرچند این کوکی‌های کارراه‌انداز به تجربه کاربری کمک می‌کنند اما حجم زیاد آن‌ها، حجم درخواست‌های HTTP سرور را بالا می‌برد و سرعت سایت کاهش پیدا می‌کند. اینجاست که GTmetrix با نمایش خطای «Reduce cookie size» به شما می‌گوید حجم کوکی‌های سایتتان بیش از حد استاندارد شده است.

خلاصه آموزش رفع خطای Reduce cookie size در GTmetrix
بخشتوضیح
تعریف خطاخطای Reduce cookie size زمانی رخ می‌دهد که حجم کوکی‌های سایت زیاد بوده و باعث کاهش سرعت لود صفحات می‌شود.
علت بروزذخیره اطلاعات غیرضروری در کوکی‌ها، ارسال کوکی برای فایل‌های استاتیک، و نداشتن تاریخ انقضا برای آن‌ها.
راهکار ۱کاهش حجم کوکی‌ها با حذف داده‌های اضافی و تعیین تاریخ انقضا با Expires یا Max-Age.
راهکار ۲کاهش تعداد کوکی‌ها با ادغام آن‌ها یا جلوگیری از ارسال کوکی برای فایل‌های CSS، JS و تصاویر.
راهکار ۳فعال‌سازی Gzip یا Brotli برای فشرده‌سازی هدرهای HTTP و کاهش حجم داده‌ها.
راهکار ۴بررسی و حذف کوکی‌های غیرضروری با استفاده از Developer Tools مرورگر.
راهکار ۵استفاده از زیردامنه‌های بدون کوکی (Cookie-free domains) برای فایل‌های استاتیک.
نتیجه نهاییبا بهینه‌سازی کوکی‌ها، سرعت سایت و امتیاز GTmetrix به شکل چشمگیری افزایش می‌یابد.

راهکار عملی برای رفع خطای Reduce cookie size در GTmetrix

برای رفع این خطا، می‌توانید از روش‌های زیر استفاده کنید:

۱. کاهش حجم کوکی‌ها

  • حذف اطلاعات اضافی

فقط اطلاعات ضروری برای عملکرد سایت را در کوکی‌ها ذخیره کنید. از ذخیره داده‌های غیرضروری مانند داده‌های تحلیل‌های غیر حیاتی یا اطلاعات کاربری که در همه درخواست‌ها لازم نیست، خودداری کنید. این داده‌ها را می‌توانید در session یا Local Storage ذخیره کنید.

  • استفاده از کوکی‌های کوچکتر

از نام‌های کوتاه برای کوکی‌ها (مانند id بجای userId) و مقادیر کوتاه و فشرده استفاده کنید. به جای رشته‌های طولانی، از شناسه‌های عددی یا روش‌های کدگذاری مانند base64 استفاده کنید.

  • تنظیم تاریخ انقضا

برای کوکی‌ها تاریخ انقضا تعیین کنید. کوکی‌هایی که تاریخ انقضای آن‌ها گذشته باشد، به‌صورت خودکار توسط مرورگر حذف می‌شوند. در این زمینه می‌توانید از Max-Age برای تعیین طول عمر کوکی به ثانیه و از Expires برای تعیین تاریخ دقیق انقضا استفاده کنید؛ برای مثال:

Set-Cookie: id=a3fWa; Expires=Thu, 31 Oct 2021 07:28:00 GMT;

در مثال بالا کوکی با نام id و مقدار a3fWa تا تاریخ پنجشنبه، ۳۱ اکتبر ۲۰۲۱، ساعت ۰۷:۲۸:۰۰ به وقت گرینویچ (GMT) معتبر است و بعد از آن منقضی می‌شود.

حالا فرض کنید به جای تاریخ می‌خواهید بگویید این کوکی برای مدت مشخصی مثلا یک ماه اعتبار دارد. ویژگی Max-Age همین کار را انجام می‌دهد. شما مدت زمان اعتبار کوکی را بر حسب ثانیه مشخص می‌کنید.

Set-Cookie: id=a3fWa; Max-Age=2592000

عدد ۲۵۹۲۰۰۰ نشان دهنده مدت زمان اعتبار کوکی بر حسب ثانیه است. ۲۵۹۲۰۰۰ ثانیه برابر با ۳۰ روز (۳۰ × ۲۴ × ۶۰ × ۶۰) است. یعنی این کوکی به مدت ۳۰ روز روی مرورگر کاربر باقی می‌ماند و سپس حذف می‌شود.

نحوه کاهش حجم کاهش حجم کوکی‌ها

۲. کاهش تعداد کوکی‌ها

  • ادغام کوکی‌ها

اگر چند کوکی دارید که اطلاعات مشابهی را ذخیره می‌کنند، آن‌ها را در یک کوکی ادغام کنید. درصورتی‌که از زبان سمت سرور مانند PHP استفاده می‌کنید، می‌توانید داده‌ها را به‌صورت آرایه درنظر گرفته و با json_encode به JSON تبدیل و در یک کوکی ذخیره کنید.

برای مثال در PHP می‌توانید دستور زیر را به‌کار ببرید:

$cookie_data = json_encode($data); setcookie("my_cookie", $cookie_data);
  • استفاده نکردن از کوکی برای فایل‌های استاتیک

فایل‌های استاتیک مانند تصاویر، CSS و JavaScript نیازی به کوکی ندارند. با تنظیم سرور (Apache یا Nginx) از ارسال کوکی برای این فایل‌ها جلوگیری کنید.

استفاده نکردن از کوکی برای فایل‌های استاتیک

برای مثال در Nginx می‌توانید از دستور add_header با مقدار خالی برای Set-Cookie استفاده کنید.

location ~* \.(jpg|jpeg|png|gif|css|js|ico)$ { add_header Set-Cookie ""; }

۳. استفاده از Gzip برای فشرده‌سازی

فشرده‌سازی Gzip (یا Brotli که جدیدتر و کارآمدتر است) حجم هدرهای HTTP از جمله کوکی‌ها را کمتر می‌کند. این قابلیت را باید روی سرور فعال کنید.

مثال:

.htaccess

(Apache – استفاده از mod_deflate):

apache

<IfModule mod_deflate.c>

AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript application/json

</IfModule>

۴. بررسی و حذف کوکی‌های اضافی

از ابزارهای توسعه‌دهنده مرورگر (Developer Tools) برای مشاهده و حذف کوکی‌های ذخیره شده برای سایت خود استفاده کنید. در Chrome DevTools به بخش Application و سپس Cookies بروید.

  • برای حذف کوکی، روی آن کلیک کرده و گزینه Delete selected در نوار بالا را انتخاب کنید.

Developer Tools

  • سپس روی عبارت clear all بزنید.

Developer Tools

۵. استفاده از زیردامنه‌های بدون کوکی (Cookie-free Domains)

برای فایل‌های استاتیک از ساب دامین جداگانه استفاده کنید. سرور را طوری تنظیم کنید که برای این زیردامنه هیچ کوکی‌ ارسال نشود. این روش بهترین راه برای جلوگیری از ارسال بی‌مورد کوکی‌ها است. به عنوان مثال، به جای استفاده از www.example.com/image.jpg از static.example.com/image.jpg استفاده کنید. برای تعیین ساب دامنه می‌توانید مقاله زیر را بخوانید:

راهنمای قدم‌به‌قدم ساخت ساب دامین در دایرکت ادمین

با CDN ایران سرور، رتبه سایتتان را در GTmetrix متحول کنید

آیا می‌خواهید سایتتان مثل جت پرواز کند و کاربران تجربه‌ای بی‌نظیر از سرعت سریع سایت داشته باشند؟ استفاده از زیردامنه‌های بدون کوکی، یک ترفند طلایی است که با CDN ایران سرور عملی می‌‌شود. با این فناوری، فایل‌های استاتیک شما از نزدیک‌ترین سرور به کاربر ارائه می‌شوند و سرعت بارگذاری به‌شدت بالا می‌رود. برای اطلاعات بیشتر همین حالا روی لینک زیر کلیک کنید.

خرید CDN

اوج سرعت سایت را با بهینه‌سازی کوکی‌ها تجربه کنید

در این مقاله به بررسی خطای «Reduce cookie size» در GTmetrix و راهکارهای عملی برای رفع آن پرداختیم. کوکی‌ها، این فایل‌های کوچک و به ظاهر بی‌ضرر، با حجم نامناسب خود، سرعت سایت شما را تحت تاثیر قرار می‌دهند. با رعایت نکاتی که گفته شد، از جمله:

  • کاهش حجم و تعداد کوکی‌ها
  • فشرده‌سازی کوکی‌ها
  • استفاده هوشمندانه از زیردامنه‌های بدون کوکی

می‌توانید این مشکل را به‌راحتی برطرف کرده و تجربه‌ای سریع و لذت‌بخش را برای کاربران خود رقم بزنید. اگر در این مسیر نیاز به راهنمایی دارید،‌کارشناسان ایران سرور مشتاق پاسخگویی به شما هستند. همین حالا می‌توانید با شماره ۰۲۱۲۲۰۹۲۰۳۷ تماس بگیرید.

سوالات متداول

۱. حداکثر حجم مجاز برای کوکی‌ها چقدر است؟

محدودیت دقیقی برای حجم هر کوکی وجود ندارد اما محدودیتی برای کل هدرهای درخواست HTTP وجود دارد که کوکی‌ها هم بخشی از آن هستند. توصیه می‌شود که میانگین حجم کوکی‌ها در هر دامنه زیر ۴۰۰ بایت باشد و از ارسال کوکی‌های بسیار بزرگ (بیش از ۱ کیلوبایت) خودداری شود.

۲. منظور از زیردامنه‌های بدون کوکی (Cookie-free Domains) چیست؟

زیردامنه‌های بدون کوکی به شما این امکان را می‌دهند که فایل‌های استاتیک را از یک آدرس جداگانه (مثل static.example.com) ارائه دهید، بدون اینکه هیچ کوکی‌ای با آن‌ها ارسال شود.

۳. چگونه می‌توان خطای «Reduce cookie size» در GTmetrix را برای سایت وردپرسی از بین برد؟

در وردپرس، می‌توانید از افزونه‌های بهینه‌سازی سرعت مانند WP Rocket، LiteSpeed Cache یا Perfmatters استفاده کنید که قابلیت‌هایی برای بهینه‌سازی کوکی‌ها، از جمله تنظیم انقضا و حذف کوکی‌های غیرضروری را ارائه می‌دهند.

منابع

gtmetrix

developer

linkedin

developer

gtmetrix

 

امتیاز شما به محتوا

نظر خود را در رابطه با مقاله‌ای که خواندید ثبت کنید. همچنین می‌توانید نظر خود را نظر در بخش نظرات بنویسید.

5/5 - (1 امتیاز)

دیدگاه شما

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *