WordPress 中有很多实用的钩子(Hooks),wp_headers 挂钩可用于修改 WordPress 的 HTTP 标头。使用此挂钩可将安全标头添加到网站响应 HTTP 标头里。另外还可以将字体、Logo图片等每页都需加载的资源添加到预加载列表中提升速度。
wp_headers 挂钩
示范代码:
function mmeasy_headers(){
$headers['content-security-policy'] = 'upgrade-insecure-requests';
$headers['strict-transport-security'] = 'max-age=63072000; includeSubDomains; preload';
$headers['X-Content-Type-Options'] = 'nosniff';
$headers['X-XSS-Protection'] = '1; mode=block';
$headers['x-frame-options'] = 'SAMEORIGIN';
$headers['Referrer-Policy'] = 'strict-origin-when-cross-origin';
$headers['Link'] = '<https://www.mmeasy.cn>; rel=preconnect; crossorigin';
$headers['Link'] = '<https://www.mmeasy.cn/wp-content/uploads/logo.jpg>; rel=preload; as=image';
$headers['Link'] = '</wp-content/uploads/themes/yourtheme/images/logo.webp>; rel=preload; as=image';
return $headers;
}
add_filter( 'wp_headers', 'mmeasy_headers', 100 );
上述代码添加到当前主题的functions.php文件中,或使用代码片段插件。
代码详解
Content-Security-Policy
(CSP) **upgrade-insecure-requests
**指令指示客户端将该站点的所有不安全 URL(通过 HTTP 提供的 URL)视为已被替换为安全 URL(通过 HTTPS 提供的 URL)。
Strict-Transport-Security
(通常简称为 HSTS)响应标头用来通知浏览器应该只通过 HTTPS 访问该站点,并且以后使用 HTTP 访问该站点的所有尝试都应自动重定向到 HTTPS。
X-Content-Type-Options: nosniff
最初是由微软在 IE 8 浏览器中引入的,提供给网站管理员用作禁用内容嗅探的手段,内容嗅探技术可能会把不可执行的 MIME 类型转变为可执行的 MIME 类型。在此之后,其他浏览器也相继引入了这个消息头,尽管它们的 MIME 嗅探算法没有那么有侵略性。
X-XSS-Protection: 1;mode=block
在检测到 XSS 攻击时阻止页面加载。
X-Frame-Options HTTP
响应头是用来给浏览器指示允许一个页面可否在<frame>、<iframe>、<embed>、<object>
中展现的标记,如果设置为 SAMEORIGIN
,那么页面就可以在同域名页面的 frame 中嵌套。
Referrer-Policy: strict-origin-when-cross-origin
对于同源的请求,会发送完整的 URL 作为引用地址;在同等安全级别的情况下,发送文件的源作为引用地址 (HTTPS->HTTPS);在降级的情况下不发送此首部 (HTTPS->HTTP)。
Link: <url>; rel=preload; as=image
注意替换URL为实际地址,一般可以将顶部的LOGO或首屏需要加载的图片添加到预加载列表,从而提高网页性能与 LCP 得分。
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
本站信息来自网络收集整理,版权争议与本站无关。
您必须在下载后的24个小时之内,从您的电脑或手机等设备中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。
我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!