我使用亚马逊S3 php上传和下载文件。
例如,从我正在使用的亚马逊s3获取一个私有文件:
// Cast the body to a primitive string
$bodyAsString = (string) $object['Body'];和
public function getResponse($content, $filename, $length, $contentType)
{
$response = new Response();
$response->headers->set('Content-Description','File Transfer');
$response->headers->set('Content-Type',$contentType);
$response->headers->set('Content-Disposition','attachment; filename='.basename($filename));
$response->headers->set('Content-Transfer-Encoding','binary');
$response->headers->set('Expires','0');
$response->headers->set('Cache-Control','must-revalidate');
$response->headers->set('Pragma','public');
$response->headers->set('Content-Length',$length);
$response->setContent($content);
return $response;
}下载它
但是这对于服务器来说是非常沉重的,是否有一种解决方案可以使用链接直接从亚马逊s3下载私有对象,有点像对具有安全性的公共对象。
发布于 2013-11-27 00:02:35
您可以为具有过期日期的对象创建预先签名的URL.您可以使用此功能允许用户直接从亚马逊S3下载私有对象。AWS有一个简单的 method,可以帮助您这样做。
https://stackoverflow.com/questions/20229078
复制相似问题