Free Mixed Content Checker
Scans your HTTPS page for scripts, images, iframes and other resources loaded over plain http:// that browsers block or upgrade. Pinpoints each offender with step-by-step fixes.
- HTTP resource detection
- Fix guidance

What you get for free
18 core security checks via this tool, passive scans, step-by-step remediation, security score on every result.
What Essential adds from €199/mo
Pentest credits every month, +17 advanced checks, weekly passive scans, email alerts and audit-ready PDFs for SOC 2 / ISO 27001 / PCI.
What is mixed content?
Mixed content occurs when an HTTPS page loads resources (images, scripts, stylesheets, iframes) over HTTP. Modern browsers block or degrade these requests, breaking functionality and compromising security.
What this checker validates
- Resources loaded over http:// on your HTTPS page
How to fix mixed content
- Replace all
http://URLs withhttps:// - Update CDN and library URLs to HTTPS versions
- Fix hardcoded links in templates, CSS, and JavaScript
- Use CSP
upgrade-insecure-requestsas temporary mitigation
Implementation examples
Once you've identified the gap, applying the fix is straightforward. Here are the configurations developers reach for most often.
Nginx
add_header Content-Security-Policy "upgrade-insecure-requests" always;Apache
Header always set Content-Security-Policy "upgrade-insecure-requests"Node.js (Express + Helmet)
app.use(
helmet.contentSecurityPolicy({
directives: {
upgradeInsecureRequests: [],
},
}),
)Next.js (next.config.mjs, works on Vercel)
const nextConfig = {
async headers() {
return [
{
source: "/(.*)",
headers: [
{ key: "Content-Security-Policy", value: "upgrade-insecure-requests" },
],
},
]
},
}
export default nextConfigOn Netlify, the same headers go in a public/_headers file, and most other hosts have an equivalent headers setting.
Tool-specific questions
Why do browsers block mixed content?
What's the difference between active and passive mixed content?
Can I use protocol-relative URLs (//example.com)?
How does CSP upgrade-insecure-requests help?
What if a third-party service doesn't support HTTPS?
Built for the engineers who already have enough to fix.
Fast results
Comprehensive checks
Step-by-step fixes
More free checks, for the rest of your surface.
Complete Security Scan
Pre-Pentest Security Scan
Security Compliance Checker
WAF Checker
Security Headers Test
TLS/SSL Security Checker
Go deeper on the same topic.
Frequently asked.
What is Barrion?
How safe is Barrion to use for security testing?
What types of security issues does Barrion identify?
What specific security checks does Barrion perform?
Will my auditor or enterprise customers accept the pentest report?
How often does Barrion test my app?
Is Barrion suitable for security testing of all business sizes?
How does Barrion handle data security and privacy during security testing?
What if I'm not satisfied with Barrion's security testing service?
How does Barrion help with SOC 2, ISO 27001, NIS2, and other compliance frameworks?
Anything else? Email contact@barrion.io.