WebCDNConfiguration is done in a active-active redundant or single SQL database which is only required to be up in case of cache-miss or changes. You can also configure a default/fallback policy_any_* in the configuration file
Click here for information about SQL configuration
Need performance tips? Click here
| Context | Key | Values | Default | Description |
| httpd | httpd_engine | webcdn | Name of the web engine to load | |
| httpd::cache | cache_path | string, path | Where the cache module store cache data | |
| httpd::cache | cache_pathmode_full | 0 or 1 | Split long URLs into subfolders | |
| webcdn | webroot | Folder path containing web files | ||
| webcdn | webroot_waf | same as webroot | Folder path containing waf web files | |
| webcdn | access_enabled | 0 or 1 | 0 | Require authentication for all requests |
| webcdn | rate_limit_mode | 0 or 1 | 0 | Return 429 responses when rate limiting occurrs via kernel TPROXY. Does not apply for CDN cached content |
| webcdn | proxy_host | hostname | If request contains this hostname, respond with proxy page | |
| webcdn | backend_timeout | integer | 120 | Seconds response timeout used for backends (php etc) |
| webcdn | backend_local_php_worker_min | integer | 20 | If there are less than this amount of free workers, recycle finished workers |
| webcdn | backend_local_php_worker_max | integer | 100 | Hard limit of total running workers. Causes 429 if above |
| webcdn | backend_loke_log_level | integer | 0 | The minimum priority level of a log event generated in a backend required in order to send it to loke |
| webcdn | backend_local_php_hardened | 0 or 1 | 0 | Use hardened PHP workers with WAF. |
| webcdn | policy_any | 0 or 1 | 0 | Use a config default policy when no match |
| webcdn | policy_any_backend | local, host | Backend to use for default policy | |
| webcdn | policy_any_waf | string. Analytics, authentication, redirect etc | WAF module to use for default policy | |
| webcdn | policy_any_waf_path | string. Multiple keys allowed | all paths | Paths to bind WAF module to |
| webcdn | policy_any_cache_mode | integer | 0 | 0 - no cache. 1 - strict caching. 2 - cache requests without cookies. 3 - cache requests regardless of cookies |
| webcdn | policy_any_allow | integer | 1 | 0 - deny. 1 - allow. 2 - Allow and add strict CSP |
| webcdn | policy_any_redirecturl_ondown | URL | Send a 302 with this URL when no backends are available | |
| webcdn | policy_any_force_tls | 0 or 1 | 0 | Send a 301 to https if request was made with http |
| webcdn | policy_any_redirecturl_ondown | URL | Send a 302 with this URL when no backends are available | |
| webcdn | policy_any_captcha_mode | integer | 0 | Autocaptcha. 0 - no captcha. 1 - captcha. 2 - captcha on special login and myaccount pages. 3 - captcha on pages with more than 3 subfolders or 4 parameters in URL |
| webcdn | policy_any_cache_cookie_ignore | regex. Multiple keys allowed | Used by cache handler. If match, remove the received cookie when processing response | |
| webcdn | policy_any_cache_cookie_allow | regex. Multiple keys allowed | Used by cache handler. If match, allow the received cookie when processing response. Preceeds policy_any_cache_cookie_ignore | |
| webcdn | policy_any_cache_cookie_nocache | regex. Multiple keys allowed | Used by cache handler. Set cache mode to 0 for response if a cookie name matches | |
| webcdn | policy_any_cache_url_nocache | regex. Multiple keys allowed | Used by cache handler. Set cache mode to 0 for response if request URL matches | |
| libjmodule_jid | See JID documentation | Authentication support | ||
| libjmodule_stats | See JStats documentation | Analytics support | ||
| webcdn | stats_resolution | 60, 300 | Resolution used for JStats reporting | |
| libjmodule_sql | See SQL documentation | SQL database support when not using default policy | ||
| libjmodule_dns | See DNS documentation | DNS operations support primarily used by backends | ||
| libjmodule_jdb | See JDB documentation | If enabled, uses JDB based cache storage instead of file based |