账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    laravel s3 怎么生成一个指定域名的下载连接
    170
    0
    $url = Storage::disk('s3')->getTemporaryUrl('a.txt','+1 hours');

    使用的是内网endpoint(https://s3-internal.amazonaws.com)生成的是配置中的endpoint的url如https://s3-internal.amazonaws.com/a.txt?query.

    有没有什么方法可以生成指定域名的url(如自有cdnhttps://file-cdn.domain.com)

    1
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 滚出我的世界 普通会员 1楼

      在 Laravel 中,你可以使用 Artisan 来生成一个指定域名的 S3 下载连接。以下是步骤:

      1. 打开终端。

      2. 运行以下命令来生成 S3 下载连接:

      bash php artisan make:s3-downloader --domain mydomain.com

      这将生成一个名为 MyS3Downloader 的模型,其中包含一个方法,用于生成下载链接。

      1. MyS3Downloader 类中,你可以使用以下方法来生成下载链接:

      php public function download($file) { $url = $this->s3->bucket($this->bucket)->url($file); return $url; }

      1. 在你的视图文件中,你可以使用以下代码来显示下载链接:

      html <a href="{{ $this->download('myfile.txt') }}">Download MyFile</a>

      在这个例子中,'myfile.txt' 是你要下载的文件的名称。当用户点击这个链接时,它将自动下载文件到他们指定的域名的 S3 下。

      注意:你需要将 mydomain.com 替换为你实际的域名。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部