How to send headers in WordPress with cache plugin running

Viewed 19

I am trying to put header to my WordPress website but some of headers are not working as I install nitro pack, i am testing if all headers are from geekflare security headers test the result after installing nitro pack

the code I tried

function shp_send_hsts_header() {
  header( 'Strict-Transport-Security: max-age=31536000; includeSubDomains; preload' );
  header("Content-Security-Policy-Report-Only: <your directives>");
  header('X-Frame-Options: SAMEORIGIN');
 header('Referrer-Policy: no-referrer; strict-origin-when-cross-origin');
 header('Content-Security-Policy: upgrade-insecure-requests');
 header('Permissions-Policy: geolocation=self');
 header('X-Content-Type-Options:nosniff');
 header("Clear-Site-Data: none");
 header("Cross-Origin-Embedder-Policy: require-corp");
 header("Cross-Origin-Resource-Policy: same-site | same-origin | cross-origin");
 header("Cross-Origin-Opener-Policy: same-origin");
 header("X-Permitted-Cross-Domain-Policies: none");
}

add_action( 'send_headers', 'shp_send_hsts_header' );

the 2nd code i tried

function pagely_security_headers( $headers ) {
     if (!is_admin()) {
    $headers['X-XSS-Protection'] = '1; mode=block';
    $headers['X-Content-Type-Options'] = 'nosniff';
    $headers['X-Content-Security-Policy'] = 'default-src \'self\'; script-src \'self\';';
    $headers['X-Permitted-Cross-Domain-Policies'] = 'none'; 
    $headers['Clear-Site-Data'] = 'none';
    $headers['Cross-Origin-Embedder-Policy'] = 'require-corp';
    $headers['Cross-Origin-Resource-Policy'] = 'same-site | same-origin | cross-origin';
    $headers['Cross-Origin-Opener-Policy'] = 'same-origin';
    $headers['cache-control'] = 'maxage=31536000';
    }
    return $headers;
}

add_filter( 'wp_headers', 'pagely_security_headers' );
0 Answers
Related