上传到 aws s3 的 youtube 视频无法正常播放
Posted
技术标签:
【中文标题】上传到 aws s3 的 youtube 视频无法正常播放【英文标题】:Uploaded youtube videos to aws s3 is not playing properly 【发布时间】:2019-06-01 20:18:01 【问题描述】:我正在尝试将 youtube 视频上传到 aws S3 存储桶。视频已正确上传,但无法正常播放。我写了这段代码:
试用代码:
$uploadPath = "videouploads/$parsed.mp4";
file_put_contents($uploadPath, file_get_contents($dowloadUrl));
// @formatter:off
$result = $s3->putObject(array(
'Bucket' => 'MY_BUCKET',
'Key' => 'MY_OBJECT_KEY',
'SourceFile' => $uploadPath,
));
它会将视频上传到我的 s3 存储桶中。但是当我使用 cloudflare 检索它时,网址将是:
https://media.poweradspy.com/pasvideos/youtube/1w5rtJm8Ujg
【问题讨论】:
“但是当我使用 cloudfare 检索它时” - 你如何检索它?你是怎么得到那个网址的?请向我们展示该问题的所有相关代码。目前,您只是向我们展示了上传代码,您说它有效。 @MagnusEriksson 我们已经设置了 cloudfare 来隐藏我们的原始视频网址。所以 url 就只有这个 【参考方案1】:URL 没有提示文件类型(例如.mp4
)。
您的上传过程应针对对象存储适当的内容类型,以便浏览器知道它是什么类型的文件。
见:amazon web services - Specify Content-Type in AWS php's upload function - Stack Overflow
【讨论】:
以上是关于上传到 aws s3 的 youtube 视频无法正常播放的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 C# HttpClient 或 AWS SDK 通过 CloudFront 将视频上传到 S3
将视频 URI 从 React-Native Picker 上传到 AWS S3 服务器