سرعت پایین سایت فقط کاربران را معطل نمی‌کند، گاهی باعث می‌شود قبل از دیدن محصول یا خواندن مقاله، صفحه را ببندند. یکی از ابزارهایی که برای بهبود سرعت سایت وردپرسی در اختیار داریم، افزونه لایت اسپید کش است. این افزونه امکانات مختلفی برای کش صفحات، بهینه‌سازی کدها، کاهش حجم تصاویر و پاک‌سازی پایگاه داده دارد.

قبلاً در مهارت‌وب سراغ آموزش WP Rocket رفتیم. این‌بار می‌خواهیم افزونه LiteSpeed Cache را نصب کنیم و بخش‌های مختلف آن را قدم‌به‌قدم بشناسیم. هدفمان این نیست که همه گزینه‌ها را روشن کنیم، می‌خواهیم بدانیم هر تنظیم چه کاری انجام می‌دهد و کدام‌یک با سایت ما سازگار است.

در این مقاله چی قراره یاد بگیریم؟

قبل از نصب افزونه لایت اسپید کش، وب‌سرور سایت را بررسی کنیم

قبل از نصب، می‌خواهیم ببینیم وب‌سرور هاستمان چیه و بعد افزونه لایت اسپید کش را نصب کنیم. این بررسی، قدم اول آموزش لایت اسپید کش برای سایتمان است.

اولین نکته‌ای که در آموزش مطرح می‌شود، نوع وب‌سرور هاست است. نصب افزونه لایت اسپید کش روی وردپرس به‌تنهایی یعنی این‌طور نیست که همه قابلیت‌های کش سمت سرور هم در اختیارمان قرار می‌گیرد. برای استفاده از این بخش، زیرساخت هاست اهمیت دارد، برای همین در این آموزش از هاستی با وب‌سرور LiteSpeed استفاده می‌کنیم.

چطور نوع وب‌سرور را در وردپرس ببینیم؟

  1. از پیشخوان وردپرس وارد «ابزارها ← سلامت سایت» شویم.
  2. تب «اطلاعات» را باز کنیم.
  3. بخش «سرور» را باز کنیم و روبه‌روی «سرور وب» نام وب‌سرور را ببینیم.

در این قسمت، روبه‌روی سرور وب عبارت LiteSpeed را می‌بینیم. اگر نام دیگری مثل Apache یا Nginx دیدیم، درباره امکانات کش قابل استفاده روی هاستمان از پشتیبانی سؤال کنیم یا از افزونه wp-rocket استفاده کنیم.. قابلیت‌های بهینه‌سازی افزونه را نباید با کش صفحات سمت سرور یکی بدانیم.

مشخصات سرور و نام LiteSpeed در سلامت سایت وردپرس
مشخصات سرور و نام LiteSpeed در سلامت سایت وردپرس

نصب افزونه LiteSpeed Cache از مخزن وردپرس

از مسیر «افزونه‌ها ← افزودن افزونه» عبارت LiteSpeed Cache را جست‌وجو کنیم. افزونه‌ای را انتخاب کنیم که سازنده آن LiteSpeed Technologies است، روی «هم‌اکنون نصب نمایید» بزنیم و بعد از نصب، آن را فعال کنیم.

بعد از فعال‌سازی، منوی LiteSpeed Cache به پیشخوان اضافه می‌شود و از همان‌جا به تنظیمات دسترسی داریم. نام انگلیسی درست افزونه LiteSpeed Cache است، بنابراین برای پیدا کردن آن در مخزن، همین عبارت را بنویسیم.

نتیجه جست‌وجوی افزونه LiteSpeed Cache در مخزن وردپرس
نتیجه جست‌وجوی افزونه LiteSpeed Cache در مخزن وردپرس

آشنایی با پیشخوان و تنظیمات از پیش تعیین‌شده

حالا می‌رویم سراغ پیشخوان افزونه لایت اسپید کش و تنظیمات آماده‌اش. می‌خواهیم ببینیم هر بخش چه چیزی در اختیارمان می‌گذارد و پریست‌ها کجا به کارمان می‌آیند.

پیشخوان افزونه چه اطلاعاتی نمایش می‌دهد؟

پیشخوان LiteSpeed Cache یک نمای کلی از وضعیت افزونه و سرویس‌های آن به ما می‌دهد. از این بخش می‌توانیم گزارش‌ها و وضعیت امکانات فعال را ببینیم. برای تنظیم دقیق هر قابلیت، باید سراغ منوی مربوط به همان بخش برویم.

پریست‌ها یا Presets چه کاربردی دارند؟

پریست‌ها مجموعه‌ای از تنظیمات آماده‌اند که با یک انتخاب، چند قابلیت را هم‌زمان فعال یا غیرفعال می‌کنند. سطح این تنظیمات از ساده‌تر تا سخت‌گیرانه‌تر متفاوت است. اگر زمان کافی نداریم، می‌توانیم از آن‌ها کمک بگیریم، اما تنظیم آماده تضمین نمی‌کند که برای قالب، افزونه‌ها و محتوای سایتمان مناسب باشد.

در این آموزش تنظیمات را دستی بررسی می‌کنیم. این روش کمک می‌کند اگر مشکلی به وجود آمد، بدانیم کدام گزینه را تغییر داده‌ایم و راحت‌تر آن را پیدا کنیم.

جدول مقایسه پریست‌های ملزومات، پایه، پیشرفته، تهاجمی و افراطی
جدول مقایسه پریست‌های ملزومات، پایه، پیشرفته، تهاجمی و افراطی

درون‌ریزی، برون‌بری و بازنشانی تنظیمات

در بخش Import / Export می‌توانیم از تنظیمات خروجی بگیریم، آن را برای استفاده بعدی نگه داریم یا فایل تنظیمات قبلی را وارد کنیم. این قابلیت برای بکاپ گرفتن از پیکربندی هم کاربرد دارد. گزینه بازنشانی هم تنظیمات را به حالت پیش‌فرض برمی‌گرداند، پس بدون نیاز سراغ آن نرویم.

اتصال افزونه لایت اسپید کش به QUIC.cloud

در این قسمت می‌خواهیم افزونه لایت اسپید کش را به QUIC.cloud وصل کنیم تا بتوانیم از امکانات ابری‌اش استفاده کنیم. قدم‌به‌قدم اتصال را پیش می‌بریم و وضعیتش را هم بررسی می‌کنیم.

QUIC.cloud چیست و چرا به آن نیاز داریم؟

QUIC.cloud سرویس ابری مرتبط با LiteSpeed است. برخی عملیات افزونه، مثل بهینه‌سازی تصاویر و تولید CSS موردنیاز، با کمک این سرویس انجام می‌شوند و نتیجه به سایت برمی‌گردد. بنابراین برای استفاده از امکانات ابری، باید سایت را به آن متصل کنیم.

در این قسمت می‌خواهیم خدمات رایگان و اعتبار سرویس را بررسی کنیم. قبل از استفاده گسترده، وضعیت سهمیه همان سرویس را در حساب خود بررسی کنیم، چون همه خدمات QUIC.cloud شرایط یکسانی ندارند و محدودیت‌ها ممکن است تغییر کنند.

