WordPress Hooks 几行代码添加安全标头,增强安全性与性能

2023年 7月 10日 34.3k 0

WordPress 中有很多实用的钩子(Hooks),wp_headers 挂钩可用于修改 WordPress 的 HTTP 标头。使用此挂钩可将安全标头添加到网站响应 HTTP 标头里。另外还可以将字体、Logo图片等每页都需加载的资源添加到预加载列表中提升速度。

wp_headers 挂钩

示范代码:

function zhanzhangb_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'] = '; rel=preconnect; crossorigin'; 
	$headers['Link'] = '; rel=preload; as=image';
	$headers['Link'] = '; rel=preload; as=image';
	return $headers;
 }
add_filter( 'wp_headers', 'zhanzhangb_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 响应头是用来给浏览器指示允许一个页面可否在、、、中展现的标记,如果设置为 SAMEORIGIN,那么页面就可以在同域名页面的 frame 中嵌套。

Referrer-Policy: strict-origin-when-cross-origin 对于同源的请求,会发送完整的 URL 作为引用地址;在同等安全级别的情况下,发送文件的源作为引用地址 (HTTPS->HTTPS);在降级的情况下不发送此首部 (HTTPS->HTTP)。

Link: ; rel=preload; as=image 注意替换URL为实际地址,一般可以将顶部的LOGO或首屏需要加载的图片添加到预加载列表,从而提高网页性能与 LCP 得分。

相关文章

Mallox勒索软件新Linux变种现世
伪装成破解程序和商业工具的新型恶意软件正在传播
Orcinius后门新样本分析
Poseidon窃取程序通过Google广告感染Mac用户
大选开始之际,欧盟各政党遭受 DDoS 攻击
微软2024

发布评论