آموزش راه اندازی افزونه W3 Total Cache

آموزش راه اندازی افزونه W3 Total Cache

یکی از مهم ترین ملاک های وب سایت ها از دید کاربران سرعت بارگذاری آن است ، به طوریکه نتایج نظر سنجی ها نشان داده است که هرچه وب سایت سریع تر لود شود کاربران آن را بیشتر میپسندند ! برای کم حجم کردن وب سایت راه های زیادی وجود دارد ، یکی از مهم ترین مسائلی که حائز اهمیت است کش کردن فایل های غیر ضروری است ! یکی از بهترین افزونه هایی که در وردپرس برای فعال سازی کش وجود دارد افزونه W3 Total Cache است که در این لحظه با بیش از ۱ میلیون نصب در رتبه اول افزونه های کش است !

افزونه W3 Total Cache

افزونه W3 Total Cahe که به اسم اختصار w3tc هم نامبرده میشود بهترین و محبوب ترین افزونه کش وردپرس است که محبوبیت های خیلی زیادی بین کاربران پیدا کرده است . با استفاده از این افزونه میتوانید به صورت کامل وب سایت وردپرسی خود را بهینه کنید با تنظیمات مختلف ! همچنین به کمک این افزونه قادر خواهید بود با CDN از حجم وب سایت خود بکاهید و همین امر سبب افزایش سرعت و لود وب سایت شما خواهد شد.
در این مطلب قصد آموزش نصب و انجام تنظیمات آن را داریم.

 

نصب افزونه W3 Total Cache

نصب افزونه W3 Total Cache به راحتی آب خوردن است ، شما هم میتوانید افزونه را در پایین همین صفحه دانلود کنید و یا اینکه از مخزن وردپرس به صورت اتوماتیک نصب کنید ، توجه داشته باشید افزونه های مشابه را باید غیر فعال کنید مانند WP Super Cache ، که در این صورت با مشکل مواجه میشوید و افزونه تداخل پیدا میکند.

هم اکنون به راحتی میتوانید از مخزن وردپرس این افزونه را دانلود کنید و یا در قسمت افزونه ها > افزودن” بروید و در قسمت جستجو عبارت W3 Total Cache را جستجو کنید و مانند تصویر زیر عمل کنید :

نصب افزونه W3 Total Cache

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

تنظیمات افزونه W3 Total Cache

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

 

تنظیمات عمومی – General Settings

در این بخش همانطور که از نامش پیداست ، تنظیمات عمومی افزونه را شامل می شود ، که میتوانید کلیت کار را مدیریت کنید . در این بخش میتوان قابلیت های افزونه را فعال و یا غیر فعال کنید ، بعد از نصب افزونه از طریق منو به ادرس Performance و زیر شاخه General Settings بروید. مانند تصویر زیر .

افزونه W3 Total Cache

 

کش صفحه – Page Cache

این تنظیمات برای افزایش سرعت بارگذاری سایت بسیار مفید است ! نحوه کار آن به این صورت است که از صفحات وب سایت شما یک فایل ایتساتیک میسازد و کاربران برای مشاهده آن نیازی به بارگذاری کامل ندارند و به راحتی تمام اطلاعات از فایل های استاتیکی که ساخته شده است بارگذاری می شود. همانطور که میدانید برای بارگذاری یک وب سایت پروسه طولانی اجرای کد های php ، ارسال درخواست به دیتابیس و …. انجام میشود که همین امر سبب افزایش زمان بارگذاری سایت خواهد شد به همین دلیل برای افزایش سرعت بارگذاری سایت با فعال سازی Page Cache این پروسه خیلی کوتاه شده است و تمامی اطلاعاتی که برای کاربر نمایش داده میشود از فایل های استاتیک خوانده میشود.

Page Cache در افزونه W3 Total Cache

با فعال کردن گزینه Page Cache قابلیت هایی که در بالا توضیح دادیم برای وب سایت شما اعمال می شود. توجه داشته باشید که گزینه Page Cache Method برای اکثر هاست ها که به صورت اشتراکی استفاده میشود باید روی گزینه Disk: Enhanced تنظیم شود.

تنظیمات افزونه W3 Total Cache

