npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。

npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。

问题场景:

  • 更新系统之后,运行脚本报错。

报错 · 部分说明:

  • 报错内容示下:

    bash 复制代码
    npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。
    有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
    所在位置 行:1 字符: 1
    + npm run dev
    + ~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException

分析:

  • 在安全性方面,推荐使用 RemoteSigned,而不是 Unrestricted,原因如下:
    RemoteSigned vs Unrestricted 的区别(执行策略对比

    策略 (ExecutionPolicy) 本地脚本 远程脚本(下载的脚本) 安全性(星级) 适用场景 推荐场景
    RemoteSigned ✅ 允许运行 必须由受信任的发布者签名 ⚠️ 中等(⭐⭐⭐⭐) 推荐,平衡安全性和灵活性 日常开发推荐
    Unrestricted ✅ 允许运行 ✅ 允许运行(不检查签名) ❌ 低 (⭐) 仅临时调试,不建议长期使用 临时调试
    Bypass ✅ 允许运行 完全不检查,无警告 ❌ 最低(⭐) 仅限临时测试,不建议 临时测试
    Restricted (默认) ❌ 禁止 ❌ 禁止 高 (⭐⭐⭐⭐) 高安全环境
  • 为什么推荐 RemoteSigned?

    1. 允许运行本地脚本(如 npm.ps1),满足日常开发需求。
    2. 对远程脚本(如从网络下载的 .ps1 文件)要求数字签名,防止恶意脚本执行。
    3. 比 Unrestricted 更安全,避免无意中运行未经验证的脚本。

安全建议

  • 永远不要在生产环境永久设置Unrestricted

  • 优先使用CurrentUser 作用域而非LocalMachine

  • 下载的PS脚本应先检查再运行

  • 定期检查当前策略:Get-ExecutionPolicy -List


对远程脚本(如从网络下载的 .ps1 文件)要求数字签名,防止恶意脚本执行。

比 Unrestricted 更安全,避免无意中运行未经验证的脚本。


解决办法:(可参考下文cmd执行截图)

博主自留地:本项目解决办法

  • 永久更改执行策略

    如果你信任运行脚本,可以永久更改执行策略:

    bash 复制代码
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

    Win11 系统更新之后, webstorm启动项目报错


cmd执行截图:
  • cmd执行面板参考:


成功处理之后,验证:

  • 启动验证是否正常【验证ok】

完结。

相关推荐
林晓lx16 分钟前
使用Git钩子+ husky + lint语法检查提高前端项目代码质量
前端·git·gitlab·源代码管理
王同学要变强42 分钟前
【深入学习Vue丨第二篇】构建动态Web应用的基础
前端·vue.js·学习
程序定小飞1 小时前
基于springboot的web的音乐网站开发与设计
java·前端·数据库·vue.js·spring boot·后端·spring
Hello_WOAIAI1 小时前
2.4 python装饰器在 Web 框架和测试中的实战应用
开发语言·前端·python
FinClip1 小时前
凡泰极客亮相香港金融科技周,AI助力全球企业构建超级应用
前端
阿四1 小时前
【Nextjs】为什么server action中在try/catch内写redirect操作会跳转失败?
前端·next.js
申阳1 小时前
Day 6:04. 基于Nuxt开发博客项目-LOGO生成以及ICON图标引入
前端·后端·程序员
中国lanwp2 小时前
npm中@your-company:registry 和 registry 的区别
前端·npm·node.js
Bacon2 小时前
Electron 应用商店:开箱即用工具集成方案
前端·github
行走的陀螺仪2 小时前
uni-app + Vue3 实现折叠文本(超出省略 + 展开收起)
前端·javascript·css·uni-app·vue3