跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
JavaScriptNode.js大前端

Windows 11 安装 Node.js 后 npm install 报错:禁止运行脚本的解决方案

Windows 11 下安装 Node.js 后执行 npm install 常因 PowerShell 执行策略受限而报错。核心解决思路是调整当前用户或进程的执行策略为 RemoteSigned。通过管理员权限运行 PowerShell 可永久生效,临时会话则使用 Scope Process。此外也可切换 CMD 或使用 Bypass 参数绕过。调整后需重启终端验证。Node.js 作为基于 V8 引擎的运行时,其非阻塞 I/O 特性适合高并发场景,但需注意单线程限制。

MongoKing发布于 2026/4/10更新于 2026/6/1119 浏览
Windows 11 安装 Node.js 后 npm install 报错:禁止运行脚本的解决方案

Windows 11 安装 Node.js 后 npm install 报错:禁止运行脚本的解决方案

在 Windows 11 环境下配置 Node.js 开发环境时,执行 npm install 经常会遇到'在此系统上禁止运行脚本'的错误。这通常不是软件损坏,而是 PowerShell 的安全策略限制。今天分享几种有效的解决方法。

错误提示截图

解决方案

这个错误是因为 PowerShell 默认的执行策略限制了脚本的运行。以下是几种解决方法,按推荐程度排序。

方案一:以管理员身份修改执行策略(推荐)

这是最彻底的解决办法,设置后当前用户下即可正常运行本地脚本。

  1. 以管理员身份打开 PowerShell
    • 在开始菜单搜索 "PowerShell"
    • 右键点击 "Windows PowerShell",选择 "以管理员身份运行"
  2. 执行以下命令:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

或者更宽松的策略(仅用于测试环境):

Set-ExecutionPolicy Unrestricted -Scope CurrentUser

运行成功后,重新打开终端,npm install 应该可以正常工作了。显示依赖包正在下载中,会自动创建 node_modules 文件夹保存对应的依赖包。

安装成功截图

方案二:只为当前会话临时允许

如果你不想永久修改系统策略,只想在当前窗口生效,可以使用 -Scope Process 参数。

Set-ExecutionPolicy RemoteSigned -Scope Process

关闭该终端窗口后,策略将自动恢复。

方案三:使用命令提示符 (CMD)

如果不想折腾 PowerShell,暂时使用 CMD 代替也可以绕过此限制:

npm install 你的包名

方案四:绕过策略执行单个脚本

针对特定脚本文件,可以直接调用 PowerShell 并指定 Bypass 参数:

powershell -ExecutionPolicy Bypass -File "C:\Program Files\nodejs\npm.ps1"

建议使用方法一,设置 RemoteSigned 策略。这样既能运行本地脚本,又能确保从互联网下载的脚本需要数字签名,平衡了安全性和便利性。

Node.js 核心概念回顾

搞定环境问题后,顺便复习一下 Node.js 的核心机制,帮助理解为什么它适合做服务端开发。

什么是 Node.js?

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,让开发者能够使用 JavaScript 编写服务器端应用程序。

核心特点

1. 非阻塞 I/O 和事件驱动

Node.js 不等待操作完成就继续执行后续代码,非常适合 I/O 密集型应用。

// 非阻塞方式读取文件
const fs = require('fs');
fs.readFile('file.txt', 'utf8', (err, data) => {
  if (err) throw err;
  console.log(data);
});
console.log('程序继续执行,不会等待文件读取完成');
2. 单线程但高并发
  • 使用事件循环处理并发
  • 通过异步操作避免线程阻塞
  • 适合高并发网络服务

架构组成

  • V8 JavaScript 引擎:由 Google 开发,将 JavaScript 编译为机器码,高性能执行。
  • LibUV 库:跨平台异步 I/O 库,处理事件循环和提供线程池。
  • 核心模块:如 http, fs, path, events 等内置功能。
const http = require('http');
const fs = require('fs');
const path = require('path');
const events = require('events');

基本用法示例

