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

Laravel Mix编译资产时出现WebAssembly内存不足错误如何解决

问题排查与解决方案

故障根因

该报错是Webpack 5默认启用的wasm-hash哈希计算模块在当前运行环境下触发WebAssembly内存溢出导致,即便服务器整体内存充足,也可能因为Node内存限制、算法适配问题触发报错。

解决方案

方案1:替换Webpack哈希算法(优先推荐,生效最快)

在项目根目录的webpack.mix.js文件中添加Webpack配置,替换默认的WASM哈希算法:

const mix = require('laravel-mix');

// 新增webpack配置段
mix.webpackConfig({
    output: {
        hashFunction: 'xxhash64'
    }
});

// 原有Mix配置保持不变,例如mix.js()、mix.css()等逻辑

修改后重新执行npm run dev或npm run prod即可。

方案2:提升Node.js内存上限

Node.js默认对内存使用有上限限制,即便服务器有8G内存,默认配置下Node也只能使用最多2G左右内存,可通过修改启动参数提升上限:
修改项目根目录package.json中的scripts配置:

{
  "scripts": {
    "dev": "node --max-old-space-size=4096 node_modules/.bin/mix",
    "prod": "node --max-old-space-size=4096 node_modules/.bin/mix --production"
  }
}

其中--max-old-space-size=4096表示给Node进程分配4G内存,可根据服务器剩余内存调整数值。

方案3:排查环境适配问题

  • 执行free -h查看服务器当前空闲内存,确认编译时至少有2G以上可用内存,无其他高占用进程抢占资源。
  • 若使用的是最新版Laravel Mix,可降级到v6.0.49稳定版规避适配问题,执行命令:
    npm install laravel-mix@6.0.49 --save-dev
    
  • 清理本地依赖缓存:删除node_modules文件夹、package-lock.json文件后重新执行npm install安装依赖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 07:36:04