This project is not covered by Drupal’s security advisory policy.

Connects Drupal to Bunny CDN: pages are purged by cache tag when Drupal changes them, and the pull zone's setup is kept in config and the repository, so every environment gets the same one.

Features

  • Cache tag purging. Responses carry a CDN-Tag header; when Drupal invalidates a tag, the pages carrying it are purged, at the end of the request or from a queue, within Bunny's rate limits. With the Redis module, the limits are counted once for every web head and worker.
  • Tags chosen by Cache Purifier, so framework tags don't fill the header or the purges.
  • Purging by hand: URLs, tags or the whole pull zone, from Drush or the admin UI.
  • Caching from the settings page. Private pages are never cached and signed-in visitors skip the cache. Choose paths never cached, separate copies (WebP, country, cookies, headers), countries to block, and browser cache times.
  • Pull zone settings in config, by their API names, starting from the settings a Drupal site wants.
  • Your own 502/504 page from an HTML file, without Bunny's name.
  • Edge Scripts (middleware) deployed from files, with variables, and secrets from settings.php.
  • Edge Rules as YAML files, with example Shield exemptions for webhooks, cron and API clients.
  • drush bunny:sync brings the pull zone in line with all of it on deploy, after a dry run.

Requires Drupal 11.3+ or 12, PHP 8.3+, and Cache Purifier. The Purge module is not needed.

Similar modules

  • Bunny CDN (bunny_cdn) adds a Bunny CDN purger to Purge, set up in Purge's UI. This module purges without Purge, and also keeps the pull zone's settings, caching, error page, Edge Rules and Edge Scripts in config.
  • CDN rewrites file URLs to a CDN's hostname, for a CDN in front of files only. With a pull zone in front of the whole site, it isn't needed.

Setup, settings and commands: see the README.

Supporting organizations: 
Development & Maintenance

Project information

Releases