Title: EssentialHeaders
Author: Alex Hedström
Published: <strong>14 Augustus, 2026</strong>
Last modified: 28 Augustus, 2026

---

Search plugins

![](https://ps.w.org/essentialheaders/assets/banner-772x250.png?rev=3646718)

![](https://ps.w.org/essentialheaders/assets/icon-256x256.png?rev=3646718)

# EssentialHeaders

 Troch [Alex Hedström](https://profiles.wordpress.org/alexhedstrom/)

[Download](https://downloads.wordpress.org/plugin/essentialheaders.1.0.2.zip)

 * [Details](https://fy.wordpress.org/plugins/essentialheaders/#description)
 * [Resinsjes](https://fy.wordpress.org/plugins/essentialheaders/#reviews)
 *  [Ynstallaasje](https://fy.wordpress.org/plugins/essentialheaders/#installation)
 * [Ûntwikkeling](https://fy.wordpress.org/plugins/essentialheaders/#developers)

 [Stypje](https://wordpress.org/support/plugin/essentialheaders/)

## Beskriuwing

EssentialHeaders is a focused WordPress plugin that attaches the HTTP security headers
browsers expect, so protection is not left to chance or buried in server config.

Under Settings  EssentialHeaders you get three tabs:

 * Headers — overview of which headers are enabled and will be sent
 * Settings — toggles and editable values for each header
 * About — plugin info

Headers covered:

 * Content-Security-Policy (CSP)
 * Strict-Transport-Security (HSTS)
 * X-Frame-Options
 * X-Content-Type-Options
 * Referrer-Policy
 * Permissions-Policy
 * X-Powered-By (remove it or replace its value)

Safer headers are enabled with sensible defaults. CSP starts off with a strict baseline,
so you can test and allow only the sources your site needs before enabling it. Headers
apply to public site responses (pages, feeds, and the login screen)—not wp-admin,
AJAX, REST, GraphQL, or XML-RPC. HSTS is only sent over HTTPS. Default HSTS uses
max-age only; add includeSubDomains yourself when every subdomain is ready.

## Ynstallaasje

 1. Upload the `essentialheaders` folder to the `/wp-content/plugins/` directory.
 2. Activate the plugin through the Plugins menu in WordPress.
 3. Open Settings  EssentialHeaders to review and configure headers.

## FAQ

### Will this break my site?

The default set is conservative. Content-Security-Policy is off by default because
a strict CSP can block scripts or styles your theme needs. Enable CSP when you are
ready to tune it.

### Does HSTS work on HTTP?

No. Strict-Transport-Security is only sent when the visitor reaches the site over
HTTPS.

### Does the login screen get these headers?

Yes. The login screen is treated as a public response. wp-admin, AJAX, REST, GraphQL,
and XML-RPC are excluded, so dashboards and APIs are not broken by a strict CSP.

### Does this change site content?

No. The plugin only stores its own options and manages HTTP response headers on 
public responses.

### Can X-Powered-By always be removed?

EssentialHeaders removes PHP- and WordPress-managed instances at the latest applicable
WordPress header hook. Another callback running afterward, a reverse proxy, or a
web server can add the header again; remove it at that layer as well.

## Resinsjes

D’r binne gjin resinsjes foar dizze plugin.

## Meiwurkers & amp; Untwikkelders

“EssentialHeaders” is iepen boarne software. De folgjende minsken hawwe bydroegen
oan dizze plugin.

Meiwurkers

 *   [ Alex Hedström ](https://profiles.wordpress.org/alexhedstrom/)

[Oersette “EssentialHeaders” yn jo taal.](https://translate.wordpress.org/projects/wp-plugins/essentialheaders)

### Ynteressearre yn ûntwikkeling?

[Blêdzje troch de koade](https://plugins.trac.wordpress.org/browser/essentialheaders/),
besjoch de [SVN-repository](https://plugins.svn.wordpress.org/essentialheaders/),
of abonnearje op it [ûntwikkelingslogboek](https://plugins.trac.wordpress.org/log/essentialheaders/)
troch [RSS](https://plugins.trac.wordpress.org/log/essentialheaders/?limit=100&mode=stop_on_copy&format=rss).

## Feroaringslog

#### 1.0.2

 * Add: manage X-Powered-By by removing it when its value is blank or replacing 
   it with a custom value.
 * Improve: enforce managed header replacement at the latest applicable WordPress
   header hooks.

#### 1.0.1

 * Fix: always send security headers on front-end HTML even when the request Accept
   header prefers JSON. Skipping those requests let page caches store header-less
   responses and broke scanner results after cache warm-up.

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.0.2**
 *  Last updated **3 wiken yn ôl**
 *  Active installations **20+**
 *  WordPress version ** 6.3 of heger **
 *  Tested up to **7.1.1**
 *  PHP version ** 7.4 of heger **
 *  Language
 * [English (US)](https://wordpress.org/plugins/essentialheaders/)
 * Tags
 * [csp](https://fy.wordpress.org/plugins/tags/csp/)[headers](https://fy.wordpress.org/plugins/tags/headers/)
   [hsts](https://fy.wordpress.org/plugins/tags/hsts/)[http](https://fy.wordpress.org/plugins/tags/http/)
   [security](https://fy.wordpress.org/plugins/tags/security/)
 *  [Avansearre werjefte](https://fy.wordpress.org/plugins/essentialheaders/advanced/)

## Wurdearrings

Der binne noch gjin resinsjes ynstjoerd.

[Your review](https://wordpress.org/support/plugin/essentialheaders/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/essentialheaders/reviews/)

## Meiwurkers

 *   [ Alex Hedström ](https://profiles.wordpress.org/alexhedstrom/)

## Stypje

Hast wat te sizzen? Help nedich hawwe?

 [Besjoch stipefoarum](https://wordpress.org/support/plugin/essentialheaders/)