مراحل اتصال سایت به QUIC.cloud

  1. در منوی «عمومی» وارد تب خدمات آنلاین شویم و دکمه فعال‌سازی خدمات QUIC.cloud را بزنیم.
  2. بعد از شناسایی آدرس سایت، وارد حساب شویم یا ثبت‌نام کنیم.
  3. اگر کد تأیید برای ایمیلمان ارسال شد، آن را وارد کنیم.
  4. در این آموزش CDN را فعال نمی‌کنیم، در مرحله مربوط به آن، با گزینه Finish Setup / Back to Dashboard به پیشخوان برگردید.
  5. وضعیت اتصال را در وردپرس بررسی کنیم.

ظاهر دکمه‌ها و مراحل ممکن است در نسخه‌های مختلف کمی متفاوت باشد. اتصال به خدمات آنلاین و فعال‌کردن CDN را هم دو مرحله جدا در نظر بگیریم.

راه‌اندازی اتصال QUIC.cloud در تب خدمات آنلاین
راه‌اندازی اتصال QUIC.cloud در تب خدمات آنلاین

تنظیمات عمومی افزونه LiteSpeed Cache

حالا تنظیمات عمومی افزونه لایت اسپید کش را یکی‌یکی بررسی می‌کنیم. فعلاً قرار نیست همه گزینه‌ها را روشن کنیم، اول می‌بینیم هرکدام به چه دردی می‌خورند.

ارتقای خودکار افزونه

با روشن‌کردن ارتقای خودکار، نسخه‌های جدید افزونه بدون به‌روزرسانی دستی نصب می‌شوند. در این آموزش افزونه را دستی به‌روز می‌کنیم تا بعد از هر تغییر، عملکرد سایت را بررسی کنیم. اگر این گزینه را خاموش می‌کنیم، پیگیری منظم یادمان باشد به‌روزرسانی‌ها را مرتب پیگیری کنیم.

حالت مهمان یا Guest Mode

حالت مهمان روی نحوه نمایش نسخه اولیه صفحه در اولین درخواست بازدیدکننده اثر می‌گذارد. فعلاً این قابلیت را خاموش می‌گذاریم تا تنظیمات کش و تفاوت نسخه‌های سایت را با کنترل بیشتری بررسی کنیم. برای شروع این آموزش هم آن را خاموش نگه می‌داریم.

این گزینه را بدون بررسی صفحات پویا فعال نکنیم، مخصوصاً اگر سایتمان قیمت، زبان یا محتوای متفاوتی برای گروه‌های مختلف کاربران نمایش می‌دهد.

بهینه‌سازی مهمان یا Guest Optimization

بهینه‌سازی مهمان به حالت مهمان مرتبط است و می‌تواند سطح بهینه‌سازی درخواست‌های مشمول آن را افزایش دهد. این گزینه را هم فعلاً خاموش می‌گذاریم و امکانات بهینه‌سازی را جداگانه تنظیم و تست می‌کنیم. به این ترتیب فقط به امتیاز ابزار تست سرعت تکیه نمی‌کنیم و تجربه واقعی کاربران را هم می‌سنجیم.

گزینه‌های ارتقای خودکار، حالت مهمان و بهینه‌سازی مهمان
گزینه‌های ارتقای خودکار، حالت مهمان و بهینه‌سازی مهمان

IP سرور

در این قسمت می‌توانیم IP سرور اصلی سایت را وارد کنیم تا سرویس‌های مرتبط مستقیم‌تر به آن دسترسی داشته باشند. IP را از پنل هاست یا پشتیبانی بگیریم و بعد از ثبت، عملکرد اتصال را بررسی کنیم. اگر سایت پشت CDN است، IP دامنه لزوماً همان IP سرور اصلی نیست.

آگاه‌سازی‌ها یا Notifications

این گزینه برای نمایش اعلان‌های اختیاری افزونه است. اگر نمی‌خواهیم خبرها و اطلاع‌رسانی‌های آن در پیشخوان نمایش داده شوند، می‌توانیم خاموشش کنیم. برای خلوت‌ترشدن پیشخوان، این گزینه را خاموش می‌گذاریم.

مهم‌ترین نکته آموزش: همه تنظیمات را یک‌باره روشن نکنیم. نتیجه هر گزینه به هاست، قالب، افزونه‌ها و محتوای سایت بستگی دارد. هر بار یک تغییر انجام بدهیم، ذخیره کنیم و بعد ظاهر و عملکرد سایت را بررسی کنیم.

تنظیمات کش صفحات در افزونه لایت اسپید کش

در این بخش از تنظیمات لایت اسپید کش، سراغ کش صفحات می‌رویم. می‌خواهیم مشخص کنیم افزونه لایت اسپید کش برای کاربران مختلف چه رفتاری داشته باشد و کدام صفحه‌ها را کش کند.

کش چیست و چه کمکی به سرعت سایت می‌کند؟

وقتی یک صفحه وردپرسی باز می‌شود، معمولاً پردازش‌هایی برای آماده‌کردن خروجی آن انجام می‌گیرد. کش صفحات یک نسخه آماده از خروجی صفحه نگه می‌دارد تا برای درخواست‌های بعدی، همه این مراحل دوباره تکرار نشوند. به زبان ساده، به‌جای اینکه هر بار صفحه را از صفر بسازیم، از خروجی آماده استفاده می‌کنیم.

البته این نسخه باید با تغییرات سایت هماهنگ بماند. برای همین در ادامه عمر کش، پاک‌سازی و استثناها را تنظیم می‌کنیم.

فعال‌کردن کش یا Enable Cache

از تب کش، گزینه اصلی Enable Cache را روشن کنیم تا کش صفحات، در صورت پشتیبانی زیرساخت هاست، فعال شود. این نقطه شروع تنظیمات کش است، گزینه‌های بعدی مشخص می‌کنند برای چه نوع درخواست‌ها یا کاربرانی رفتار متفاوتی داشته باشیم.

فعال‌کردن کش و گزینه‌های کش کاربران واردشده، نظردهندگان و REST API
فعال‌کردن کش و گزینه‌های کش کاربران واردشده، نظردهندگان و REST API

کش کاربران واردشده

کاربری که وارد حسابش شده ممکن است نام، سفارش‌ها یا اطلاعات اختصاصی خودش را ببیند. گزینه Cache Logged-in Users برای کش خصوصی کاربران واردشده است و نباید آن را با کش عمومی صفحات یکی بدانیم. اگر از آن استفاده می‌کنیم، بخش‌های شخصی سایت را با چند حساب مختلف بررسی کنیم.

فعال‌بودن این گزینه به‌تنهایی دلیل مناسبی برای کش‌کردن عمومی حساب کاربری یا صفحات حساس فروشگاه نیست.

کش نظر‌دهندگان

بعد از ارسال دیدگاهی که منتظر تأیید است، ممکن است پیام یا محتوایی مخصوص همان نظر‌دهنده نمایش داده شود. Cache Commenters رفتار کش این بازدیدکنندگان را مدیریت می‌کند. در این قسمت آن را روشن می‌کنیم، بعد از فعال‌سازی، روند ثبت دیدگاه را هم تست کنیم.

کش REST API

REST API یکی از راه‌های دریافت داده‌های وردپرس توسط برنامه‌ها و افزونه‌هاست. مثلاً آدرس زیر اطلاعات نوشته‌ها را برمی‌گرداند:

https://example.com/wp-json/wp/v2/posts

