
کش وردپرس چیست؟ بررسی کش مرورگر، صفحه، سرور و CDN
کش وردپرس چیست؟ کش سازوکاری است که نسخهای موقت از صفحات، فایلهای ثابت یا نتایج پردازش سایت را نگهداری میکند تا محتوا در مراجعه بعدی سریعتر تحویل داده شود. وردپرس میتواند از کش مرورگر، کش صفحه، کش سرور، Object Cache و CDN استفاده کند. هرکدام در بخش متفاوتی از مسیر بارگذاری فعالیت میکنند و باید با صفحات پویایی مانند سبد خرید، تسویهحساب و حساب کاربری هماهنگ شوند.
فهرست مطالب
- کش وردپرس چیست و چگونه کار میکند؟
- چرا وردپرس به کش نیاز دارد؟
- معرفی انواع کش در وردپرس
- مقایسه کش مرورگر، صفحه، سرور و CDN
- تفاوت کش صفحه و Object Cache
- انتخاب کش متناسب با نوع سایت
- فعالسازی و پاکسازی کش
- مشکلات رایج کش وردپرس
- جمع بندی و سؤالات متداول
کش وردپرس چیست و چگونه کار میکند؟
وردپرس برای ساخت بسیاری از صفحات، کدهای PHP را اجرا میکند، اطلاعات موردنیاز را از پایگاه داده میخواند و نتیجه را بهصورت HTML تحویل مرورگر میدهد. تکرار این فرایند برای محتوایی که تغییر نکرده است، میتواند منابع سرور را بیدلیل مصرف کند.
کش نسخهای قابل استفاده مجدد از محتوا یا نتیجه پردازش را نگهداری میکند. اگر نسخه ذخیرهشده هنوز معتبر باشد، همان نسخه بدون تکرار تمام مراحل تولید صفحه به کاربر نمایش داده میشود.
برای مثال، محتوای یک مقاله ممکن است چندین ساعت بدون تغییر باقی بماند. با فعال بودن کش صفحه، نسخه HTML آماده مقاله تحویل کاربران میشود و وردپرس مجبور نیست در هر بازدید دوباره آن را تولید کند.
براساس مستندات رسمی وردپرس، کش صفحه با ذخیره و ارائه صفحات ثابت، دفعات اجرای فرایند کامل تولید صفحه را کاهش میدهد. این روش برای نوشتهها، صفحات خدمات و سایر بخشهای نسبتاً ثابت مفید است. منبع: راهنمای کش وردپرس
اگر نمیدانید کدام لایه کش با هاست، قالب و افزونههای سایت شما سازگار است، کارشناسان شرکت تجارت الکترونیک نوژن میتوانند ساختار فنی سایت را بررسی کرده و تنظیمات مناسب را پیشنهاد دهند.
چرا استفاده از کش در وردپرس اهمیت دارد؟
هدف کش فقط افزایش امتیاز ابزارهای تست سرعت نیست. پیکربندی صحیح آن میتواند زمان انتظار کاربر را کاهش دهد و فشار درخواستهای تکراری را از روی PHP، پایگاه داده و وبسرور بردارد.
مهمترین مزایای کش عبارتاند از:
- تحویل سریعتر محتوای تکراری
- کاهش پردازشهای PHP
- کاهش درخواستهای تکراری پایگاه داده
- مصرف بهینه تر CPU و حافظه
- مدیریت بهتر افزایش بازدید
- بهبود تجربه کاربران
کش تمام مشکلات سرعت را برطرف نمیکند. تصاویر حجیم، افزونههای سنگین، JavaScript مسدودکننده، قالب نامناسب و کمبود منابع هاست باید جداگانه بررسی شوند.
مطالعه بیشتر: آموزش افزایش سرعت وردپرس
انواع کش وردپرس کداماند؟
نسخههای موقت محتوا ممکن است در مرورگر کاربر، افزونه وردپرس، حافظه سرور، وبسرور یا یکی از مراکز داده CDN ذخیره شوند.
کش مرورگر چیست؟
کش مرورگر یا Browser Cache فایلهایی مانند تصاویر، فونتها، CSS و JavaScript را روی دستگاه کاربر نگهداری میکند. هنگام مراجعه دوباره، مرورگر میتواند فایلهای معتبر را از حافظه محلی بخواند و نیازی به دانلود مجدد آنها نداشته باشد.
مدت نگهداری منابع معمولاً با هدرهایی مانند Cache-Control مدیریت میشود. این هدر دستورهای مربوط به رفتار کش در مرورگر و کشهای اشتراکی را مشخص میکند. منبع: مستندات Cache-Control در MDN
اگر فایل CSS یا تصویر بدون تغییر نام یا شماره نسخه بهروزرسانی شود، ممکن است بعضی کاربران همچنان نسخه قبلی را ببینند. به همین دلیل، نسخهبندی فایلها و تعیین زمان اعتبار مناسب اهمیت دارد.
کش صفحه چیست؟
کش صفحه یا Page Cache نسخه کامل HTML یک صفحه را ذخیره میکند. در بازدید بعدی، نسخه آماده صفحه تحویل داده میشود و وردپرس مجبور نیست تمام کدهای PHP و درخواستهای پایگاه داده را دوباره اجرا کند.
این نوع کش برای نوشتهها، دستهبندیها، صفحه اصلی و صفحات خدمات مناسب است. صفحات شخصیسازی شده مانند سبد خرید، تسویهحساب، حساب کاربری و پیشنمایش نوشته معمولاً باید از کش عمومی مستثنا شوند.
کش سرور چیست؟
کش سرور به روشهایی گفته میشود که در سطح زیرساخت میزبانی اجرا میشوند. این کش ممکن است از طریق وبسرور، Reverse Proxy یا ابزار اختصاصی شرکت میزبانی پیادهسازی شود.
کش سطح سرور میتواند پیش از اجرای کامل وردپرس به درخواست پاسخ دهد. برخی شرکتهای میزبانی ابزار مستقلی برای مدیریت آن دارند؛ بنابراین پیش از نصب افزونه کش باید امکانات هاست بررسی شود.
Object Cache چیست؟
Object Cache نتایج درخواستهای پایگاه داده و اشیای محاسبهشده را نگهداری میکند. این لایه کل صفحه را ذخیره نمیکند، بلکه از اجرای دوباره بعضی درخواستها و عملیات تکراری جلوگیری میکند.
Persistent Object Cache با استفاده از سرویسهایی مانند Redis یا Memcached میتواند دادهها را میان درخواستهای مختلف حفظ کند. این قابلیت بیشتر برای فروشگاهها، سایتهای عضویت و وبسایتهای دارای محتوای پویا مفید است، اما برای همه سایتها ضروری نیست.
کش CDN چیست؟
CDN نسخهای از منابع قابل کش را در سرورهای توزیعشده نگهداری میکند. در نتیجه، محتوا از نقطهای نزدیکتر یا مسیری مناسبتر به کاربر تحویل داده میشود و درخواستهای مستقیم سرور اصلی کاهش مییابد.
تصاویر، CSS، JavaScript، فونت و ویدئو از محتوای متداول کش CDN هستند. کش کردن HTML نیز ممکن است، اما باید کوکیها، کاربران واردشده و صفحات شخصیسازیشده بهدرستی مدیریت شوند.
طبق مستندات Cloudflare، کش CDN نسخهای از محتوای پرتکرار را در مراکز داده توزیعشده ذخیره میکند تا محتوا نزدیکتر به کاربران ارائه شود و فشار سرور مبدأ کاهش یابد. منبع: مستندات کش Cloudflare
CDN چیست و چگونه سرعت سایت را افزایش میدهد؟» ← مقاله پیشنهادی درباره شبکه توزیع محتوا]
جدول مقایسه انواع کش وردپرس
| نوع کش | محل ذخیره | محتوای معمول | مزیت اصلی | نکته مهم |
|---|---|---|---|---|
| کش مرورگر | دستگاه کاربر | تصویر، CSS، JavaScript و فونت | جلوگیری از دانلود مجدد | زمان اعتبار و نسخهبندی فایلها مهم است. |
| کش صفحه | افزونه یا سرور | HTML صفحات عمومی | کاهش اجرای PHP و Queryها | صفحات شخصی باید مستثنا شوند. |
| کش سرور | زیرساخت میزبانی | صفحه یا پاسخ پردازششده | پاسخگویی سریعتر از سطح سرور | باید با افزونه کش هماهنگ باشد. |
| Object Cache | حافظه سرور | نتایج Query و اشیای پردازشی | کاهش درخواستهای پایگاه داده | برای همه سایتها ضروری نیست. |
| کش CDN | سرورهای شبکه CDN | فایلهای ثابت و گاهی HTML | کاهش فاصله تحویل محتوا | صفحات پویا به قواعد دقیق نیاز دارند. |
این لایهها میتوانند هم زمان استفاده شوند، به شرط آنکه قابلیتهای تکراری و قواعد متناقض نداشته باشند.
کیفیت کش به هماهنگی وردپرس و زیرساخت میزبانی وابسته است. برای انتخاب سرویس متناسب با بازدید و نوع سایت، میتوانید خدمات هاست، سرور مجازی و پشتیبانی فنی شرکت تجارت الکترونیک نوژن را بررسی کنید.
مطالعه بیشتر: مشاهده خدمات هاست وردپرس
تفاوت کش صفحه و Object Cache چیست؟
کش صفحه خروجی کامل HTML را نگهداری میکند. اگر کاربر یک نوشته عمومی را باز کند، سرور میتواند همان نسخه آماده را بدون ساخت مجدد صفحه ارسال کند.
Object Cache خروجی کامل صفحه نیست؛ بلکه نتایج برخی پرسوجوها و اشیای تکراری را ذخیره میکند. این قابلیت هنگام ساخت صفحات پویا از دریافت و محاسبه دوباره دادهها جلوگیری میکند.
برای یک وبلاگ نسبتاً ثابت، Page Cache معمولاً اثر مستقیمتری دارد. برای فروشگاه یا سامانه عضویت، ترکیب کنترلشده Page Cache و Object Cache میتواند مناسبتر باشد.
کدام نوع کش برای سایت وردپرسی مناسب است؟
انتخاب ساختار کش به نوع محتوا و رفتار کاربران بستگی دارد و نسخه یکسانی برای تمام پروژهها وجود ندارد.
سایت شرکتی یا وبلاگ
محتوای این سایتها معمولاً عمومی و نسبتاً ثابت است. کش صفحه، کش مرورگر و CDN برای فایلهای ثابت میتوانند نیاز اصلی آنها را پوشش دهند.
فروشگاه اینترنتی
صفحات محصول عمومی قابل کش هستند، اما سبد خرید، تسویهحساب و حساب کاربری باید از کش عمومی مستثنا شوند. کوکیهای فروشگاه نیز باید در قواعد کش سرور و CDN در نظر گرفته شوند.
سایت آموزشی یا عضویت
پنل دانشجو، وضعیت ورود و محتوای هر کاربر ممکن است متفاوت باشد. Object Cache در چنین پروژهای میتواند مفید باشد، اما کش کامل صفحه به استثناهای دقیق نیاز دارد.
سایت پربازدید
ترکیب کش صفحه در سطح سرور، Object Cache پایدار و CDN میتواند بار سرور اصلی را کاهش دهد. انتخاب این ساختار باید براساس مصرف منابع و الگوی درخواستها انجام شود.
مطالعه بیشتر: برای سایت و سرور به چه مقدار RAM و CPU نیاز داریم؟
روش فعال سازی کش در ورد پرس
پیش از تغییر تنظیمات، از فایلها و پایگاه داده نسخه پشتیبان تهیه کنید. در سایتهای فروشگاهی و عضویت، بهتر است تغییرات ابتدا در محیط آزمایشی اجرا شوند.
مرحله اول: امکانات هاست را بررسی کنید
مشخص کنید هاست چه نوع کشی ارائه میدهد. ممکن است Page Cache، Redis، Memcached یا کش وب سرور از قبل فعال باشد و نصب یک افزونه دیگر باعث تداخل شود.
مرحله دوم: یک راهکار اصلی انتخاب کنید
بهتر است یک افزونه یا سیستم اصلی مسئول Page Cache باشد. استفاده هم زمان از چند افزونه مشابه ممکن است موجب نمایش محتوای قدیمی یا خرابی فایلهای CSS و JavaScript شود.
مرحله سوم: صفحات حساس را مستثنا کنید
صفحات ورود، حساب کاربری، سبد خرید، تسویهحساب و پیشنمایش را بررسی کنید. سایت را در حالت ورود و خروج و با مرورگر ناشناس آزمایش کنید تا اطلاعات شخصی وارد کش عمومی نشوند.
مرحله چهارم: کش مرورگر و CDN را تنظیم کنید
برای فایلهای ثابت، زمان اعتبار مناسب تعیین کنید. در CDN نیز کوکیها، SSL، صفحات پویا و روش پاکسازی محتوا را بررسی کنید.
دستورهایی مانند private، public، no-cache و no-store کاربردهای متفاوتی دارند. تنظیم نادرست آنها ممکن است مانع کش شود یا محتوای شخصی را در کش اشتراکی قرار دهد.
مرحله پنجم: سایت را آزمایش کنید
صفحه اصلی، نوشتهها، محصولات، فرم تماس، ورود، سبد خرید و تسویهحساب را روی موبایل و دسکتاپ بررسی کنید. سرعت، هدرهای پاسخ و نمایش صحیح تغییرات جدید باید کنترل شوند.
مطالعه بیشتر: Core Web Vitals چیست و چگونه سرعت وردپرس را بهبود دهیم؟
چه زمانی باید کش وردپرس را پاک کنیم؟
پاک کردن بسیار مکرر کش منطقی نیست؛ زیرا امکان استفاده مجدد از محتوا را از بین میبرد. بسیاری از افزونهها هنگام ویرایش یا انتشار محتوا، بخش مرتبط را خودکار پاک میکنند.
پاک سازی دستی ممکن است در شرایط زیر لازم باشد:
- تغییر قالب، CSS یا JavaScript
- ویرایش منو یا ابزارک
- تغییر افزونههای مؤثر بر خروجی صفحه
- نمایش نسخه قدیمی نوشته یا تصویر
- اصلاح قواعد CDN
- بروز مشکل در فرم یا سبد خرید
- انتقال سایت یا تغییر دامنه
بهتر است ابتدا فقط صفحه یا فایل مرتبط پاک شود. پاک کردن کامل کش CDN و سرور میتواند موقتاً تعداد درخواستهای سرور اصلی را افزایش دهد.
ترتیب صحیح پاک کردن کش وردپرس
اگر تغییرات نمایش داده نمیشوند، این ترتیب را دنبال کنید:
- کش افزونه وردپرس را پاک کنید.
- کش اختصاصی هاست یا وبسرور را بررسی کنید.
- صفحه یا فایل مربوط را از کش CDN حذف کنید.
- صفحه را در پنجره ناشناس آزمایش کنید.
- در صورت نیاز، کش مرورگر را پاک کنید.
- نسخهبندی فایل بهروزشده را بررسی کنید.
- افزونهها و لایههای کش تکراری را کنترل کنید.
پاک کردن تمام دادههای مرورگر ممکن است کوکیها و نشستهای ورود را نیز حذف کند. بهتر است فقط فایلهای کششده یا داده مربوط به همان سایت انتخاب شوند.
مشکلات رایج کش وردپرس
تغییرات سایت نمایش داده نمیشود
صفحه را در حالت ناشناس باز کنید و سپس کش افزونه، سرور و CDN را بهترتیب پاک کنید. ممکن است نسخه قدیمی در یکی از این لایهها باقی مانده باشد.
محتوای اشتباه به کاربران نمایش داده میشود
احتمال دارد صفحهای شخصی سازی شده وارد کش عمومی شده باشد. کش URL مربوط را غیرفعال و قواعد کوکی و کاربران واردشده را بررسی کنید.
سبد خرید به روزرسانی نمیشود
سبد خرید، تسویه حساب و درخواستهای وابسته نباید مانند صفحات عمومی کش شوند. تنظیمات افزونه فروشگاهی، سرور و CDN را هم زمان بررسی کنید.
ظاهر سایت پس از فعال سازی کش خراب شده است
گزینههای ادغام، فشرده سازی یا تأخیر CSS و JavaScript را موقتاً غیرفعال کنید. سپس هر قابلیت را جداگانه فعال و آزمایش کنید تا عامل تداخل مشخص شود.
چک لیست پیکربندی صحیح کش
- از سایت و پایگاه داده نسخه پشتیبان تهیه شده است.
- امکانات کش هاست بررسی شدهاند.
- فقط یک سیستم اصلی Page Cache فعال است.
- صفحات ورود و بخشهای خصوصی مستثنا شدهاند.
- سبد خرید و تسویهحساب آزمایش شدهاند.
- هدرهای مرورگر برای فایلهای ثابت تنظیم شدهاند.
- CDN با صفحات پویا و کوکیها هماهنگ است.
- فایلهای CSS و JavaScript نسخهبندی میشوند.
- سایت در موبایل، دسکتاپ و مرورگر ناشناس آزمایش شده است.
- روش پاک سازی هر لایه کش مشخص است.
مطالعه بیشتر: آموزش به روزرسانی وردپرس با روشهای امن
جمع بندی
در پاسخ به سؤال «کش وردپرس چیست؟» باید گفت کش نسخهای موقت از صفحه، فایل یا نتیجه پردازش را ذخیره میکند. این کار پردازشهای تکراری را کاهش میدهد و میتواند محتوا را سریعتر به کاربران برساند.
کش مرورگر فایلها را روی دستگاه کاربر نگه میدارد، کش صفحه HTML آماده را ذخیره میکند، کش سرور در سطح زیرساخت فعالیت دارد، Object Cache نتایج پردازش و پایگاه داده را حفظ میکند و CDN محتوا را از شبکهای توزیعشده تحویل میدهد.
پیش از فعال سازی هر سیستم کش، امکانات هاست و نیازهای سایت را بررسی کنید. تهیه بکاپ، تعریف استثناها و آزمایش صفحات حساس، از نصب چند افزونه و فعال کردن همه گزینهها مهمتر است.
اگر سایت شما با کندی، نمایش محتوای قدیمی یا تداخل چند لایه کش روبه رو است، برای بررسی فنی، انتخاب زیرساخت مناسب یا دریافت مشاوره میتوانید با شرکت تجارت الکترونیک نوژن تماس بگیرید.
سؤالات متداول
آیا کش وردپرس سرعت سایت را افزایش میدهد؟
بله، در صورت تنظیم صحیح میتواند پردازشهای تکراری و دانلود دوباره فایلها را کاهش دهد. میزان تأثیر آن به نوع سایت، هاست و ساختار فنی بستگی دارد.
آیا نصب دو افزونه کش بهتر است؟
معمولاً خیر. افزونههای دارای قابلیت مشابه ممکن است با یکدیگر تداخل پیدا کنند. بهتر است یک سیستم اصلی انتخاب شود.
تفاوت کش مرورگر و کش صفحه چیست؟
کش مرورگر فایلها را روی دستگاه همان کاربر نگه میدارد. کش صفحه نسخه آماده HTML را در افزونه یا سرور ذخیره میکند.
آیا پاک کردن کش اطلاعات سایت را حذف میکند؟
پاک کردن کش استاندارد نباید نوشتهها یا اطلاعات پایگاه داده را حذف کند. بااینحال، پیش از عملیات گسترده باید عنوان گزینهها بررسی و نسخه پشتیبان تهیه شود.
آیا سایت فروشگاهی میتواند از کش استفاده کند؟
بله، اما سبد خرید، تسویهحساب، حساب کاربری و محتوای شخصی باید از کش عمومی مستثنا شوند.
آیا با داشتن CDN به افزونه کش نیاز نداریم؟
نه لزوماً. CDN و Page Cache وظایف متفاوتی دارند. انتخاب ترکیب مناسب به امکانات CDN، هاست و نوع سایت بستگی دارد.
هر چند وقت یکبار باید کش را پاک کنیم؟
زمان ثابتی وجود ندارد. پاکسازی دستی زمانی لازم است که تغییرات نمایش داده نمیشوند، تنظیمات فنی عوض شدهاند یا مشکلی در عملکرد صفحه ایجاد شده است.