Hydrogen 部署后环境变量读不到怎么办
现象#
本地 .env 正常,部署到 Oxygen 后请求 Storefront API 报 token 为空,页面直接 500。
原因#
- 只在本地建了
.env,没有在托管环境配置同名变量 - 变量名带了
PUBLIC_前缀但代码里按私有变量读取(或相反) - 部署时改了变量但没有重新构建,旧构建产物里仍是空值
处理步骤#
- 在托管平台的环境变量面板补齐
SESSION_SECRET、PUBLIC_STOREFRONT_API_TOKEN等必需项 - 客户端可见的变量统一用
PUBLIC_前缀,服务端密钥不要加该前缀 - 修改变量后触发一次完整重新部署,不要只重启进程
- 在服务端路由里打印变量是否存在(只打布尔值,不要打明文)
验收标准#
部署环境能正常拉取商品与购物车;日志中不再出现 token 为空。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。