با روشن‌کردن Cache REST API، پاسخ‌های قابل کش این بخش می‌توانند کش شوند. در این آموزش آن را فعال می‌کنیم، اگر سایتمان از API برای اطلاعات پویا یا اختصاصی استفاده می‌کند، نتیجه را جداگانه بررسی کنیم.

کش صفحه ورود

پیشنهاد این آموزش، خاموش‌بودن Cache Login Page است. صفحه ورود وردپرس را از صفحات عمومی محتوا جدا در نظر بگیریم. اگر با افزونه‌ای مثل Digits صفحه ورود اختصاصی ساخته‌اید، آدرس آن را هم در بخش استثناهای کش بررسی کنیم.

کش موبایل و User Agentهای موبایل

کش موبایل برای نگه‌داشتن نسخه جداگانه کش درخواست‌های موبایل است. فعلاً آن را خاموش می‌گذاریم و اگر به نسخه جداگانه نیاز داشتیم، سازگاری آن را بررسی می‌کنیم. فقط به‌خاطر واکنش‌گرا بودن سایت، عجله‌ای برای فعال‌کردن این گزینه نداشته باشید.

اگر کش موبایل روشن باشد، فهرست User Agentها در تشخیص درخواست‌های موبایل نقش دارد. برای دیدن User Agent مرورگر می‌توانیم ابزار توسعه‌دهنده را با F12 باز کنیم و در تب Network، مشخصات درخواست صفحه را ببینیم. بدون نیاز تخصصی، فهرست پیش‌فرض را تغییر ندهیم.

گزینه کش موبایل و فهرست User Agentهای موبایل
گزینه کش موبایل و فهرست User Agentهای موبایل

آدرس‌های خصوصی، اجبار به کش و حذف رشته‌های کوئری از کلید کش

در ادامه تب کش، فیلدهایی برای مشخص‌کردن URIهای خصوصی یا اجبار بعضی آدرس‌ها به کش وجود دارد. الگوها را مطابق راهنمای همان فیلد و هر مورد را در خط جدا بنویسیم. استفاده نادرست از اجبار به کش می‌تواند اطلاعات پویا را به نسخه‌ای ثابت تبدیل کند.

فیلد Drop Query String را با استثناکردن کل صفحه از کش اشتباه نگیرید. برای خارج‌کردن یک صفحه از کش، سراغ بخش Excludes می‌رویم، پس قبل از پرکردن هر فیلد، راهنمای خودش را می‌خوانیم.

تنظیمات TTL: تعیین عمر کش و پاک‌سازی آن

حالا در افزونه لایت اسپید کش مشخص می‌کنیم نسخه کش‌شده چقدر معتبر بماند و چه زمانی پاک شود. حواسمان هست کاربران محتوای تازه را ببینند، نه نسخه قدیمی صفحه را.

TTL چیست و چطور آن را محاسبه کنیم؟

TTL مخفف Time To Live است و مدت اعتبار کش را مشخص می‌کند. نمی‌خواهیم کاربران برای همیشه یک نسخه قدیمی از سایت را ببینند، پس برای کش عمر تعیین می‌کنیم. مقادیر این بخش برحسب ثانیه وارد می‌شوند.

مدتمقدار برحسب ثانیه
یک ساعت3600
یک روز86400
یک هفته604800

برای تبدیل روز به ثانیه، تعداد روزها را در ۸۶۴۰۰ ضرب کنیم. مثلاً عمر یک‌هفته‌ای برابر با ۷ × ۸۶۴۰۰، یعنی ۶۰۴۸۰۰ ثانیه است.

عمر کش عمومی، خصوصی و صفحه اصلی

برای کش عمومی و خصوصی فیلدهای جدا وجود دارد. مقدار مناسب را با توجه به تغییرات سایت انتخاب کنیم. در این قسمت برای صفحه اصلی مقدار یک روز، یعنی ۸۶۴۰۰ ثانیه، وارد می‌کنیم، چون ممکن است مقالات جدید در صفحه اصلی نمایش داده شوند.

این عدد نسخه ثابت برای همه سایت‌ها نیست. همچنین TTL تنها عامل تازه‌شدن محتوا نیست، قوانین پاک‌سازی می‌توانند کش را قبل از تمام‌شدن عمرش هم بی‌اعتبار کنند.

فیلدهای TTL کش عمومی، خصوصی و صفحه اصلی
فیلدهای TTL کش عمومی، خصوصی و صفحه اصلی

کش خوراک، REST API و کدهای وضعیت

برای خوراک RSS و پاسخ‌های REST هم می‌توانیم عمر جدا تعریف کنیم. کدهای وضعیت مثل ۴۰۴ و ۵۰۰ نیز تنظیمات خودشان را دارند. برای نمونه می‌توانیم برای ۴۰۴ مقدار ۳۶۰۰ ثانیه و برای ۵۰۰ مقدار ۶۰۰ ثانیه را بررسی کنیم، اما مقدار نهایی را با توجه به نیاز سایت و احتمال نمایش پاسخ قدیمی انتخاب کنیم.

پاک‌سازی خودکار بعد از به‌روزرسانی

در تب Purge، پاک‌سازی بعد از ارتقا را فعال کنیم تا با به‌روزرسانی موارد مرتبط، کش قدیمی باقی نماند. این کار کمک می‌کند کاربران خروجی تازه را ببینند و منتظر پایان TTL نباشیم.

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

در قوانین پاک‌سازی مشخص کنیم بعد از انتشار یا تغییر نوشته، کش کدام صفحات پاک شود. اگر مقاله جدید در صفحه اصلی و آرشیو نوشته‌ها نمایش داده می‌شود، پاک‌سازی همین بخش‌ها مهم است. لازم نیست بدون دلیل، با هر تغییر کوچک کش تمام صفحات سایت را حذف کنیم.

قوانین پاک‌سازی خودکار کش پس از انتشار یا ویرایش نوشته
قوانین پاک‌سازی خودکار کش پس از انتشار یا ویرایش نوشته

نمایش نسخه قدیمی یا Serve Stale

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

پاک‌سازی زمان‌بندی‌شده و هوک‌ها

اگر می‌خواهیم کش آدرس‌هایی مشخص در ساعت معینی پاک شود، URIها و زمان اجرای پاک‌سازی را در این بخش وارد کنیم. مثلاً می‌توانیم کش یک صفحه مشخص را هر شب ساعت ۱۲ پاک کنیم. تنظیمات هوک نیز برای اتصال پاک‌سازی به رویدادهای وردپرس است و بیشتر به کار توسعه‌دهندگان می‌آید.

استثناهای کش

در تب Excludes می‌توانیم URIها، رشته‌های کوئری، دسته‌ها، برچسب‌ها، کوکی‌ها، User Agentها و نقش‌های کاربری را از کش مستثنا کنیم. نوع مقدار و الگوی قابل‌قبول هر فیلد متفاوت است، پس برای همه آن‌ها فقط آدرس کامل صفحه ننویسیم.

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

فیلدهای استثناهای کش بر اساس URI و رشته‌های کوئری
فیلدهای استثناهای کش بر اساس URI و رشته‌های کوئری

ESI، آبجکت کش و کش مرورگر چه تفاوتی دارند؟

در این قسمت از آموزش لایت اسپید کش، تفاوت ESI، آبجکت کش و کش مرورگر را بررسی می‌کنیم. این قابلیت‌های افزونه لایت اسپید کش را با هم یکی نمی‌گیریم، هرکدام کار خودش را انجام می‌دهد.

