Meteor+React项目本地正常,MUP部署后报__meteor_runtime_config__未定义如何解决
解决思路
- 版本兼容性排查
确认MUP版本与Meteor项目版本匹配:Meteor 2.0+版本需搭配v1.5.x及以上版本的MUP使用,低版本MUP无法正确注入__meteor_runtime_config__全局变量,可执行npm install -g mup升级到最新稳定版。 - 校验mup.js配置字段
确保ROOT_URL配置带完整协议前缀(http://或https://),缺失协议会导致运行时配置注入失败。示例正确配置:ROOT_URL: 'https://example.com' - 对齐Node版本
本地项目目录执行meteor node --version查看Meteor内置Node版本,在mup.js的docker配置项中指定对应版本的镜像,避免版本不兼容导致的配置加载异常,示例配置:docker: { image: 'zodern/meteor:node-14.21.3' } - 全量重新部署
先执行mup stop停止服务,删除服务器上/opt/项目名对应目录,再执行mup deploy完成全量部署,跳过mup reconfig操作,避免旧缓存干扰配置注入流程。 - 检查代理规则
若自定义过Nginx等反向代理规则,确认未拦截页面内联脚本,__meteor_runtime_config__依赖页面初始化时的内联脚本注入,拦截内联脚本会直接触发该报错。
内容的提问来源于stack exchange,提问作者Vijay Reddy
相关产品推荐
相关产品推荐

