Google PageSpeed提示使用已弃用API(Expect-ct)但无对应Header的问题
解决Google PageSpeed“使用已弃用API”及Expect-ct警告问题
1. 彻底排查Expect-ct响应头的来源
- 不要只局限于
.htaccess,检查服务器全局配置:比如Apache的httpd.conf或站点级配置文件、Nginx的nginx.conf/站点配置块,确认是否有Expect-CT相关配置项 - 检查CDN设置:如果用了Cloudflare、CloudFront等CDN,进入CDN的响应头管理界面,查看是否默认开启了Expect-ct,部分CDN会自动添加这类安全头
- 排查CMS/框架插件:比如WordPress的安全插件、Drupal的模块、Laravel的中间件,这些工具可能自动注入该响应头,需在插件设置里关闭相关选项
2. 清理Chrome的站点缓存残留
- 开启Chrome开发者工具,切换到「网络」面板,勾选「禁用缓存」,再按
Ctrl+Shift+R(Windows/Linux)或Cmd+Shift+R(Mac)强制刷新页面,查看控制台警告是否消失 - 若仍有警告,直接删除站点专属数据:Chrome设置→隐私和安全→网站设置→查看所有网站数据和权限,搜索你的域名,删除对应数据后重新测试
3. 强制更新PageSpeed测试结果
- 在PageSpeed Insights测试页面,点击底部的「重新分析」按钮,确保测试抓取的是最新的站点资源
- 若多次重新分析仍显示警告,尝试切换测试的地理位置节点(比如从美国切换到欧洲),避免测试节点的缓存影响结果
4. 排查其他可能的已弃用API
因为PageSpeed未明确指出具体问题,需扩大排查范围:
- 检查前端JS代码:是否使用了
document.write()、旧版XMLHttpRequest调用、已弃用的Web API(如Navigator.getUserMedia()) - 检查第三方脚本:广告代码、统计工具、社交分享插件等,这些第三方资源可能包含已弃用的API调用,可临时移除这类脚本后重新测试PageSpeed,定位问题来源
内容的提问来源于stack exchange,提问作者Eddie
相关产品推荐
相关产品推荐

