قوانین Cache
cache rule رفتار cache را برای آدرسهایی که پوشش میدهد کنترل میکند؛ هر قانونی که تطبیق یابد تعیین میکند درخواست چطور cache شود.
ساختن یک cache rule
Section titled “ساختن یک cache rule”- Rules → Add Rule → Cache Rule.
- آدرسهایی که روی آنها اعمال میشود را تنظیم کنید (
/*،/assets/*، و غیره). - انتخاب کنید چه چیزی و چه مدت cache شود.
- Save را بزنید.
| دامنه | چه چیزی cache میشود |
|---|---|
| Static files | تصویر، CSS، JS، فونت، دانلودها. پیشفرض امن. |
| Everything | هر پاسخ قابلcache، شامل HTML. |
دامنهی «custom» وجود ندارد — برای cache کمتر، path های قانون را محدودتر کنید.
TTL، refresh، query string
Section titled “TTL، refresh، query string”- TTL — یک نسخه چه مدت fresh میماند تا nsin دوباره re-fetch کند.
- Background refresh — nsin طبق یک برنامه دوباره re-fetch میکند در حالی که هنوز نسخهی فعلی را میدهد، پس بازدیدکننده هرگز منتظر نمیماند.
- Include query string — روشن،
?page=1/?page=2جدا cache میشوند؛ خاموش، یک نسخهی مشترک دارند.
بررسیهای ایمنی
Section titled “بررسیهای ایمنی”بهطور پیشفرض روشناند تا cache نتواند دادهی خصوصی را leak کند. فقط وقتی پاسخ برای همه یکسان است یکی را خاموش کنید.
| بررسی | چه میکند |
|---|---|
Skip requests with an Authorization header | درخواستهای authenticated را cache نمیکند. |
| Skip responses that set a cookie | یک session cookie شخصی است. |
Honour no-store from the visitor | به no-store مرورگر احترام میگذارد. |
Honour your server’s Cache-Control | هدرهای سرور تصمیم میگیرند. |
Use your server’s max-age | از max-age سرور استفاده میکند، نه TTL قانون. |
| Never cache WordPress admin/login | /wp-admin و /wp-login.php را دستنخورده میگذارد. |
آیا cache کنم؟
Section titled “آیا cache کنم؟”| اگر صفحه… | این کار را بکنید |
|---|---|
| برای همه یکسان است (پست وبلاگ، تصویر) | cache کنید |
| برای هر نفر فرق میکند (account، cart) | cache نکنید، یا safety check را روشن نگه دارید |
| دائم تغییر میکند (نتایج زنده) | TTL کوتاه، یا background refresh |
سوالهای رایج
Section titled “سوالهای رایج”یک صفحهی خصوصی cache شد و دادهی اشتباه نشان داد. آن path را exclude کنید، بعد یک بار purge کنید. دلیل معمول: یک قانون با دامنهی Everything که cookie check آن خاموش است.
تغییراتم نشان داده نمیشود. Purge کنید، یا از developer mode استفاده کنید.
کدام قانون روی یک درخواست اعمال شد؟
هدر Nsn-Cache-Status را بررسی کنید — ببینید
Proxy Headers.