ESI: رفتار متفاوت کش در یک بخش از صفحه

ESI مخفف Edge Side Includes است. این قابلیت کمک می‌کند یک بخش صفحه از نظر کش رفتاری متفاوت با بقیه صفحه داشته باشد. مثلاً بخش عمومی صفحه کش شود، ولی یک قسمت شخصی به‌صورت جداگانه مدیریت شود.

در این تب تنظیماتی برای نوار مدیریت و فرم دیدگاه وجود دارد. اگر نیازی به ESI نداریم یا از پشتیبانی سرور مطمئن نیستیم، آن را فقط برای افزایش سرعت روشن نکنیم. کش نوار مدیریت هم با کش کل پیشخوان وردپرس یکی نیست.

فعال‌سازی ESI و گزینه‌های کش نوار مدیریت و فرم دیدگاه
فعال‌سازی ESI و گزینه‌های کش نوار مدیریت و فرم دیدگاه

نانس‌های ESI و گروه‌بندی نقش‌ها

نانس در بررسی امنیتی درخواست‌های وردپرس کاربرد دارد و قدیمی‌شدن آن در خروجی کش‌شده می‌تواند مشکل ایجاد کند. بخش ESI Nonces برای مدیریت جداگانه نانس‌های موردنیاز است و تنظیم تخصصی محسوب می‌شود.

در گروه‌بندی نقش‌ها نیز می‌توانیم برای نقش‌هایی که محتوای متناسب یکسان دارند، گروه‌های مربوط به کش تعریف کنیم. در این قسمت برای گروه‌بندی از اعداد مشترک استفاده می‌کنیم، بدون شناخت اثر این تنظیم، گروه‌ها را تغییر ندهیم.

آبجکت کش یا Object Cache

کش صفحه خروجی آماده HTML را نگه می‌دارد، آبجکت کش در لایه داده‌ها و نتایج پردازش عمل می‌کند. برای همین در بخش‌هایی که امکان کش کامل صفحه نداریم، مثل صفحات پویا، باز هم می‌تواند به کاهش پردازش‌های تکراری کمک کند.

برای استفاده از آن، سرویس‌هایی مثل Redis یا Memcached باید روی هاست در دسترس و قابل اتصال باشند. در این قسمت Redis را انتخاب می‌کنیم. اگر پشتیبانی آن را نمی‌بینید، از شرکت هاستینگ درباره امکان فعال‌سازی و مشخصات اتصال بپرسیم.

تنظیم اتصال Redis

در نمونه آموزش، میزبان اتصال localhost یا 127.0.0.1 و پورت Redis برابر 6379 است. این‌ها نمونه‌اند، ممکن است هاستمان از آدرس، پورت، رمز یا مسیر سوکت متفاوتی استفاده کند.

بعد از ثبت تنظیمات، نتیجه تست اتصال را بررسی کنیم. اگر خطا داشتید، به‌جای آزمون تصادفی مشخصات، اطلاعات درست را از پشتیبانی بگیریم. مقدار TTL آبجکت کش هم در همان بخش قابل تنظیم است.

روش Redis، میزبان 127.0.0.1 و پورت 6379؛ تست اتصال در این لحظه ناموفق است
روش Redis، میزبان 127.0.0.1 و پورت 6379، تست اتصال در این لحظه ناموفق است

کش مرورگر یا Browser Cache

کش مرورگر به نگه‌داشتن منابعی مثل تصاویر و فایل‌های CSS و JavaScript روی دستگاه کاربر کمک می‌کند. در بازدیدهای بعدی ممکن است نیازی به دریافت دوباره همان منابع نباشد. این کش با کش صفحات روی سرور تفاوت دارد.

اگر بعد از تغییر سایت هنوز ظاهر قدیمی می‌بینید، علاوه بر کش سرور، کش مرورگر را هم بررسی کنیم. تازه‌سازی سخت با Ctrl + F5 در بعضی مرورگرها و بررسی در پنجره خصوصی می‌تواند برای عیب‌یابی کمک‌کننده باشد.

فعال‌سازی کش مرورگر و تنظیم TTL آن
فعال‌سازی کش مرورگر و تنظیم TTL آن

تنظیمات پیشرفته کش، ووکامرس و CDN

حالا سراغ تنظیمات پیشرفته افزونه لایت اسپید کش می‌رویم. اینجا هم فقط گزینه‌هایی را بررسی می‌کنیم که واقعاً به کار سایتمان می‌آیند، لازم نیست هر چیزی را تغییر بدهیم.

کش درخواست‌های AJAX

AJAX امکان انجام عملیاتی مثل جست‌وجو بدون بارگذاری دوباره کل صفحه را فراهم می‌کند. برای بعضی درخواست‌های قابل کش می‌توانیم تنظیمات مربوط به عمر کش را مشخص کنیم. این بخش تخصصی است، درخواست حاوی اطلاعات شخصی یا عملیات تغییردهنده را مثل یک پاسخ عمومی کش نکنیم.

کوکی ورود و کوکی‌های Vary

وقتی چند نصب وردپرس با شرایط مرتبط روی یک دامنه داریم، نام کوکی ورود در تشخیص وضعیت کاربر اهمیت پیدا می‌کند. مثلاً اگر نصب دیگری در یک زیرپوشه داشته باشیم، تنظیم آن را جدا بررسی می‌کنیم. اگر فقط یک سایت معمولی داریم، بدون دلیل این تنظیم را تغییر ندهیم.

کوکی‌های Vary هم به تفاوت نسخه‌های کش مرتبط‌اند. این گزینه‌ها تنظیمات عمومی برای همه سایت‌ها نیستند و باید با شناخت معماری سایت تغییر کنند.

فیلدهای TTL کش AJAX، کوکی ورود و کوکی‌های Vary
فیلدهای TTL کش AJAX، کوکی ورود و کوکی‌های Vary

سازگاری HTTP و HTTPS

در آموزش، تفاوت درخواست‌های HTTP و HTTPS و تنظیم مربوط به سازگاری آن‌ها مطرح می‌شود. در سایت نمونه، درخواست HTTP را به HTTPS هدایت می‌کنیم. قبل از تغییر این گزینه، وضعیت ریدایرکت و روش نمایش سایت را بررسی کنیم، آن را جایگزین تنظیم درست HTTPS ندانیم.

کلیک فوری یا Instant Click

کلیک فوری می‌تواند پیش از کلیک، با قرارگرفتن نشانگر روی لینک، دریافت صفحه مقصد را شروع کند. در نتیجه وقتی کاربر کلیک می‌کند ممکن است صفحه زودتر نمایش داده شود. البته این قابلیت درخواست‌های بیشتری ایجاد می‌کند، پس با توجه به ظرفیت هاست فعالش کنیم.

گزینه‌های سازگاری HTTP و HTTPS و کلیک فوری
گزینه‌های سازگاری HTTP و HTTPS و کلیک فوری

تنظیمات ووکامرس

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

CDN در این آموزش

در این آموزش CDN را فعال نمی‌کنیم و فعلاً از این بخش عبور می‌کنیم. بنابراین برای دنبال‌کردن همین آموزش، لازم نیست CDN کوئیک کلود را فعال کنیم. مناسب‌بودن CDN را باید جدا از اتصال به خدمات بهینه‌سازی و با توجه به محل کاربران و نتیجه تست‌ها بررسی کنیم.

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

