تنظیم کش CMS و تحویل سریعتر صفحات
با استفاده از کش داخلی، CMS bluetronix میتواند صفحات تولید شده را در دعوتهای بعدی مستقیماً تحویل دهد. در این آموزش میآموزید که چگونه تنظیمات کش را برای هر صفحه تعیین کنید و تفاوتهای مهم در صفحات استاتیک، وابسته به پارامتر، چندزبانه و شخصی چیست.
کش CMS چیست?
CMS بلوترویکس میتواند HTML آماده یک صفحه ایجاد شده را کش کند. در یک فراخوانی later، میتوان این نسخه کش شده را مستقیماً نمایش داد، به جای اینکه هر بار صفحه را به طور کامل از طریق فرآیند رندرینگ سایت CMS دوباره ایجاد کند.
اینگونه میتوان بسیاری از صفحات را سریعتر ارائه کرد، بدون اینکه در هر بار فراخوانی نیاز به انجام دوباره همه مراحل پردازش PHP و پرس و جوهای پایگاه داده باشد. تنظیمات کش را باید برای هر صفحه CMS به صورت جداگانه تنظیم کنید.
کش: بله - استفاده مجدد از صفحه آماده
صفحه مورد نظر را در ویرایشگر باز کنید و از طریق نماد چرخ دنده تنظیمات صفحه را فراخوانی کنید. در آنجا شما گزینه کش را پیدا خواهید کرد.
از طریق کادر انتخاب تعیین کنید که آیا صفحه میتواند کش شود. به طور پیشفرض کش فعال است.
تنظیم مورد نظر را انتخاب کنید و روی ذخیره بزنید.
کش: خیر - ایجاد صفحه جدید با هر بار فراخوانی
با کش: بله، CMS میتواند صفحه HTML آماده شده را ذخیره کند. اگر در یک فراخوانی بعدی نسخه کش کنونی و مناسبی وجود داشته باشد، HTML آماده مستقیماً ارائه میشود.
Seitenaufruf
↓
Passende Cache-Version vorhanden?
↓
Ja
↓
Fertiges HTML direkt ausgeben
فرآیند رندرینگ کامل باید در چنین فراخوانی دوباره طی نشود. اگر صفحه باید دوباره ایجاد شود، ابتدا از مراحل معمول پردازش CMS عبور میکند؛ سپس نتیجه را میتوان دوباره در کش ذخیره کرد.
مثال: یک صفحه محتوای عادی را کش کنید.
اگر کش: نه را انتخاب کنید، صفحه از کش صفحه ارائه نمیشود. در هر بار فراخوانی، CMS باید فرآیند رندرینگ لازم را دوباره انجام دهد.
Seitenaufruf
↓
CMS-Site-Rendering-Prozess
↓
PHP-Verarbeitung und benötigte Datenbankzugriffe
↓
Layout und Seiteninhalt erzeugen
↓
HTML ausgeben
این تنظیم برای صفحاتی مناسب است که محتوایشان در هر بار فراخوانی باید به روز باشد یا به طور فردی برای کاربر مشخص تولید شود.
چه زمانی نسخه کش به روز میشود?
صفحهای مانند about_us.html معمولاً محتواهای یکسانی را برای همه بازدیدکنندگان نمایش میدهد. با فعال بودن عملکرد کش، CMS میتواند آن را تولید کند و HTML آماده را برای فراخوانیهای بعدی دوباره استفاده کند.
/about_us.html → eigene Cache-Version
برای بازدیدکننده، وبسایت همانند یک صفحه جدید به نظر میرسد. اینکه HTML از کش میآید یا خیر، تنها از روی طرح ظاهری صفحه قابل تشخیص نیست.
نسخههای کش اختصاصی برای پارامترهای GET
CMS نه تنها محتواهای مستقیم صفحه را در نظر میگیرد، بلکه همچنین اجزای دیگر صفحه نهایی را نیز در نظر میگیرد. این موارد شاملچیدمان، هدر، ناوبری، فوتر و دیگر عناصر صفحه پیوسته است.
اگر فوتر تغییر کند یا یک گزینه منو جدید ایجاد شود، نسخه کش یک صفحه محتوایی بدون تغییر نیز باید بهروزرسانی شود. CMS اجزای مرتبط با صفحه را بررسی کرده و در صورت وجود تغییرات نسخه کش جدیدی ایجاد میکند.
نسخههای کش شخصی برای پارامترهای GET
یک صفحه همچنین میتواند زمانی که از طریق پارامترهای GET فراخوانی میشود، کش شود. تعیینکننده این است که یک ترکیب خاص از پارامترها هر محتوای یکسانی را ارائه دهد، تا زمانی که دادههای مربوط به آن تغییر نکند.
یک فراخوانی محصول میتواند به این شکل باشد:
/index.html?productID=1
/index.html?productID=2
/index.html?productID=3
/index.html?productID=4
هر یک از این فراخوانیها میتواند محتوای محصول متفاوتی را نمایش دهد. بنابراین، CMS میتواند برای هر ترکیب پارامتر یک نسخه کش جداگانه استفاده کند.
تنها وجود پارامترهای GET دلیلی برای خاموش کردن کش نیست. شرط این است که نسخه کش مربوطه باید برای تمامی بازدیدکنندگانی که ارائه میشود، محتوای یکسانی داشته باشد.
نسخههای کش جداگانه برای زبانهای مختلف
در وبسایتهای چند زبانه، زبان نیز در نظر گرفته میشود. برای مثال، همان محصول میتواند متون متفاوتی را در وبسایتهای انگلیسی، آلمانی و فرانسوی شامل شود.
https://www.my-demo.com/index.html?productID=1 → Englisch
https://www.my-demo.de/index.html?productID=1 → Deutsch
https://www.my-demo.fr/index.html?productID=1 → Französisch
بنابراین، نسخههای کش نیز باید با زبان مربوطه مطابقت داشته باشند. به این ترتیب، همان فراخوانی محصول در هر زبان با متون مناسب ارائه میشود.
چه زمانی باید از کش: نه استفاده کنید؟
برای صفحاتی که محتواهای وابسته به کاربر دارند، باید کش صفحه را غیرفعال کنید. یک صفحه حساب شخصی ممکن است همان URL را داشته باشد، اما برای هر کاربر ثبتنام شده اطلاعات متفاوتی را نمایش میدهد.
/MyAcoount.html → Benutzer Max → eigene Shop-Käufe
/MyAcoount.html → Benutzer Ross → andere Shop-Käufe
این محتوای شخصی نباید به عنوان یک نسخه کش عمومی برای دیگر بازدیدکنندگان دوباره استفاده شود. کش چنین صفحهای را روی نه تنظیم کنید.
همچنین در /Search.html نیز کش: نه میتواند معقول باشد، اگر نتایج جستجو در هر بار فراخوانی باید دوباره محاسبه شوند یا به ورودیهایی وابسته باشند که در کش در نظر گرفته نشدهاند.
کَش صفحه را برای خروجیهایی که دادههای شخصی کاربران مختلف را تحت یک URL نمایش میدهند، فعال نکنید.
خلاصه
با کش: بله صفحات مناسب میتوانند به عنوان HTML آماده مجدداً استفاده شده و سریعتر ارائه شوند. پارامترهای GET و زبانهای متفاوت میتوانند نسخههای کش جداگانهای داشته باشند. تغییرات در عناصر مربوط به صفحه منجر به تجدید نسخههای کش مربوطه میشود.
برای صفحات حساب شخصی یا سایر محتوایی که باید در هر بار فراخوانی به صورت وابسته به کاربر ایجاد شوند، کش: خیر را انتخاب میکنید. تنظیمات را مستقیماً در ویرایشگر زیر تنظیمات صفحه → کش پیدا میکنید.
سوالات متداول
چه سوالاتی را مشتریان معمولاً از ما میپرسند
کجا میتوانم تنظیمات کش یک صفحه CMS را پیدا کنم؟
صفحه مورد نظر را در ویرایشگر باز کنید و از طریق نماد چرخ دنده به تنظیمات صفحه بروید. در آنجا گزینه کش را پیدا میکنید.
کدام تنظیم کش به طور پیشفرض فعال است؟
به طور پیشفرض، کش صفحه فعال است.
در صورت انتخاب کش: بله چه اتفاقی میافتد؟
CMS میتواند HTML آماده را ذخیره کرده و در فراخوانیهای بعدی نسخه کش مناسب و بهروز را به طور مستقیم ارائه دهد. بنابراین، صفحه در هر بار فراخوانی نیازی به تولید کامل مجدد ندارد.
در صورت انتخاب کش: خیر چه اتفاقی میافتد؟
صفحه در هر فراخوانی از طریق فرآیند رندرینگ سایت CMS به طور مجدد تولید میشود و از کش صفحه ارائه نمیشود.
آیا کش در صورت تغییر هدر، ناوبری یا فوتر تجدید میشود؟
بله. CMS همچنین عناصر مرتبطی که در صفحه گنجانده شدهاند را در نظر میگیرد و در صورت وجود تغییرات مربوط، نسخه کش جدیدی تولید میکند.
آیا یک صفحه با پارامترهای GET میتواند کش شود؟
بله. به عنوان مثال، productID=1 و productID=2 میتوانند به ترتیب نسخههای کش جداگانه دریافت کنند، به شرطی که محتوای آنها برای فراخوانیهای مربوطه قابل استفاده مجدد باشد.
آیا برای زبانهای مختلف نسخههای کش متفاوت وجود دارد؟
بله. زبان در نظر گرفته میشود، به طوری که مثلاً نسخههای انگلیسی، آلمانی و فرانسوی یک محصول میتوانند نسخههای کش متفاوتی داشته باشند.
آیا باید کش را برای صفحات حساب شخصی فعال کنم؟
خیر. یک صفحه حساب شخصی مانند /MyAcoount.html میتواند تحت یک URL به دلیل کاربر وارد شده، دادههای مختلفی را نمایش دهد. برای این کار از کش: خیر استفاده کنید.
چگونه با کش یک صفحه جستجو سر و کار داشته باشم؟
برای /Search.html ممکن است کش: خیر منطقی باشد، اگر نتایج جستجو در هر فراخوانی باید دوباره محاسبه شوند یا به ورودیهای بیشتری وابسته باشند.