You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Nuxt3静态构建移除内联脚本以适配严格CSP

背景

我正在开发一个Nuxt3项目,部署时遇到了问题。应用被构建为100%静态文件(已禁用SSR),且需要强制执行严格的CSP。

问题

默认配置下,Nuxt会生成2个内联script标签:

  • config:指定window.__NUXT__.config(包含runtime和app配置对象)
  • __NUXT_DATA__:似乎包含构建相关的元数据(错误信息、serverRendered等)

这些内联脚本与不允许内联脚本的CSP规则冲突。

期望解决方案

我希望找到一种配置Nuxt的方式,将这些脚本从内联形式改为链接到静态文件(或直接打包进主脚本)。

已排除的解决方案

我已考虑并排除了以下几种方案:

  • nonce:应用为静态部署,nonce不可行。
  • unsafe-inline:此方案不被接受(无法通过审核)。
  • script hash:每次更新应用配置都需手动修改CSP,过于繁琐。
  • nuxt.config.ts > features > noscript:此配置会禁用所有脚本,导致应用无法正常运行。
  • nuxt.config.ts > render > injectScripts:该方案看似可行,但仅适用于Nuxt2。

内容的提问来源于stack exchange,提问作者bastien girschig

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 19:22:40