در این قسمت می‌خواهیم با امکانات افزونه LiteSpeed Cache حجم تصاویر را کمتر کنیم. قبل از هر تغییر، کیفیت عکس‌ها و وضعیت نسخه پشتیبانشان را هم بررسی می‌کنیم.

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

در بخش Image Optimization می‌توانیم درخواست بهینه‌سازی تصاویر را ارسال کنیم. عملیات مرتبط روی سرویس ابری انجام می‌شود و نتیجه به سایت برمی‌گردد. قبل از شروع، اتصال QUIC.cloud و تنظیماتی را که می‌خواهیم برای تصاویر اعمال شوند بررسی کنیم.

دکمه ارسال درخواست در تب خلاصه بهینه‌سازی تصویر
دکمه ارسال درخواست در تب خلاصه بهینه‌سازی تصویر

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

در این قسمت می‌خواهیم بهینه‌سازی را خودکار کنیم تا تصاویر تازه نیز وارد روند بهینه‌سازی شوند. وردپرس و قالب معمولاً اندازه‌های مختلفی از تصاویر تولید می‌کنند، پس اندازه مورد استفاده در صفحه همیشه همان تصویر اولیه آپلودشده نیست.

گزینه بهینه‌سازی تصاویر اصلی را هم متناسب با نیاز فعال کنیم و اندازه‌هایی را که باید پردازش شوند مشخص کنیم. بهتر است اول چند تصویر نمونه را بررسی کنیم و بعد سراغ کل کتابخانه برویم.

درخواست خودکار Cron، بهینه‌سازی تصاویر اصلی، حذف پشتیبان و حالت بدون افت کیفیت
درخواست خودکار Cron، بهینه‌سازی تصاویر اصلی، حذف پشتیبان و حالت بدون افت کیفیت

حذف نسخه پشتیبان تصاویر

حذف بکاپ تصاویر ممکن است فضا آزاد کند، اما امکان بازگشت به نسخه قبل از بهینه‌سازی را هم محدود می‌کند. این گزینه را در شروع آموزش روشن نکنیم. بعد از بررسی کیفیت خروجی و تهیه نسخه پشتیبان مستقل، درباره حذف بکاپ‌ها تصمیم بگیریم.

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

بهینه‌سازی Lossless برای حفظ کیفیت تصویر است. فعلاً این گزینه را خاموش می‌گذاریم تا امکان کاهش حجم بیشتر را بررسی کنیم. برای انتخاب نهایی، کیفیت و حجم تصویر را کنار هم ببینیم، مخصوصاً برای عکس محصول و تصاویری که جزئیات مهم دارند.

نگه‌داشتن اطلاعات EXIF و IPTC

تصاویر ممکن است اطلاعاتی مثل مشخصات دوربین، موقعیت و کپی‌رایت داشته باشند. حذف اطلاعات غیرضروری می‌تواند حجم فایل را کاهش دهد، اما اگر حق نشر یا اطلاعات تخصصی تصویر برایمان مهم است، همه متادیتاها را بی‌ارزش در نظر نگیریم. در سایت نمونه، نگه‌داشتن این اطلاعات پیشنهاد نمی‌شود.

فرمت نسل جدید تصویر: WebP

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

فهرست ویژگی‌های HTML مربوط به جایگزینی تصاویر و تنظیمات srcset را بدون نیاز تخصصی تغییر ندهیم. اگر قالب یا کد سفارشی داریم، ممکن است بررسی این فهرست‌ها لازم شود.

بهینه‌سازی برگه: تنظیمات CSS

حالا تنظیمات CSS در افزونه لایت اسپید کش را بررسی می‌کنیم. دنبال افزایش سرعت وردپرس هستیم، ولی بعد از هر تغییر، ظاهر صفحه‌ها را هم تست می‌کنیم تا چیزی به هم نریزد.

CSS Minify

مینیفای CSS فاصله‌ها، خطوط اضافی و کامنت‌های غیرضروری را کم می‌کند تا فایل سبک‌تر شود. برای دیدن تفاوت، سورس یک فایل CSS معمولی را با نسخه فشرده مقایسه می‌کنیم. این قابلیت را با حذف CSS استفاده‌نشده اشتباه نگیرید، آن موضوع گزینه دیگری دارد.

ترکیب فایل‌های CSS

CSS Combine فایل‌های قابل ترکیب را در خروجی واحد جمع می‌کند و تعداد درخواست‌ها را کاهش می‌دهد. در این قسمت می‌توانیم آن را فعال و امتحان کنیم، اما همان اصل تست‌کردن تک‌تک تنظیمات اینجا هم برقرار است. بعد از فعال‌سازی، ظاهر صفحات و زمان لود را مقایسه کنیم.

تولید UCSS و UCSS درون‌خطی

UCSS برای تولید CSS مورد استفاده صفحه به کمک سرویس ابری است، هدف این است که کدهای غیرضروری کمتری وارد خروجی شوند. اگر آن را فعال می‌کنیم، اتصال QUIC.cloud، سهمیه و نمایش درست بخش‌های تعاملی صفحه را بررسی کنیم.

UCSS Inline کد تولیدشده را به‌جای فایل مستقل، داخل HTML قرار می‌دهد. فعلاً این گزینه را خاموش می‌گذاریم. برای انتخاب میان روش‌های مختلف CSS، چند قابلیت هم‌پوشان را بدون بررسی رابطه آن‌ها هم‌زمان فعال نکنیم.

گزینه‌های CSS Minify، ترکیب CSS و تولید UCSS
گزینه‌های CSS Minify، ترکیب CSS و تولید UCSS

ترکیب CSS خارجی و درون‌خطی

این گزینه دامنه ترکیب را به CSS مربوط در منابع خارجی و کدهای داخل صفحه هم گسترش می‌دهد. این گزینه را برای حفظ ترتیب و هماهنگی استایل‌ها هنگام ترکیب بررسی می‌کنیم. اگر CSS Combine خاموش است، فقط برای روشن‌کردن همه گزینه‌ها آن را فعال نکنیم.

بارگذاری ناهمگام CSS و Critical CSS

Critical CSS یا CSS بحرانی، استایل لازم برای نمایش اولیه قسمت بالای صفحه است. در این قسمت آن را به کمک QUIC.cloud تولید می‌کنیم تا نمایش اولیه صفحه بهتر شود و بقیه استایل‌ها به روش ناهمگام دریافت شوند.

این قابلیت را روشن و تست کنیم، اگر صفحه ابتدا بدون استایل یا با ظاهر ناقص نمایش داده شد، وضعیت تولید CSS بحرانی و سازگاری صفحه را بررسی کنیم. بارگذاری ناهمگام CSS را با Lazy Load تصاویر یکی ندانیم.

CCSS Per URL

این گزینه به تولید CSS بحرانی برای هر آدرس یا استفاده از روش گروه‌بندی‌شده مرتبط است. فعلاً مقدار این گزینه را تغییر نمی‌دهیم، قبل از انتخاب روش تولید، میزان تفاوت طراحی صفحات و مصرف سهمیه را بررسی می‌کنیم.

Inline CSS Async Lib و نمایش فونت

Inline CSS Async Lib به کتابخانه مربوط به بارگذاری ناهمگام CSS مرتبط است. بدون نیاز و تست، این گزینه تخصصی را تغییر ندهیم.