Cache posts page : در اکثر سایت ها و بلاگ ها، برگه ی نوشته ها، پر بازدید ترین بخش سایت است، با فعال کردن این گزینه میتوانید کش را برای این صفحه فعال کنید.

Don’t Cache front page : اگر مایل نیستید صفحه ی اصلی سایت شما کش شود، این گزینه را فعال کنید.

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

Cache SSL Requests : برای کش کردن درخواست های انجام شده روی SSL این گزینه را فعال کنید. به طور کلی استفاده از این گزینه توصیه میشود.

Cache URIs with query string variables : این گزینه به شما اجازه میدهد که صفحاتی که دارای رشته های کوئری هستند را کش کنید. مثلا فرض کنید در یک بازه ی زمانی کوتاه، تعداد زیادی افراد (یا حتی ربات ها) در حال مشاهده ی نتایج جستجو برای یک عبارت خاص هستند. این مسئله ممکن است در آن بازه ی زمانی، بار بسیار زیادی را بر روی سایت شما بگذارد. کش کردن این درخواست ها و پاسخ دادن به آنها به صورت استاتیک میتواند بار روی سایت را کاهش داده و در عین حال باعث افزایش سرعت پاسخدهی به این نوع درخواست ها شود.

Cache 404 Pages : اگر مایلید در صورت موجود نبودن یک صفحه، پاسخ ۴۰۴ آن از طریق افزونه کش شود، میتوانید از این گزینه استفاده کنید. این گزینه بار روی سرور را کاهش میدهد ولی در حالتی که کش صفحه را روی disk: enhanced قرار داده باشید، بجای پاسخ ۴۰۴ پاسخ ۲۰۰ را باز میگرداند که در واقع ایده آل نیست. بنابراین به طور عمومی، استفاده از این گزینه را به شما پیشنهاد نمیکنیم، مگر اینکه دلیل خاصی داشته باشید و از تنظیم خاص دیگری در بخش تنظیمات دیسک در کش صفحه استفاده کرده باشید.

Don’t cache pages for logged in users : اگر میخواهید هیچ یک از بخش های سایت برای کاربرانی که وارد اکانت کاربری خود شده اند، کش نشود، میتوانید از این گزینه استفاده کنید. طبعا این گزینه برای سایت هایی که تعداد کاربر زیادی دارند توصیه نمیشود اما برای سایت های دارای چند نویسنده/چند مدیر، میتواند گزینه ی مفیدی باشد.

Don’t cache pages for the following user roles : در این قسمت میتوانید تعیین کنید که سایت برای نقش خاصی از کاربران، کش نشود. مثلا میتوانید تعیین کنید که مدیران یا نویسندگان، سایت را به صورت کش نشده مشاهده نمایند.

پس از اعمال هر تغییراتی گزینه “ذخیره تنظیمات و تخیله کش” را بزنید.

کاهش دهنده – Minify

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

minify در افزونه W3 Total Cache

اگر قصد فعال سازی این قابلیت را دارید به منوی Performance > General Settings و در این صفحه به قسمت Minify رجوع کرده و گزینه Enable را تیک بزنید، در قسمت Minify Mode دو قسمت Auto و Manual وجود دارد که به معنای اتوماتیک بودن و تنظیم دستی است ، اگر حالت اول یعتی Auto را انتخاب کنید کارتان ساده تر خواهد شد و خود افزونه به صورت اتوماتیک فایل های Css و Js را فشرده سازی میکند ولی اگر گزینه Manual را فعال کنید باید تمامی فایل هاییکه قصد قشرده سازی آن ها را دارید به صورت دستی وارد کنید. بهترین کار انتخاب گزینه Auto است ، چرا که اگر با این حالت مشکلی به وجود آمد در وب سایتتان میتوانید به صورت دستی فایل ها را وارد کنید.

 

پس از فعال کردن این بخش حالا از منوی Performance به زیرمنوی Minify مراجعه کنید. در اینجا برای اینکه از برخورد کردن با هشدار Eliminate render-blocking JavaScript and CSS in above the fold content در تست سرعت گوگل (Google PageSpeed Insights) جلوگیری شود، در بخش JS مقدار embed type را برای قسمت before head روی Non-blocking using async قرار دهید. (توجه داشته باشید که اگر حالت Manual را برای مینیفای انتخاب کرده باشید باید در همین صفحه، کلیه ی فایل های css و js خود را با ترتیب مورد نظر خود اضافه کنید.)

