Stack playbook · Snapshot 23 October 2026
Drupal on Amazon CloudFront: readiness playbook
What 308 measured sites on this stack get right, where they fall short, and the Drupal on Amazon CloudFront-specific steps that close each gap.
- Sites measured
- 308
- Median readiness index
- 70/100
- Profiles on this stack
- 34
detected from homepage HTML and headers
all sites: 64
top-50K sites
Readiness by lane
Enable
82/100
All sites 77
Harden
67/100
All sites 55
Accelerate
63/100
All sites 63
Recover
14/100
All sites 11
The Drupal on Amazon CloudFront playbook
Gaps ordered by impact, with the platform-specific step where one exists.
CAA records limit who can issue certificates
11% observed · all sites 11%
Publish CAA records naming every CA you actually use, including the CAs your CDN uses for managed certificates. Add an iodef contact if you want reports.
security.txt published
12% observed · all sites 5.5%
Publish /.well-known/security.txt with at least Contact and Expires fields, as RFC 9116 requires, and review it before it expires.
Modern image formats in use
45% observed · all sites 40%
Serve WebP or AVIF with a JPEG or PNG fallback, either through an image CDN or by generating both formats at build time.
Guide: AVIF, WebP, JPEG, and PNG: Choose the Right Image Format
No render-blocking scripts in <head>
37% observed · all sites 44%
Add defer to scripts that need the DOM, async to independent ones such as analytics, or move them to the end of the body.
Guide: Control Third-Party Scripts Before They Control Your Page
HTTP/3 advertised
25% observed · all sites 36%
Turn on HTTP/3 at your CDN. Browsers fall back to HTTP/2 automatically, so the risk is low.
On Amazon CloudFront: Select HTTP/3 in the distribution's supported HTTP versions.
Static files cached for 30 days or more
51% observed · all sites 50%
Give versioned (fingerprinted) CSS, JavaScript, fonts and images Cache-Control: public, max-age=31536000, immutable, and change the file name whenever the content changes.
Certificate lifetime of 100 days or less
3.7% observed · all sites 75%
Move to automated issuance and renewal now, while you still have time to test it.
HSTS kept for at least a year
64% observed · all sites 31%
Send Strict-Transport-Security on HTTPS responses. Start with a short max-age (for example 300 seconds), confirm every subdomain works over HTTPS, then raise it in steps to 31536000. Add includeSubDomains only when all subdomains are HTTPS. HSTS preload is optional and hard to undo; hstspreload.org itself does not recommend it by default.
On Amazon CloudFront: Attach a response headers policy with Strict-Transport-Security to each distribution.
Where Drupal on Amazon CloudFront sites lead
- X-Content-Type-Options: nosniff94% observedall sites 48%
- Framing restricted93% observedall sites 49%
- DMARC policy enforces quarantine or reject65% observedall sites 31%
- HSTS kept for at least a year64% observedall sites 31%