HTTP Headers Analyzer

4 / 10
https://tbesttechwebs1.site
WordPress โ†’ LiteSpeed โ†’ Browser
8 missing headers, 2 warnings, 4 notices
JSON API
Header
Value
Explanation
x-powered-by
php/8.2.30
Some of the software used to generate or serve this page.
Warning Sharing too many details about a server or web application makes it easier for hackers to target a website. Avoid specific version numbers such as 8.2.30, especially when running software that is end-of-life and/or has known security bugs. Consider removing this header. At a minimum, remove any version number.
content-type
text/html; charset=utf-8
The type of the message body, specified as a MIME type.
cache-control
public, max-age=604800
public means the response may be stored by all caches, including browser caches, CDNs, and shared caches.
max-age specifies the maximum amount of seconds a page is considered valid. The higher max-age, the longer a page can be cached.
expires
sat, 25 apr 2026 07:48:34 gmt
This Expires date is in the future: the page can be served from a cache. The page is set to expire in 535956 seconds. At that point, caches should be refreshed.
Notice Because there is a Cache-Control header with a max-age and/or s-maxage directive, the Expires header will be ignored. Consider removing Expires to save bandwidth and processing power.
etag
"1302-1776498514;br"
A unique identifier that changes every time a page at a given URL changes. It acts as a fingerprint. A cache can compare ETag values to see if the page has changed and has become stale. For example, a browser will send the ETag value of a cached page in an If-None-Match header. The web server compares the ETag value sent by the browser with the ETag value of the current version of the page. If both values are the same, the web server sends back a 304 Not Modified status and no body.
x-litespeed-cache
hit
The page was served from LiteSpeed's cache.
content-encoding
br
Specifies how the resource is compressed. Not to be confused with Transfer-Encoding which specifies how the data is transferred.
br means that the data is compressed with brotli.
Warning Add a Content-Length header. The Content-Length header is required, unless the message is transported using chunked encoding. Without a Content-Length header some servers will respond with 400 (bad request) or terminate connections early.
vary
accept-encoding
The Vary header specifies a list of headers that must be considered when caching responses. For a cached response to be used, these headers must match between the cached response and the new request. This ensures that the appropriate version of a resource is served based on factors like language, encoding, or device type.
date
sun, 19 apr 2026 02:55:57 gmt
The date and time at which the request was made. A browser uses it for age calculations rather than using its own internal date and time; e.g. when comparing against Max-Age or Expires.
server
litespeed
Identifies the software used by the origin server to handle the request (e.g. Apache, Nginx, Cloudflare).
Notice Consider removing or minimizing the Server header. Even without a version number, it reveals the server software, which aids reconnaissance.
platform
hostinger
Some of the software used to generate or serve this page.
panel
hpanel
content-security-policy
upgrade-insecure-requests
The Content Security Policy (CSP) header helps prevent cross-site scripting (XSS), clickjacking, and other code injection attacks by specifying which dynamic resources are allowed to load.
upgrade-insecure-requests instructs browsers to replace insecure URLs (HTTP) with secure URLs (HTTPS).
Notice No default-src directive is set. Without it, directives that are not explicitly defined have no fallback restriction.
Notice Consider adding base-uri 'self' or base-uri 'none' to prevent base tag injection, which can redirect relative URLs to an attacker-controlled domain.
strict-transport-security
missing Add a Strict-Transport-Security header. The Strict-Transport-Security header or HSTS header is used to instruct browsers to only use HTTPS, instead of using HTTP. It helps enforce secure communication.
referrer-policy
missing Add a Referrer-Policy header. When a visitor navigates from one page to another, browsers often pass along referrer information. The Referrer-Policy header controls how much referrer information a browser can share. This is important to configure when private information is embedded in the path or query string and passed onto an external destination.
permissions-policy
missing Add a Permissions-Policy header. Restrict access to device features like the camera, microphone, location, accelerometer and much more.
cross-origin-embedder-policy
missing Add a Cross-Origin-Embedder-Policy header. It requires cross-origin resources to explicitly consent before this page can load them, protecting those resources from being exposed to Spectre-style timing attacks. Together with Cross-Origin-Opener-Policy, it enables cross-origin isolation and access to SharedArrayBuffer.
cross-origin-opener-policy
missing Add a Cross-Origin-Opener-Policy header. It prevents other sites from retaining a window reference to this page when opened via window.open() or navigation, blocking script-based attacks through shared browsing contexts.
cross-origin-resource-policy
missing Add a Cross-Origin-Resource-Policy header. It controls which origins can embed or load this page's resources (images, scripts, etc.), preventing hotlinking and cross-origin data leaks.
x-content-type-options
missing Add an X-Content-Type-Options: nosniff header to prevent browsers from MIME type sniffing. Without it, browsers may interpret files as a different content type than intended, which can lead to security vulnerabilities.
x-permitted-cross-domain-policies
missing Add a X-Permitted-Cross-Domain-Policies header to prevent Flash, Adobe Reader and other clients from sharing data across domains.