در Font Display Optimization حالت swap را انتخاب می‌کنیم. در این روش، تا آماده‌شدن فونت اصلی، متن با فونت جایگزین نمایش داده می‌شود، پس کاربر برای دیدن متن منتظر فونت سایت نمی‌ماند.

تنظیمات JavaScript در LiteSpeed Cache

در این قسمت با افزونه لایت اسپید کش سراغ بهینه‌سازی فایل‌های جاوااسکریپت می‌رویم. در کنار سرعت، عملکرد منو، فرم‌ها و دکمه‌ها را هم بررسی می‌کنیم.

JS Minify و JS Combine

مینیفای JavaScript مانند CSS، کد را فشرده‌تر می‌کند. JS Combine هم فایل‌های قابل ترکیب را جمع می‌کند. این تنظیمات می‌توانند روی وابستگی اسکریپت‌ها اثر بگذارند، بنابراین منو، اسلایدر، فرم‌ها و عملیات فروشگاه را بعد از تغییر تست کنیم.

ترکیب JavaScript خارجی و درون‌خطی

در صفحه ممکن است بعضی اسکریپت‌ها فایل مستقل باشند و بعضی داخل HTML نوشته شده باشند. گزینه ترکیب خارجی و درون‌خطی برای واردکردن این موارد در روند ترکیب است. اگر با فعال‌سازی آن عملکردی خراب شد، از بخش استثناها کمک بگیریم.

تفاوت Deferred و Delayed

در حالت Deferred، اجرای JavaScript تا آماده‌شدن HTML به تعویق می‌افتد. حالت Delayed سخت‌گیرانه‌تر است و اجرا را به فعالیت کاربر وابسته می‌کند. فعلاً حالت میانی، یعنی Deferred، را انتخاب می‌کنیم.

اگر Delayed را امتحان می‌کنیم، به نمایش و عملکرد عناصر قبل از اولین تعامل توجه کنیم. بالا رفتن امتیاز تست سرعت کافی نیست، دکمه‌ها، فرم‌ها و امکانات ضروری باید در زمان مناسب آماده باشند.

تنظیمات JS Minify، ترکیب JavaScript و انتخاب Deferred یا Delayed
تنظیمات JS Minify، ترکیب JavaScript و انتخاب Deferred یا Delayed

تنظیمات HTML، ارتباط با منابع خارجی و فونت‌ها

حالا در افزونه لایت اسپید کش سراغ HTML، منابع خارجی و فونت‌ها می‌رویم. می‌خواهیم ببینیم کدام تنظیم می‌تواند دریافت و نمایش اولیه صفحه را بهتر کند.

HTML Minify

این گزینه فضاها و بخش‌های غیرضروری خروجی HTML را کم می‌کند. نتیجه معمولاً خروجی فشرده‌تر صفحه است. بعد از فعال‌سازی، چند صفحه مختلف را بررسی کنیم تا کدهای سفارشی یا ساختار قالب دچار مشکل نشده باشند.

DNS Prefetch و DNS Preconnect

اگر منابعی مثل فونت یا اسکریپت را از دامنه دیگری دریافت می‌کنیم، مرورگر باید ابتدا ارتباط لازم با آن دامنه را آماده کند. DNS Prefetch می‌تواند بخش مربوط به تبدیل دامنه به IP را زودتر انجام دهد. حالت خودکار هم برای شناسایی منابع مطرح می‌شود.

Preconnect آماده‌سازی ارتباط را فراتر از DNS می‌برد. برای منابع خارجی مهم از آن استفاده کنیم، لازم نیست تمام دامنه‌های دیده‌شده در سورس را بدون اولویت وارد کنیم.

گزینه HTML Minify و فیلدهای DNS Prefetch و DNS Preconnect
گزینه HTML Minify و فیلدهای DNS Prefetch و DNS Preconnect

بارگذاری تنبل عناصر HTML

این بخش برای تعیین انتخابگرهای عناصر HTML است که می‌خواهیم بارگذاری تنبل روی آن‌ها اعمال شود. چون انتخابگرها و رفتار عناصر به ساختار صفحه وابسته‌اند، بیشتر به درد کسانی می‌خورد که با CSS و کدنویسی قالب آشنا هستند.

نگه‌داشتن کامنت‌های HTML

منظور از کامنت در این قسمت، یادداشت داخل سورس HTML است، نه دیدگاه کاربران. اگر می‌خواهیم بعضی کامنت‌ها بعد از مینیفای باقی بمانند، آن‌ها را مطابق الگوی فیلد معرفی کنیم.

حذف Query String از منابع

بعضی فایل‌ها عبارتی مثل ?ver=1.2 در آدرس دارند که در نسخه‌بندی و تشخیص تغییر فایل کاربرد دارد. در این آموزش این اطلاعات را حذف نمی‌کنیم. بنابراین برای شروع، این گزینه را خاموش نگه داریم تا نسخه‌بندی منابع بدون نیاز تغییر نکند.

فونت‌های گوگل

اگر سایت از Google Fonts استفاده می‌کند، تنظیمات بارگذاری ناهمگام آن‌ها را بررسی کنیم. اگر گزینه حذف فونت‌های گوگل را فعال کرده باشید، دیگر بهینه‌سازی بارگذاری همان فونت‌ها موضوعیتی ندارد.

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

حذف ایموجی وردپرس و تگ‌های noscript

گزینه حذف ایموجی وردپرس برای حذف قابلیت پشتیبانی اضافه وردپرس از ایموجی‌ها مطرح می‌شود. در این قسمت، دریافت فایل‌های مربوط از دامنه خارجی را هم بررسی می‌کنیم. بعد از تغییر، نمایش ایموجی‌های صفحات را روی دستگاه‌های مختلف تست کنیم.

حذف تگ‌های noscript را خاموش می‌گذاریم، چون این تگ‌ها ممکن است برای حالت اجرا نشدن JavaScript یا کاربردهای دیگر لازم باشند.

تنظیمات رسانه: Lazy Load، جای‌نگهدار و VPI

در تنظیمات رسانه افزونه لایت اسپید کش، بارگذاری تنبل، جای‌نگهدار و VPI را بررسی می‌کنیم. هدفمان اینه که دریافت تصاویر را مدیریت کنیم و جلوی جابه‌جایی بی‌مورد محتوا را بگیریم.

بارگذاری تنبل تصاویر یا Lazy Load

با بارگذاری تنبل، تصاویر پایین صفحه لازم نیست همگی در لحظه ورود کاربر دریافت شوند، دریافت آن‌ها نزدیک زمان نیاز انجام می‌شود. این کار می‌تواند حجم اولیه صفحه را کمتر کند.

خود وردپرس هم قابلیت بارگذاری تنبل تصاویر را دارد. قبل از فعال‌سازی گزینه افزونه، بررسی کنیم قالب یا افزونه دیگری هم همین کار را انجام ندهد. روشن‌کردن چند راهکار هم‌زمان لزوماً نتیجه بهتری ندارد.

تصویر جایگزین با Base64

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

جای‌نگهدار واکنش‌گرا

جای‌نگهدار واکنش‌گرا با ابعاد تصویر اصلی هماهنگ می‌شود تا فضای مناسب آن در صفحه حفظ شود. تنظیمات رنگ و ظاهر جای‌نگهدار هم در همین بخش قرار دارد. هدف این است که قبل از دریافت تصویر، جای آن مشخص باشد.

