{
    "url": "https://analteensex.net",
    "score": 4,
    "summary": {
        "missing": 10,
        "warnings": 2,
        "notices": 4
    },
    "caches": [
        "Website",
        "Cloudflare",
        "Browser"
    ],
    "headers": {
        "date": {
            "value": "wed, 29 apr 2026 23:33:15 gmt",
            "findings": [
                {
                    "severity": "info",
                    "message": "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 <code>Max-Age</code> or <code>Expires</code>."
                }
            ]
        },
        "content-type": {
            "value": "text/html; charset=utf-8",
            "findings": [
                {
                    "severity": "info",
                    "message": "The type of the message body, specified as a <a href=\"https://en.wikipedia.org/wiki/Media_type\">MIME type</a>."
                }
            ]
        },
        "server": {
            "value": "cloudflare",
            "findings": [
                {
                    "severity": "info",
                    "message": "Identifies the software used by the origin server to handle the request (e.g. Apache, Nginx, Cloudflare)."
                },
                {
                    "severity": "notice",
                    "message": "Consider removing or minimizing the <code>Server</code> header. Even without a version number, it reveals the server software, which aids reconnaissance."
                }
            ]
        },
        "nel": {
            "value": "{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}",
            "findings": [
                {
                    "severity": "info",
                    "message": "The <code>NEL</code> (Network Error Logging) header tells browsers to report network-level failures (DNS errors, TCP timeouts, TLS problems) back to the server. This means you can detect when real users fail to reach your site, even though the failure happens before your server sees a request."
                },
                {
                    "severity": "info",
                    "message": "<code>report_to</code> defines the reporting group that reports for this NEL policy will be sent to. The reporting group details are specified in the <code>Report-To</code> header."
                },
                {
                    "severity": "info",
                    "message": "<code>max_age</code> defines the number of seconds the browser should remember these settings. Prevents the browser from having to parse the JSON on each request."
                },
                {
                    "severity": "info",
                    "message": "<code>success_fraction</code> defines the sampling rate that should be applied to reports about successful network requests. Its value must be a number between 0.0 and 1.0: 0 means no successful requests should be reported, and 1 means that every successful request should be reported."
                }
            ]
        },
        "vary": {
            "value": "accept-encoding",
            "findings": [
                {
                    "severity": "info",
                    "message": "The <code>Vary</code> 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."
                }
            ]
        },
        "count-hit": {
            "value": "done",
            "findings": []
        },
        "set-cookie": {
            "value": "81b730ed1bcdec1e9537e5e97a96dab4=deleted; expires=thu, 01-jan-1970 00:00:01 gmt; max-age=0; path=/, 52a4897efbce423e9b2ce8b18cdf7aca=spiders; expires=thu, 30-apr-2026 23:33:15 gmt; max-age=86400; path=/, 79ca506a8011c6b2489566bd139cfeb2=spiders; expires=thu, 30-apr-2026 23:33:15 gmt; max-age=86400; path=/, 91090b65c202191e980b7c40fc5965b3=1777505595; expires=thu, 30-apr-2026 23:33:15 gmt; max-age=86400; path=/, e79c8e9c305138956f3ba261b763ee5b=1; expires=thu, 30-apr-2026 23:33:15 gmt; max-age=86400; path=/",
            "findings": [
                {
                    "severity": "info",
                    "message": "A cookie that was sent from the server to the browser."
                },
                {
                    "severity": "info",
                    "message": "<code>expires=</code> sets the maximum lifetime of the cookie using a specific date."
                },
                {
                    "severity": "info",
                    "message": "<code>max-age=</code> sets the maximum lifetime of the cookie in seconds."
                },
                {
                    "severity": "info",
                    "message": "<code>path=</code> indicates the path that must exist in the requested URL for the browser to send the cookie."
                },
                {
                    "severity": "warning",
                    "message": "This cookie is missing the <code>secure</code> flag. Without it, the cookie can be sent over unencrypted HTTP connections, making it vulnerable to interception."
                },
                {
                    "severity": "notice",
                    "message": "This cookie is missing the <code>httponly</code> flag. Without it, JavaScript can access the cookie, increasing the risk of cross-site scripting (XSS) attacks."
                },
                {
                    "severity": "notice",
                    "message": "This cookie does not set an explicit <code>samesite</code> attribute. Browsers default to <code>lax</code>, but setting it explicitly is recommended for clarity and cross-browser consistency."
                }
            ]
        },
        "report-to": {
            "value": "{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=qgc4008qgjfyd%2fxzfa3hjsjizevy7jd%2fk0fbzcj8%2fno10fq4cih1y6kmrmgntb2q10glwodiv%2fpm0yhg%2bjsf80n2vereqwqre5dqa35k4cjq6mhp0%2fkiecyprqse8ogjmn4%3d\"}]}",
            "findings": [
                {
                    "severity": "info",
                    "message": "The <code>Report-To</code> header defines where browsers should send error reports. It sets up named reporting endpoints that other headers (like <code>NEL</code> and <code>Content-Security-Policy</code>) reference when they need to send violation or failure data."
                },
                {
                    "severity": "info",
                    "message": "<code>group</code> defines the reporting group. Groups allow reports to be grouped logically; e.g. there could be a group for network errors and a second group for browser feature deprecation reports."
                },
                {
                    "severity": "info",
                    "message": "<code>max_age</code> defines the number of seconds the browser should remember these settings. Prevents the browser from having to parse the JSON on each request."
                },
                {
                    "severity": "info",
                    "message": "<code>endpoints</code> defines one or more URLs where the reports need to be sent to. Multiple URLs can be specified for failover and load-balancing. Endpoints can be assigned a <code>weight</code> to distribute load, with each endpoint receiving a specified fraction of the reporting traffic. Endpoints can also be assigned a <code>priority</code> to set up fallback collectors."
                }
            ]
        },
        "cf-cache-status": {
            "value": "dynamic",
            "findings": [
                {
                    "severity": "notice",
                    "message": "The <code>dynamic</code> status indicates that Cloudflare did not cache this resource. This is normal and expected for HTML pages — by default, Cloudflare only caches static assets like images, CSS, and JavaScript. To cache HTML content as well, change the 'Cache Level' setting from <code>dynamic</code> to <code>cache everything</code> in Cloudflare."
                }
            ]
        },
        "content-encoding": {
            "value": "zstd",
            "findings": [
                {
                    "severity": "info",
                    "message": "Specifies how the resource is <em>compressed</em>. Not to be confused with <code>Transfer-Encoding</code> which specifies how the data is transferred."
                },
                {
                    "severity": "warning",
                    "message": "Add a <code>Content-Length</code> header. The Content-Length header is required, unless the message is transported using chunked encoding. Without a <code>Content-Length</code> header some servers will respond with 400 (bad request) or terminate connections early."
                }
            ]
        },
        "cf-ray": {
            "value": "9f421c561ed139ac-iad",
            "findings": [
                {
                    "severity": "info",
                    "message": "The <code>cf-ray</code> header provides a unique identifier for each request through Cloudflare. It's useful for troubleshooting and tracking requests in Cloudflare logs."
                }
            ]
        },
        "alt-svc": {
            "value": "h3=\":443\"; ma=86400",
            "findings": [
                {
                    "severity": "info",
                    "message": "The <code>alt-svc</code> header tells the browser that the same content is available over a different protocol. This allows the browser to upgrade to a faster protocol (e.g. HTTP/3 over QUIC) on subsequent requests without a separate negotiation step."
                },
                {
                    "severity": "info",
                    "message": "<code>h3</code> indicates that HTTP/3 is supported. HTTP/3 uses the QUIC protocol (UDP-based) instead of TCP, which eliminates the TCP handshake delay and performs better on lossy networks. Variants like <code>h3-29</code> refer to specific drafts of the HTTP/3 protocol."
                },
                {
                    "severity": "info",
                    "message": "<code>ma=86400</code> specifies that the alternative service information is fresh for 86400 seconds."
                }
            ]
        }
    },
    "missing": {
        "strict-transport-security": {
            "message": "Add a <code>Strict-Transport-Security</code> header. The <code>Strict-Transport-Security</code> header or <i>HSTS</i> header is used to instruct browsers to only use HTTPS, instead of using HTTP. It helps enforce secure communication."
        },
        "content-security-policy": {
            "message": "Add a <code>Content-Security-Policy</code> header. The <code>Content-Security-Policy</code> header helps browsers prevent cross site scripting (XSS) and data injection attacks."
        },
        "referrer-policy": {
            "message": "Add a <code>Referrer-Policy</code> header. When a visitor navigates from one page to another, browsers often pass along <em>referrer information</em>. The <code>Referrer-Policy</code> header controls how much referrer information a browser can share. This is important to configure when private information is embedded in the <i>path</i> or <i>query string</i> and passed onto an external destination."
        },
        "permissions-policy": {
            "message": "Add a <code>Permissions-Policy</code> header. Restrict access to device features like the camera, microphone, location, accelerometer and much more."
        },
        "cross-origin-embedder-policy": {
            "message": "Add a <code>Cross-Origin-Embedder-Policy</code> 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 <code>Cross-Origin-Opener-Policy</code>, it enables cross-origin isolation and access to <code>SharedArrayBuffer</code>."
        },
        "cross-origin-opener-policy": {
            "message": "Add a <code>Cross-Origin-Opener-Policy</code> header. It prevents other sites from retaining a <code>window</code> reference to this page when opened via <code>window.open()</code> or navigation, blocking script-based attacks through shared browsing contexts."
        },
        "cross-origin-resource-policy": {
            "message": "Add a <code>Cross-Origin-Resource-Policy</code> header. It controls which origins can embed or load this page's resources (images, scripts, etc.), preventing hotlinking and cross-origin data leaks."
        },
        "x-frame-options": {
            "message": "Add a <code>X-Frame-Options</code> header. The <code>X-Frame-Options</code> header prevents this URL from being embedded in an <code>iframe</code>. This protects against clickjacking attacks. Alternatively, set a <code>Content-Security-Policy</code> header with a <code>frame-ancestors</code> directive."
        },
        "x-content-type-options": {
            "message": "Add an <code>X-Content-Type-Options: nosniff</code> 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": {
            "message": "Add a <code>X-Permitted-Cross-Domain-Policies</code> header to prevent Flash, Adobe Reader and other clients from sharing data across domains."
        }
    }
}