Headers

What Are HTTP Security Headers and Why Do They Matter?

Security headers are instructions your server sends to browsers alongside every response. They tell the browser what to do — and what to refuse — when handling your page. Most web servers send none by default.

The gap between HTTPS and secure

Having an HTTPS certificate does not make a site secure. It only means the connection is encrypted in transit. Once the page loads, a browser with no security headers will:

Security headers close these gaps.

The headers that matter

Strict-Transport-Security

Tells browsers to only connect to your site via HTTPS, even if the user types http://. Prevents SSL stripping attacks on subsequent visits.

Content-Security-Policy

Defines which resources are allowed to load. The main defense against XSS — blocks injected scripts even if they get into your HTML.

X-Frame-Options

Prevents your page from being embedded in iframes on other sites. Blocks clickjacking attacks.

X-Content-Type-Options: nosniff

Prevents browsers from guessing the content type of a response. Without it, browsers may execute a text file as JavaScript if it looks like code.

Referrer-Policy

Controls how much URL information is shared when users navigate away from your site. Without it, full URLs including query strings (which may contain session tokens) are sent to third parties.

Permissions-Policy

Controls which browser features (camera, microphone, geolocation) your page and embedded iframes can access. Third-party scripts in your page cannot access features you have not explicitly allowed.

How to check yours

Use HeadersFixer — it fetches your live URL, reads the response headers, and shows exactly which security headers are missing or misconfigured. It generates the exact config for your stack: Nginx, Apache, Vercel, Cloudflare, Express, Caddy, or Next.js.

Scan your security headers → HeadersFixer