CMS
Django Website Audit
Django audit: csrftoken on a marketing page is a smell
· Configuration notes, not a newsroom.
SiteRune fingerprints Django cookies. The playbook is WhiteNoise or nginx for static, cache for anonymous HTML, headers at the proxy.
DJWhat SiteRune checks on this stack
- CMS / framework fingerprint from HTML, headers, cookies, and generator tags — fingerprint-based, not a plugin inventory
- Titles, meta descriptions, canonicals, H1, and robots on the homepage and walked interiors
- Security headers a crawler can see: HTTPS, HSTS, CSP, framing, nosniff, Referrer-Policy, Permissions-Policy
- HTML TTFB, compression, and Cache-Control on the document — not a Lighthouse filmstrip
- AI-bot robots policy, llms.txt, and Organization / FAQ / Article JSON-LD
Common problems
- Marketing homepage looks finished; interior templates ship empty titles or leftover noindex
- Hosted CMS cannot set HSTS/CSP, so the brief tells you to put a proxy in front instead of inventing an admin UI
- A security plugin's 'block AI' preset Disallows GPTBot on a site that wanted citations
- Session cookies or no-store on every anonymous GET, so the CDN never caches HTML
Session middleware is not a homepage feature
Anonymous docs and landing pages should be cacheable. If csrftoken and a session cookie hit every GET, you opted the whole site into dynamic. SiteRune will say so via Cache-Control and cookie flags.
Deploy like an adult
TLS at the edge, HSTS on the proxy, gzip/br, a sitemap view, /llms.txt as a TemplateView or a static file. We do not run manage.py. We do not suggest debug=True findings beyond what HTML and headers already leak.
FAQ
How do you know this is my stack?
Fingerprints in HTML, headers, cookies, and generator tags. Confidence is a score, not a certificate. Unknown stacks stay generic — we will not invent a CMS.
Do I need an account?
Three guest scans, no card. Create a free account when you want history and more interiors.
Run it on a live URL
Same scan engine. Guest scans stay free.