章工运维 章工运维
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
周刊
GitHub (opens new window)

章工运维

业精于勤,荒于嬉
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
周刊
GitHub (opens new window)
  • linux

  • windows

  • 中间件

  • 网络

  • 安全

  • 存储

  • 防火墙

  • 数据库

  • 系统

  • docker

  • other

    • debian中科大替换教程
    • Alpine安装php各种扩展
    • 使用http-server启动本地服务
    • windows文件同步备份
    • axure将项目同步到svn和axhub
    • Makefile入门
    • Rsyslog开源日志服务器
    • 在windows64位系统安装mysql
    • 博客vue报错版本依赖问题解决
      • VMware搭建群晖
      • 一个开源的照片管理程序——photoprism
      • 搭建属于自己的云笔记——leanote
      • 浏览器跨域问题
      • 从0到1搭建支付和发卡系统
      • 运维常见故障及排查方法
      • 高德MCP智能体搞定旅游计划
      • 不花一分钱从0到1建站教程
    • 监控

    • 运维
    • other
    章工运维
    2024-05-28
    目录

    博客vue报错版本依赖问题解决

    # 报错信息如下

    (undefined) assets/js/styles.2357ed77.js from Terser
    Error: error:0308010C:digital envelope routines::unsupported
        at new Hash (node:internal/crypto/hash:79:19)
        at Object.createHash (node:crypto:139:10)
        at D:\zpj\blog\node_modules\terser-webpack-plugin\dist\index.js:217:37
        at Array.forEach (<anonymous>)
        at TerserPlugin.optimizeFn (D:\zpj\blog\node_modules\terser-webpack-plugin\d
    ist\index.js:160:259)
        at _next0 (eval at create (D:\zpj\blog\node_modules\tapable\lib\HookCodeFact
    ory.js:33:10), <anonymous>:13:1)
        at eval (eval at create (D:\zpj\blog\node_modules\tapable\lib\HookCodeFactor
    y.js:33:10), <anonymous>:30:1)
    (undefined) assets/js/1.09d67b9a.js from Terser
    Error: error:0308010C:digital envelope routines::unsupported
        at new Hash (node:internal/crypto/hash:79:19)
        at Object.createHash (node:crypto:139:10)
        at D:\zpj\blog\node_modules\terser-webpack-plugin\dist\index.js:217:37
        at Array.forEach (<anonymous>)
        at TerserPlugin.optimizeFn (D:\zpj\blog\node_modules\terser-webpack-plugin\d
    ist\index.js:160:259)
        at _next0 (eval at create (D:\zpj\blog\node_modules\tapable\lib\HookCodeFact
    ory.js:33:10), <anonymous>:13:1)
        at eval (eval at create (D:\zpj\blog\node_modules\tapable\lib\HookCodeFactor
    y.js:33:10), <anonymous>:30:1)
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24

    # 报错原因

    出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响.

    在node.js V17以前一些可以正常运行的的应用程序,但是在 V17 版本可能会抛出这个异常

    # 解决方案

    # 1、版本降级,解决报错

    尝试卸载Node.js 17+版本并重新安装Node.js 16+版本,然后再重新启动

    这个方法,测试有效,但我推荐的是第二个办法。

    # 2、设置参数,解决报错

    在执行运行项目命令之前,先运行这个命令:

    Linux & Mac OS:

    export NODE_OPTIONS=--openssl-legacy-provider 
    
    
    1
    2

    windows命令提示符:

    set NODE_OPTIONS=--openssl-legacy-provider 
    
    
    1
    2

    这样就可以解决了,亲测有效。

    唯一不足,是每次启动项目都要运行,所以,我们可以把它配置一下。也就是第三种方法。

    # 3、 修改配置文件,解决报错(推荐)

    根据你的系统类型,选择一个上面的命令,如,我是Mac系统,我就用:

    export NODE_OPTIONS=--openssl-legacy-provider 
    
    
    1
    2

    然后,找到项目的package.json文件,把自己对应的命令,加上&&,写到启动项目的配置里面(构建写不写都可以),即可。

    • 例1:脚手架
    "scripts": {
       "serve": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
       "build": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build"
    },
    
    
    1
    2
    3
    4
    5
    • 例2:Vue-Element-Admin
     "scripts": {
        "dev": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
    //略...
      },
    
    
    1
    2
    3
    4
    5

    原文链接 (opens new window)

    微信 支付宝
    上次更新: 2024/06/05, 16:23:38

    ← 在windows64位系统安装mysql VMware搭建群晖→

    最近更新
    01
    shell脚本模块集合
    05-13
    02
    生活小技巧(认知版)
    04-29
    03
    生活小技巧(防骗版)
    04-29
    更多文章>
    Theme by Vdoing | Copyright © 2019-2025 | 点击查看十年之约 | 鄂ICP备2024072800号
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式