תיעוד 106
הגדרות זמינות
אלה ההגדרות שאפשר להגדיר בעת יצירת Cache Response Rule. מכיוון שכללי Cache Response Rules רצים אחרי ש-Cloudflare מקבל את תשובת המקור, שדות בקשה ושדות תשובה זמינים להתאמת הכלל.
הערה
שדות בקשה מתארים את הבקשה כפי ש-Cloudflare שולח אותה למקור שלך. אם Origin Rule משנה את כותרת Host, http.host מחזיר את הערך שהשתנה. התאם לשם המארח שהמקור שלך מקבל, לא לשם המארח שהמבקרים מבקשים.
#שדות ביטוי
#שדות בקשה
| שדה | סוג | תיאור |
|---|---|---|
http.cookie | String | הערך המלא של כותרת Cookie |
http.host | String | כותרת Host שהמקור שלך מקבל, והיא יכולה להיות שונה משם המארח המבוקש אם Origin Rule שינה אותה |
http.referer | String | כותרת HTTP Referer |
http.user_agent | String | כותרת HTTP User-Agent |
http.request.method | String | שיטת בקשת ה-HTTP |
http.request.uri | String | ה-URI של הבקשה |
http.request.uri.path | String | נתיב ה-URI |
http.request.uri.path.basename | String | שם הבסיס של נתיב ה-URI |
http.request.uri.path.extension | String | סיומת הקובץ מנתיב ה-URI |
http.request.uri.query | String | מחרוזת השאילתה |
http.request.uri.args | Map | ארגומנטים של מחרוזת השאילתה כזוגות מפתח-ערך |
http.request.uri.args.names | Array | שמות הארגומנטים של מחרוזת השאילתה |
http.request.uri.args.values | Array | ערכי הארגומנטים של מחרוזת השאילתה |
http.request.full_uri | String | ה-URI המלא של הבקשה, כולל הסכמה והמארח |
http.request.headers | Map | כותרות הבקשה כזוגות מפתח-ערך |
http.request.headers.names | Array | שמות כותרות הבקשה |
http.request.headers.values | Array | ערכי כותרות הבקשה |
http.request.cookies | Map | עוגיות מפוענחות כזוגות מפתח-ערך |
http.request.accepted_languages | Array | ערכים מפוענחים של כותרת Accept-Language |
#שדות תשובה
| שדה | סוג | תיאור |
|---|---|---|
http.response.code | Integer | קוד המצב של תשובת ה-HTTP מהמקור |
http.response.headers | Map | כותרות התשובה כזוגות מפתח-ערך |
http.response.headers.names | Array | שמות כותרות התשובה |
http.response.headers.values | Array | ערכי כותרות התשובה |
אם בוחרים באפשרות Edit expression, אפשר להזין כל אחד משדות התשובה שלמעלה.
#פונקציות
הפונקציות הבאות זמינות בשלב הזה:
allanyconcatdecode_base64ends_withlenlookup_json_integerlookup_json_stringlowerregex_replaceremove_bytesremove_query_argssplitstarts_withsubstringto_stringupperurl_decodewildcard_replace
לתיאורים של כל פונקציה, ראה Functions.
#אופרטורים
לרשימה המלאה של אופרטורים, ראה Operators.
#פעולות זמינות
כללי Cache Response Rules תומכים בשלוש פעולות:
| פעולה | תיאור |
|---|---|
set_cache_settings | מסיר כותרות (ETags, Set-Cookie, Last-Modified) מתשובת המקור לפני השמירה במטמון. |
set_cache_tags | מוסיף, מסיר או קובע תגי מטמון על התשובה לצורך ניקוי ממוקד. |
set_cache_control | משנה הנחיות של כותרת Cache-Control בתשובת המקור. |
#פעולה: set_cache_settings
מגדיר הגדרות שקשורות לשמירה במטמון על תשובת המקור. הפרמטרים הבאים זמינים:
| פרמטר | סוג | תיאור |
|---|---|---|
strip_etags | Boolean | מסיר כותרות ETag מתשובת המקור לפני השמירה במטמון. |
strip_set_cookie | Boolean | מסיר כותרות Set-Cookie מתשובת המקור לפני השמירה במטמון. |
strip_last_modified | Boolean | מסיר כותרות Last-Modified מתשובת המקור לפני השמירה במטמון. |
הערה
אם strip_etags או strip_last_modified הוא true אחרי שכל הכללים התואמים הוחלו, Smart Edge Revalidation ↗︎ מושבת עבור תשובת המקור.
#מידע API
פעולת API: set_cache_settings.
דוגמה להגדרת API
"action_parameters": {
"strip_etags": true,
"strip_set_cookie": true,
"strip_last_modified": true
}ראה יצירת כלל באמצעות API לדוגמאות API מלאות.
#פעולה: set_cache_tags
משנה את תגי המטמון המשויכים לתשובה. אפשר להשתמש בתגי מטמון עבור ניקוי מטמון ממוקד.
| פרמטר | סוג | תיאור |
|---|---|---|
operation | String | נדרש. אחד מתוך: add, remove, set. |
values | Array | רשימה של מחרוזות תגי מטמון. לא יכול לשמש יחד עם expression. |
expression | String | ביטוי שהתוצאה שלו היא מערך של תגי מטמון. לא יכול לשמש יחד עם values. |
#מידע API
פעולת API: set_cache_tags.
דוגמה להגדרת API (ערכים סטטיים)
"action_parameters": {
"operation": "set",
"values": ["api-response", "dynamic-content"]
}דוגמה להגדרת API (ביטוי)
"action_parameters": {
"operation": "add",
"expression": "split(http.response.headers[\"Surrogate-Keys\"][0], \",\", 1)"
}ראה יצירת כלל באמצעות API לדוגמאות API מלאות.
#פעולה: set_cache_control
משנה הנחיות של כותרת Cache-Control בתשובת המקור.
#הנחיות נתמכות
הנחיות עם ערך משך (שניות):
max-ages-maxagestale-if-errorstale-while-revalidate
הנחיות עם מגדירים אופציונליים (שמות כותרות):
privateno-cache
הנחיות בוליאניות:
no-storeno-transformmust-revalidateproxy-revalidatemust-understandpublicimmutable
#הגדרת הנחיה
הפרמטרים הזמינים תלויים בסוג ההנחיה.
#הנחיות עם ערך משך
חל על max-age, s-maxage, stale-if-error ו-stale-while-revalidate.
| פרמטר | סוג | תיאור |
|---|---|---|
operation | String | נדרש. set או remove. |
cloudflare_only | Boolean | כאשר האפשרות מופעלת, ההגדרה משפיעה רק על האופן שבו Cloudflare שומר את התוכן שלך במטמון. המבקרים שלך עדיין מקבלים את ההנחיה המקורית. |
value | Integer | משך בשניות. נדרש כאשר operation הוא set. |
#הנחיות עם מגדירים אופציונליים
חל על private ו-no-cache.
| פרמטר | סוג | תיאור |
|---|---|---|
operation | String | נדרש. set או remove. |
cloudflare_only | Boolean | כאשר האפשרות מופעלת, ההגדרה משפיעה רק על האופן שבו Cloudflare שומר את התוכן שלך במטמון. המבקרים שלך עדיין מקבלים את ההנחיה המקורית. |
qualifiers | Array | רשימה אופציונלית של שמות כותרות שמגדירים את ההנחיה. |
#הנחיות בוליאניות
חל על no-store, no-transform, must-revalidate, proxy-revalidate, must-understand, public ו-immutable.
| פרמטר | סוג | תיאור |
|---|---|---|
operation | String | נדרש. set או remove. |
cloudflare_only | Boolean | כאשר האפשרות מופעלת, ההגדרה משפיעה רק על האופן שבו Cloudflare שומר את התוכן שלך במטמון. המבקרים שלך עדיין מקבלים את ההנחיה המקורית. |
#מידע API
פעולת API: set_cache_control.
דוגמה להגדרת API
"action_parameters": {
"max-age": {
"operation": "set",
"value": 3600,
"cloudflare_only": true
},
"stale-if-error": {
"operation": "remove"
}
}ראה יצירת כלל באמצעות API לדוגמאות API מלאות.