Windows7/2012 R2环境下GULP SERVE后浏览器无法显示SharePoint Workbench
我之前也帮朋友排查过类似的Win2012 R2上SharePoint开发环境的问题,结合你提到Win10能正常运行的情况,咱们从几个核心点入手排查:
1. 对齐Node.js版本兼容性
SharePoint Framework(SPFx)对Node.js版本卡得很严,你用的VS Code 1.22.2是比较老的版本,对应的SPFx脚手架大概率只支持特定版本的Node。你Win10上能跑的版本,Win2012 R2可能因为系统限制没法直接用高版本,所以先对齐版本:
- 先确认你Win10上用的Node.js版本(比如早期SPFx常用v8.x或v10.x)
- 在Win2012 R2上安装完全相同的Node.js版本,选x64的安装包
- 安装完打开命令提示符,输入
node -v和npm -v确认版本和Win10完全一致
2. 开启Win2012 R2必需的系统功能
Win2012 R2默认没开一些SPFx需要的组件,得手动加上:
- 打开服务器管理器 → 添加角色和功能,勾选以下项:
- .NET Framework 4.7.2(SPFx依赖这个版本,别用太低的)
- IIS的Web管理工具、应用程序开发里的ASP.NET 4.5
- 确保Windows PowerShell是4.0及以上(Win2012 R2默认是4.0,基本没问题,但要能正常启动)
- 重启服务器后再尝试搭建环境
3. 调整PowerShell执行策略
Win2012 R2默认的PowerShell执行策略是Restricted,会直接阻止SPFx的脚本运行:
- 以管理员身份打开PowerShell,输入
Set-ExecutionPolicy RemoteSigned - 弹出确认提示时输入
Y,允许本地脚本正常执行
4. 用管理员权限运行VS Code并修复依赖
老版本VS Code在Win2012 R2上容易因为权限问题装不上依赖:
- 右键VS Code图标,选以管理员身份运行
- 打开内置终端,重新安装SPFx脚手架:
npm install -g @microsoft/generator-sharepoint - 如果安装时出现网络报错,可以临时切换npm源到国内镜像:
npm config set registry https://registry.npmmirror.com/,装完再切回去也行
5. 验证本地SharePoint 2016环境的基础配置
毕竟是开发SharePoint 2016的Web部件,得确保服务器上的SharePoint本身没问题:
- 确认SharePoint 2016站点能正常访问,服务都在运行
- 检查是否安装了SharePoint Online Client Components SDK(SPFx连接本地SharePoint必须要这个)
- 用PowerShell测试连接:
Connect-PnPOnline -Url http://你的SharePoint站点地址 -CurrentCredentials,如果能成功连接,说明基础配置没问题
内容的提问来源于stack exchange,提问作者ASpulak
相关产品推荐
相关产品推荐