بارگذاری تنبل تصویر، جایگزین Base64 و جای‌نگهدار واکنش‌گرا
بارگذاری تنبل تصویر، جایگزین Base64 و جای‌نگهدار واکنش‌گرا

LQIP: نسخه کم‌کیفیت تصویر

LQIP مخفف Low Quality Image Placeholder است، یعنی یک نسخه کم‌کیفیت از خود تصویر، به‌عنوان جای‌نگهدار. این نسخه با کمک QUIC.cloud تولید می‌شود و تا دریافت تصویر اصلی می‌تواند نمایش داده شود.

کیفیت و حداقل ابعاد را می‌توانیم تنظیم کنیم. تولید در پس‌زمینه هم برای مدیریت روند آماده‌سازی این جای‌نگهدارهاست. کیفیت بالاتر همیشه هدف نیست، این تصویر قرار است سبک و موقت باشد.

بارگذاری تنبل iframe

اگر ویدئویی را با iframe، مثلاً از یوتیوب، در صفحه گذاشته‌ایم، این گزینه می‌تواند دریافت آن را تا نزدیک‌شدن کاربر به محل ویدئو عقب بیندازد. بعد از فعال‌سازی، نمایش و پخش ویدئو را روی موبایل هم بررسی کنیم.

اضافه‌کردن اندازه‌های گمشده و کاهش CLS

اگر عرض و ارتفاع تصویر در HTML مشخص باشد، مرورگر می‌تواند قبل از دریافت تصویر فضای لازم را در نظر بگیرد. نبود این اطلاعات در بعضی شرایط باعث می‌شود با ظاهرشدن تصویر، محتوای صفحه جابه‌جا شود، این جابه‌جایی به موضوع CLS مرتبط است.

گزینه Add Missing Sizes برای اضافه‌کردن ابعاد گمشده تصاویر است. آن را تست کنیم و به‌خصوص صفحه محصول و نوشته‌ها را ببینیم. تعیین ابعاد تصاویر فقط یکی از راه‌های کاهش جابه‌جایی چیدمان است.

کیفیت تصویر و تغییر مقیاس تصاویر اصلی

در این قسمت کیفیت تصویر را روی ۸۰ می‌گذاریم. این عدد به معنی کاهش دقیق ۲۰ درصدی حجم نیست، خروجی را باید بررسی کنیم. گزینه تغییر مقیاس خودکار نیز به ابعاد تصاویر بزرگ مرتبط است و با فشرده‌سازی یکسان نیست.

VPI: مستثناکردن تصاویر ابتدای صفحه از Lazy Load

تصاویر ابتدای صفحه در نگاه اول دیده می‌شوند و بهتر است دریافت ضروری آن‌ها به تأخیر نامناسب نیفتد. VPI یا Viewport Images به شناسایی این تصاویر برای خارج‌کردن آن‌ها از بارگذاری تنبل کمک می‌کند.

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

رسانه‌های مستثناشده

در تب Media Excludes می‌توانیم تصاویر، کلاس‌ها، iframeها یا صفحات موردنیاز را مطابق فیلد مربوط از بارگذاری تنبل خارج کنیم. اگر رسانه‌ای با Lazy Load درست نمایش داده نمی‌شود، به‌جای خاموش‌کردن همه قابلیت‌ها، ابتدا همان مورد را مستثنا کنیم.

تب رسانه‌های مستثناشده؛ فهرست تصاویر مستثنا از بارگذاری تنبل
تب رسانه‌های مستثناشده: فهرست تصاویر مستثنا از بارگذاری تنبل

بومی‌سازی منابع و استثناهای CSS و JavaScript

حالا در افزونه لایت اسپید کش منابع قابل بومی‌سازی را بررسی می‌کنیم. اگر فایلی با بهینه‌سازی سازگار نبود، سراغ استثناها می‌رویم تا لازم نباشد همه تنظیمات را خاموش کنیم.

کش Gravatar

Gravatar تصاویر آواتار کاربران را از سرویس خارجی دریافت می‌کند. کش‌کردن آن‌ها می‌تواند نیاز به دریافت تکراری را کاهش دهد. در تنظیمات مربوط، به خودکارسازی و TTL توجه کنیم تا تغییر تصویر کاربران هم در زمان مناسب دیده شود.

کش Gravatar، کرون کش و TTL در تب بومی‌سازی
کش Gravatar، کرون کش و TTL در تب بومی‌سازی

بومی‌سازی منابع

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

فعال‌سازی بومی‌سازی منابع و فهرست فایل‌های محلی‌سازی
فعال‌سازی بومی‌سازی منابع و فهرست فایل‌های محلی‌سازی

استثناکردن JavaScript و CSS از بهینه‌سازی

اگر بعد از مینیفای، ترکیب یا به‌تعویق‌انداختن JavaScript مشکلی پیدا کردیم، در بخش Tuning فایل یا کد مربوط را در فیلد مناسب مستثنا کنیم. استثنای مینیفای و ترکیب با استثنای Deferred / Delayed یکسان نیست، هرکدام را در جای خودش وارد کنیم.

همین رویکرد برای CSS هم کاربرد دارد. هدف این است که قابلیت مفید برای بقیه سایت باقی بماند و فقط فایل ناسازگار از آن خارج شود.

تب تراز؛ موارد شامل تأخیر JavaScript و فهرست استثناهای JS
تب تراز: موارد شامل تأخیر JavaScript و فهرست استثناهای JS
تب تراز CSS؛ فیلد استثناهای URI برای UCSS
تب تراز CSS: فیلد استثناهای URI برای UCSS

پاک‌سازی پایگاه داده در افزونه LiteSpeed Cache

در این قسمت با ابزارهای افزونه لایت اسپید کش دیتابیس را مرتب می‌کنیم. البته قبل از حذف هر چیزی، بکاپ می‌گیریم و مطمئن می‌شویم هنوز به آن داده‌ها نیاز نداریم.

رونوشت‌ها، پیش‌نویس‌ها و موارد زباله‌دان

در بخش Database ابزارهایی برای پاک‌سازی مواردی مثل رونوشت‌های نوشته، پیش‌نویس‌های خودکار، نوشته‌های زباله‌دان و دیدگاه‌های اسپم یا زباله‌دان وجود دارد. فقط چون دکمه‌ای در دسترس است، روی آن کلیک نکنیم.

رونوشت یا Revision نسخه‌ای از وضعیت قبلی نوشته است که برای بازگشت به تغییرات گذشته کاربرد دارد. قبل از حذف، مطمئن شویم دیگر به آن نیاز نداریم. از پایگاه داده هم بکاپ بگیریم، حذف این موارد را نباید مثل پاک‌کردن کش قابل بازسازی بدانیم.

تب مدیریت پایگاه داده؛ ابزارهای پاک‌سازی رونوشت، پیش‌نویس، دیدگاه و داده‌های گذرا
تب مدیریت پایگاه داده: ابزارهای پاک‌سازی رونوشت، پیش‌نویس، دیدگاه و داده‌های گذرا

تعیین تعداد و سن رونوشت‌های نگه‌داری‌شده

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

تنظیم تعداد و حداکثر سن رونوشت‌های نوشته
تنظیم تعداد و حداکثر سن رونوشت‌های نوشته

خزنده LiteSpeed Cache: آماده‌سازی کش قبل از ورود کاربران

