قالب وردپرس
چرا به نقشه سایت نیاز داریم
۲۱ فروردین ، ۱۳۹۵
۵ اشتباه بزرگ اغلب شرکت ها در راه اندازی وب سایت
۲۱ فروردین ، ۱۳۹۵

شرایط کش شدن یک صفحه سایت

شرایط کش شدن یک صفحه سایت |طراحی سایت  |طراحی وب سایت|طراحی سایت ارزان|طراحی سایت حرفه ای

شاید برایتان پیش آمده باشد که همه تنظیمات را در کش سرور و مرورگر اعمال کرده اید اما آخر هم به یک کش پایدار و مطمئن نرسیده اید
این از اون مواردی است که بقولی به آن فوت کوزه گری می گویند ما ده مورد از آنها را در زیر می آورم
۱- هدر های expire (تاریخ انقضا) و max-age (طول عمر) modify (زمان آخرین تغییر) توسط سرور ارسال شود
۲- پاسخ کد وضعیت HTTP یکی از کدهای ۲۰۰ ، ۲۰۳ ، ۳۰۰ ، ۳۰۱ و یا ۴۱۰ را داشته باشد.
۳- نوع درخواست باید HTTP GET باشد (و نه PUT یا POST)
۴- اگر در درخواست هدرهای مربوط به مجوز یا Authorization وجود داشته باشد پاسخ کش نخواهد شد
۵- اگر در پاسخ سرور هدرهای مربوط به مجوز یا Authorization وجود داشته باشد پاسخ به شرطی کش خواهد شد که هدر
Cache-Control ارسال شود و در پارامترهای ارسالی آن یکی از انتخاب های “s-maxage” یا “must-revalidate” یا “public” آورده شود
۶- اگر یو-آر-ال یا URL دارای query string یا پرامترهای متد GET از صفحه HTML باشد معمولا کش انجام نخواهد شد مگر اینکه علاوه بر هدر Expires مانند بند ۵ هدر Cache-Control ارسال شود و در پارامترهای ارسالی آن یکی از انتخاب های “s-maxage” یا “must-revalidate” یا “public” آورده شود (طبق رفرنس RFC2616 و بخش ۱۳٫۹ و ۱۳٫۲٫۱)
۷- اگر پاسخ سرور با کد ۲۰۰ باشد حداقل یکی از هدرهای “Etag” یا “Last-Modified” یا “Expires” و یا مانند بند ۵ هدر Cache-Control ارسال شود و در پارامترهای ارسالی آن یکی از انتخاب های “s-maxage” یا “must-revalidate” یا “public” آورده شود تا عمل کش کردن پاسخ سرور در مروگر انجام شود
۸- اگر هدر Cache-Control ارسال شود و یکی از انتخاب ها در آن “private” باشد کش انجام نخواهد شد مگر بصورت کش استاتیک (که ارزش امنیتی خیلی پایینی دارد و برای داده های مهم اصلا توصیه نمی شود)
۹- به همین ترتیب اگر یکی از انتخاب های ما no-store در Cache-Control باش کش صورت نخواهد گرفت
۱۰- بالاخره اینکه اگر در هدر Vary پاسخ ارسالی match-all “*” باشد کش صورت نمی گیرد (معمولا User-Agent است که بهتر است Accept-Encoding,User-Agent باشد تا همیشه کش موفقی داشته باشیم)

یک دیدگاه