Manage Bot Protection (JS Challenge)
Enable the three-mode bot verification from the Security page, use "Everyone" deliberately, read the pass rate.
CDN.com.tr Help
Use the X-Proxy-Cache-MT response header to see exactly what the CDN did with a request and to verify that caching works as intended.
Cache, security, WAF, and purge
Use the X-Proxy-Cache-MT response header to see exactly what the CDN did with a request and to verify that caching works as intended.
A customer checks response headers in browser DevTools and wants to know whether content is being served from the CDN cache, fetched from origin, or deliberately skipped.
You are almost certainly logged in to the site or panel. Login and session cookies skip the cache on purpose so personalized pages are never cached. Test with a private window or `curl -I https://yourdomain.com/path` — you should see MISS then HIT.
The cache TTL is controlled by your account cache rules in Advanced Management, not by the origin response header. The origin header is still passed through to browsers. Use Add Rule to set the TTL per path or content type.
No. The cache key has no device component — mobile and desktop share one entry, so purging a path clears it for both.
Purge the path from Purge Management. A hard refresh in your own browser only affects your browser cache, not the CDN cache.
Enable the three-mode bot verification from the Security page, use "Everyone" deliberately, read the pass rate.
All account-level security controls live on one Security page: the site-wide WAF toggle, JS Challenge bot protection, IP and country blocking, hotlink protection, request rate limiting, and link expiration. Every save deploys to the edge automatically — no separate publish step.
Configure domain/path cache key, TTL, methods/statuses, headers/cookies, optimization, and rate-limit rules.
Use WAF logs to explain blocked or challenged traffic without exposing internal log systems.
Purge a path, saved path, or the whole account and separate CDN cache from browser cache.
Every cached object is stored under a key built from the request — scheme, host, path, and query string. A purge only clears an entry when it addresses that exact key. Understanding this one idea explains nearly every "purge did not work" case.