در اینجا لازم است به یک نکته ی مهم هم اشاره کنیم. گاهی پیش می آید که پس از انتخاب تنظیم Non-blocking using async برای فایل های جاوا اسکریپت سایتتان، اجرای برخی اجزای سایت، خصوصا اجزایی که نیازمند جی کوئری هستند دچار مشکل میشود. (ممکن است این اجزا پیش از بارگذاری کامل محتوای js بارگذرای شوند و به درستی کار نکنند) در چنین حالتی ممکن است لازم باشد که این تنظیم را به حالت اول یعنی blocking برگردانید.

استفاده از CDN با افزونه W3 Total Cache

CDN مخفف عبارت Content Delivery Network یا شبکه تحویل محتوا است. اگر تا اینجا خوب دقت کرده باشید متوجه شده اید که وقتی شما تنظیمات کش را برای صفحات خود فعال میکنید، به هر حال محتوای شما باید توسط سروری که سایت شما را میزبانی میکند به کاربران ارسال شود. برای وبسایتهایی که واقعا بزرگ هستند، این مسئله اصلا کافی نیست و ممکن است هزینه های بسیار زیادی را برای تامین ریسورس لازم بر روی سرور به آنها وارد کند. اینجاست که CDN ها وارد ماجرا میشوند. کار CDN ها این است که محتوای ایستای صفحات وبسایت شما را از روی چندین سرور ابری در اختیار کاربران قرار میدهند. در واقع اتفاقی که می افتد این است که CDN نسخه ی استاتیک صفحات شما را بر روی سرور های خود نگهداری میکند، و در زمانی که کاربری درخواست مشاهده آن صفحات را میدهد، بجای اینکه درخواست توسط سرور شما پاسخ داده شود، CDN با استفاده از محتوایی که از پیش فراهم کرده، درخواست را پاسخ میدهد. این کار فواید بسیار زیادی دارد. دو تا از واضح ترین فواید آن، کاهش بار روی سرور و کاهش استفاده از پهنای باند است. و فایده ی دیگر آن این است که CDN ها، خصوصا CDN های غیر رایگان پیشرفته، میتوانند تا حد قابل قبولی جلوی حملات DDOS را هم بگیرند.

Fragment Cache

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

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

خوب، حالا سراغ دو مورد از موارد مهمی که از آنها گذشته بودیم میرویم :

DataBase Cache

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

کاری که این امکان انجام میدهد دقیقا مشابه database cache است. فقط مشکلی که هست این است که W3TC اینجا در واقع خیلی هم خوب عمل نمیکند و با پلاگین های بکاپ اصلا سر سازش ندارد. توصیه میکنم این گزینه را خاموش نگهدارید.

بعد از اعمال تنظیمات …
اگر تا اینجا فقط تغییرات را ذخیره کرده اید و کش را خالی نکرده اید، همین حالا با استفاده از گزینه ی performance در نوار مدیریت و کلیک کردن روی Purge All Caches کش کلیه ی بخش های سایت را خالی کنید.

سخن پایانی :

اگر مقاله را با دقت خوانده باشید متوجه شده اید که فعال کردن قسمت های : Database cache و Object Cache در هاست های اشتراکی به هیچ عنوان توسیه نمیشود. و با فعال کردن این گزینه ها فشار زیادی بر روی سرور وارد شده و در نهایت به داون شدن سایت شما منجر می شود. ولی در سرور های اختصاصی به راحتی و بدون مشکل میتوانید از قابلیت های این موارد استفاده کنید و نتایج مثبت آن را روی سایت خود تست کنید.

 

دیدگاه ها :

  1. صادق چگینی گفت:

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

  2. مدیریت سایت گفت:

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

  3. حسینی گفت:

    salam . kheili aaaaaaali boooood.

  4. اجاره سوئیت مبله در تهران گفت:

    با سلام و درود . بین این افزونه و افزونه wp rocket کدوم رو شما پیشنهاد میکنید ؟
    البته اینو میدونم که افزونه w3 cache امکانات بیشتری داره . اما اونچه که مد نظر هست، لود سایت با نهایت سرعت .
    با احترام

ارسال دیدگاه ها :