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

执行ng serve出现PEM routines错误,ng test正常,求解决方案

解决 ng serve 报错 error:0909006C:PEM routines:get_name:no start line

可能的修复步骤:

  • 检查HTTPS配置问题
    如果项目在angular.json里启用了HTTPS(serve.options.https设为true),大概率是证书文件异常:

    1. 打开angular.json,定位到projects.[你的项目名].architect.serve.options,确认HTTPS配置
    2. 检查sslCert和sslKey指定的文件路径是否正确,文件内容必须是标准PEM格式(开头有-----BEGIN CERTIFICATE-----/-----BEGIN PRIVATE KEY-----,结尾有对应结束标记)
    3. 若证书损坏或格式错误,重新生成本地开发证书:
      ng generate ssl
      
      之后更新angular.json里的证书路径,或者直接删除自定义证书配置,让Angular自动使用默认证书
  • 彻底清理依赖与缓存
    执行更彻底的依赖清理操作,覆盖常规npm i的局限:

    rm -rf node_modules package-lock.json
    npm cache clean --force
    npm install
    
  • 验证Node.js版本兼容性
    部分Node.js版本和Angular CLI版本不兼容会引发SSL解析问题:

    1. 查看package.json的engines字段确认项目要求的Node版本
    2. 用nvm等版本管理工具切换到对应版本,再运行ng serve
  • 排查系统证书存储
    系统根证书异常也可能导致Node.js解析PEM失败:

    • Linux:执行apt install ca-certificates更新系统证书包,检查/etc/ssl/certs目录下的证书完整性
    • macOS:打开钥匙串访问,排查损坏的证书,尝试修复或重新导入根证书

补充说明

由于ng test能正常运行,说明测试环境未启用HTTPS或使用了不同的证书配置,重点聚焦serve环境的HTTPS相关设置即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 20:10:01