1. 创建 HTTP 服务器
const http = require('http');
const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/html' });
  res.end('<h1>Hello Node.js!</h1>');
});
server.listen(3000, () => {
  console.log('服务器运行在 http://localhost:3000');
});
2. 文件操作
const fs = require('fs').promises;
async function readFile() {
  try {
    const data = await fs.readFile('example.txt', 'utf8');
    console.log(data);
  } catch (error) {
    console.error('读取文件出错:', error);
  }
}
3. 模块系统
// math.js
exports.add = (a, b) => a + b;
exports.multiply = (a, b) => a * b;

// app.js
const math = require('./math');
console.log(math.add(2, 3)); // 5

包管理 - npm

常用命令
npm init # 初始化项目
npm install express # 安装包
npm install -g nodemon # 全局安装
npm update # 更新包
npm run start # 运行脚本
package.json 示例
{
  "name": "my-app",
  "version": "1.0.0",
  "scripts": {
    "start": "node app.js",
    "dev": "nodemon app.js"
  },
  "dependencies": {
    "express": "^4.18.0"
  }
}

应用场景与生态

适合的场景:API 服务器、实时应用、微服务架构、命令行工具、Web 爬虫、SSR。

不适合的场景:CPU 密集型任务(图像处理)、大型科学计算。

流行框架和库:Express.js、Socket.IO、Mongoose、Sequelize、Jest、Webpack。

开发工具:Nodemon、PM2、ESLint、Prettier。

优势与劣势

优势 ✅

  • 前后端语言统一 (JavaScript)
  • 高性能和非阻塞 I/O
  • 庞大的生态系统 (npm)
  • 活跃的社区支持

劣势 ❌

  • 回调地狱 (Callback Hell)
  • 单线程限制 CPU 密集型任务
  • 相对年轻的生态系统
  • 频繁的 API 变化

Node.js 让 JavaScript 从浏览器走向服务器,开创了全栈开发的新时代!

目录

  1. Windows 11 安装 Node.js 后 npm install 报错:禁止运行脚本的解决方案
  2. 解决方案
  3. 方案一:以管理员身份修改执行策略(推荐)
  4. 方案二:只为当前会话临时允许
  5. 方案三:使用命令提示符 (CMD)
  6. 方案四:绕过策略执行单个脚本
  7. Node.js 核心概念回顾
  8. 什么是 Node.js?
  9. 核心特点
  10. 1. 非阻塞 I/O 和事件驱动
  11. 2. 单线程但高并发
  12. 架构组成
  13. 基本用法示例
  14. 1. 创建 HTTP 服务器
  15. 2. 文件操作
  16. 3. 模块系统
  17. 包管理 - npm
  18. 常用命令
  19. package.json 示例
  20. 应用场景与生态
  21. 优势与劣势
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • VS Code 下载、安装与配置指南
  • 人工智能与机器学习如何重塑软件工程开发流程
  • 基于Java的校园二手物品在线交易平台设计与实现
  • RAGFlow GraphRAG 知识库问答与 AI 编排流实践指南
  • 基于 1300+ 招聘数据分析:自学 Python 的就业门槛与要求
  • 多模态模型开发实战:文本、图像与语音的融合应用
  • Rust WebAssembly 开发实战:构建高性能前端应用
  • 基于开源飞控的无人机装调与测试
  • 程序员副业指南:利用 Python 技术接私活与变现
  • OpenClaw 对接 QQ 机器人教程(本地与腾讯云部署)
  • LLM 大模型技术实战 1:机器学习入门基础
  • Distributed-LLama 实战:构建支持多用户的高性能聊天 API 服务
  • ESP32 语音对话机器人:Coze 大模型与百度千帆集成实战
  • Claude Code 本地环境配置与 API 接入指南
  • Linux 基础 IO:文件描述符、重定向与缓冲区原理
  • 前端新工具 OXC 性能对比:比 Prettier 快 45 倍
  • Dify 与 MySQL 深度融合:基于 MCP 协议的数据交互实践
  • Webhook 是什么:原理、实现及缺点分析
  • Ubuntu 20.04 LTS 升级至 24.04 LTS 完整指南
  • 海光 DCU K100_AI 环境部署 Ollama 与 DeepSeek

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online