سفارش تبلیغ
صبا ویژن

سئو- استفاده از همه شگردها برای بالابردن ترافیک سایت

کش استاتیک و قابل انطباق

بعد از Keep-Alive که در پست قبل به آن پرداختیم یکی دیگر از موارد حیاتی برای سرعت بخشیدن به بارگذاری صفحات Cache Static است

همانطور که می دانید مزیت بزرگ صفحات html به php در  سرعت آن است 

چرا که صفحات html  هیچ پروسه اضافی برای سرور ندارند و سرور بدون نیاز به انجام محاسبات  صفحه  html برای چاپ به مرورگر می فرستد
اما در صفحات php وضعیت فرق می کند
کارهای زیادی به سرور محول می شود مثل استفاده ازدیتابیس (برای انالیز و تحلیل  و ذخیره و دریافت اطلاعت از mysql ) یا محاسات ریاضی و توابعی که هرکدام پروسه ای برای سرور هستند و در صورت استفاده ناصحیح حتی موجب آورلود شدن cpu هم میشوند
ما که ما در کش استاتیک انجام می دهیم این است که با هربار مراجعه  هر کاربر تمم عملیات php را مجددا انجام نمی دهیم بلکه خروجی آماده شده برای ارسال به مرورگر را در یک صفحه html می ریزیم و تا زمانی که تغییری در آن ایجاد نشده است در مراجعات بعدی بدون هیچ محاسبه ای با ارسال هدر انقضا  و کنترل کش آن را به خورد مرورگر می دهیم
آنچه که کش استاتیک را  ممکن می سازد ارسال هدر های cache-control و expire است
البته دقت داشته باشیم که در حالت عادی نمی توان هدر انقضا (expire) را برای فایلهای غیر اپچپپچ تی ام ال مثل عکس، جاوا اسکریپت، css ، pdf و... ارسال کرد (مگر با استفاده از مود expire در آپاچی)
پارامترهای Cache-Control
max-age=86400
تعیین زمان اعتبار کش که در اینجا 24 ساعت اعلام شده (86400 ثانیه)
public
به معنی تبیعت از وضعیت نرمال کش (البته اگر فایلی در حالت اتوتیکنشن یا دسترسی اعضا  قرار دارد کش نشود)
no-cache
به معنی کش نکردن نمی باشد بلکه به این معنی است که همیشه از سرور اعتبار کش سوال شود و اگر هنوز منقضی نشده بود از کش مرورگ می توان استفاده کرد
must-revalidate
به معنی اطاعت بی چون و چرای مرورگ از سرور برای استفاده یا عدم استفاده از کش (با توجه به هدر ارسال شده از سرور)
proxy-revalidate
همان حالت بالا اما برای ISP ها( هرچند که آی اس پی های ایران از آن تبعیت نمی کنند)