حالا سراغ خزنده LiteSpeed Cache می‌رویم تا ببینیم چطور کش صفحات را قبل از ورود کاربران آماده می‌کند. قبل از فعال‌کردنش، ظرفیت هاست و پشتیبانی سرور را هم بررسی می‌کنیم.

چرا از خزنده استفاده می‌کنیم؟

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

در این قسمت می‌خواهیم کش را بعد از پاک‌سازی دوباره آماده کنیم. استفاده از آن به ظرفیت هاست و پشتیبانی سرور وابسته است، قبل از روشن‌کردن از شرکت هاستینگ سؤال کنیم.

نقشه سایت و فاصله اجرای خزنده

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

گزینه خزنده، فاصله خزیدن، نقشه سایت سفارشی و محدودیت بار سرور
گزینه خزنده، فاصله خزیدن، نقشه سایت سفارشی و محدودیت بار سرور

محدودیت بار سرور

برای جلوگیری از فشار بیش‌ازحد، خزنده تنظیم مربوط به بار سرور دارد. فعلاً این تنظیم را بدون بررسی تغییر نمی‌دهیم، مقدار آن را با نظر پشتیبانی و با شناخت توان سرور انتخاب کنیم.

شبیه‌سازی نقش کاربری و کوکی‌ها

در این بخش تنظیمات خزیدن نسخه‌های متناسب با کاربران واردشده یا کوکی‌ها را می‌بینیم. این تنظیمات تعداد نسخه‌های کش و بار پردازشی را بیشتر می‌کنند و محدودیت امنیتی دارند. برای آموزش عمومی، بدون نیاز مشخص و بررسی نسخه افزونه، سراغ آن‌ها نرویم.

جعبه ابزار: پاک‌سازی دستی، Heartbeat و عیب‌یابی

در جعبه ابزار افزونه لایت اسپید کش، سراغ پاک‌سازی دستی، Heartbeat و عیب‌یابی می‌رویم. اینجا می‌بینیم برای بررسی مشکل یا پاک‌کردن کش، از کدام گزینه کمک بگیریم.

پاک‌سازی دستی کش

از تب Purge در جعبه ابزار یا منوی افزونه در نوار مدیریت می‌توانیم کش را دستی پاک کنیم. بسته به نیاز، همه کش یا نوع مشخصی از آن را انتخاب کنیم. برای هر تغییر کوچک، لازم نیست همه کش‌ها را چند بار پشت سر هم پاک کنیم.

درون‌ریزی، برون‌بری و فایل htaccess

در جعبه ابزار هم به خروجی و ورودی تنظیمات دسترسی داریم. فعلاً وارد ویرایش htaccess نمی‌شویم: بنابراین برای دنبال‌کردن آموزش، نیازی به تغییر مستقیم این فایل نداریم.

تب نمایش htaccess در جعبه ابزار و مسیر فایل
تب نمایش htaccess در جعبه ابزار و مسیر فایل

Heartbeat وردپرس چیست؟

Heartbeat یک سازوکار ارتباط دوره‌ای در وردپرس است. بعضی قابلیت‌ها بدون رفرش کامل صفحه به کمک درخواست‌های دوره‌ای عمل می‌کنند: برای نمونه، پیام انقضای نشست یا ذخیره خودکار در محیط ویرایش را در نظر می‌گیریم.

در تنظیمات افزونه می‌توانیم رفتار Heartbeat را برای سمت کاربر، پیشخوان و ویرایشگر جدا بررسی کنیم. فاصله بیشتر می‌تواند تعداد درخواست‌ها را کمتر کند، اما روی قابلیت‌هایی مثل ذخیره خودکار هم اثر دارد. بدون دلیل، همه بخش‌ها را خاموش نکنیم.

تب Heartbeat؛ کنترل ضربان قلب در بخش عمومی و مدیریت وردپرس
تب Heartbeat: کنترل ضربان قلب در بخش عمومی و مدیریت وردپرس

غیرفعال‌کردن همه ویژگی‌ها برای عیب‌یابی

اگر سایت مشکل پیدا کرد و به لایت اسپید کش مشکوک شدیم، در بخش Debug Settings از گزینه Disable All Features کمک بگیریم. این گزینه برای بررسی اثر قابلیت‌های افزونه بدون پاک‌کردن پیکربندی کاربرد دارد: بعد از تست می‌توانیم آن را به حالت قبل برگردانیم.

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

تب تنظیمات خطایابی؛ گزینه غیرفعال‌کردن همه ویژگی‌ها
تب تنظیمات خطایابی: گزینه غیرفعال‌کردن همه ویژگی‌ها

گزارش‌ها و نسخه بتا

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

بررسی نتیجه تنظیمات با GTmetrix

حالا نتیجه تنظیمات افزونه لایت اسپید کش را اندازه می‌گیریم. برای بررسی افزایش سرعت وردپرس، هم امتیاز تست را می‌بینیم و هم عملکرد واقعی صفحه‌ها را،

فقط دنبال یک عدد بالاتر نیستیم.

گزارش GTmetrix سایت نمونه: رتبه A و امتیاز Performance برابر62 درصد

در این قسمت می‌خواهیم نتیجه تنظیمات را با GTmetrix بررسی کنیم. در تست سایت نمونه، رتبه اولیه D بود. با تنظیمات اولیه به C رسیدیم و بعد از تغییرات بیشتر، از جمله تنظیمات CSS و اتصال به QUIC.cloud، نتیجه به B بهتر شد.

این تجربه متعلق به همان سایت نمونه است و تضمین رتبه مشابه برای سایتمان نیست. تنظیمات هاست، تصاویر، افزونه‌ها و قالب روی نتیجه اثر دارند. قبل و بعد از تغییرات، با شرایط یکسان تست بگیریم و علاوه بر امتیاز، زمان لود و عملکرد واقعی صفحات را ببینیم.

گزارش GTmetrix سایت نمونه؛ رتبه B و امتیاز Performance برابر 73 درصد
گزارش GTmetrix سایت نمونه: رتبه B و امتیاز Performance برابر 73 درصد

بعد از هر تغییر چه چیزهایی را بررسی کنیم؟

  • صفحه اصلی، نوشته‌ها و صفحه محصول در دسکتاپ و موبایل
  • منو، اسلایدر، دکمه‌ها و بخش‌های تعاملی
  • فرم تماس، ورود و ثبت‌نام
  • افزودن محصول به سبد خرید و روند پرداخت
  • نمایش درست اطلاعات اختصاصی با حساب‌های متفاوت
  • نسخه صفحه در مرورگر خصوصی و بعد از پاک‌سازی کش

جمع‌بندی آموزش افزونه لایت اسپید کش

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

اگر بعد از یک تغییر مشکلی دیدیم، از استثناها و ابزار عیب‌یابی کمک بگیریم. مهم این است که سایت برای کاربران سریع‌تر و قابل استفاده‌تر شود، نه اینکه فقط عدد یک ابزار تست بالا برود.

نظرت راجب این مطلب چیه؟

هنوز امتیازی ثبت نشده است.
  • خیلی عالی
  • عالی
  • خوب
  • بد
  • خیلی بد
اگر سوال یا نظری راجب این مطلب دارید، به اشتراک بگذارید. ارسال دیدگاه

نوشتن دیدگاه

پس از ارسال دیدگاه، ایمیل شما به صورت عمومی نمایش داده نخواهد شد.