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

Laravel Vapor前端大文件上传报错:缺失AWS环境变量

解决办法

  1. 前端无需直接配置敏感AWS密钥
    后端上传正常说明服务器端环境配置没问题,前端报错提示缺少变量,本质是Vapor前端上传依赖后端生成的签名URL,而非直接在前端配置密钥。

  2. 配置前端可访问的Vapor环境变量

  • 在.env文件中添加带VITE_前缀的变量(Vite会自动注入前端):
    VITE_AWS_BUCKET="${AWS_BUCKET}"
    VITE_AWS_DEFAULT_REGION="${AWS_DEFAULT_REGION}"
    
  • 在前端入口文件(比如resources/js/app.js)初始化Vapor:
    import Vapor from 'laravel-vapor';
    
    Vapor.register({
        region: import.meta.env.VITE_AWS_DEFAULT_REGION,
        bucket: import.meta.env.VITE_AWS_BUCKET,
        // 无需填写access key,Vapor会自动请求后端生成签名
    });
    
  1. 检查Vapor后端配置与路由
  • 确认config/vapor.php正确读取环境变量:
    return [
        'bucket' => env('AWS_BUCKET'),
        'region' => env('AWS_DEFAULT_REGION'),
        'key' => env('VAPOR_KEY'), // 若有配置则添加
    ];
    
  • 确保/vapor/signed-storage-url路由未被中间件拦截,可通过Postman发起POST请求测试,验证是否返回正常签名响应。
  1. 重新编译前端资源
    修改配置后执行编译命令,确保新变量生效:
npm run build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 19:40:34