使用PHP Amazon SDK我使用以下功能成功地为URL设置了30秒的访问权限:get_object_url($bucket, $filename, $preauth = 0, $opt = null)
$s3->get_object_url($results['s3.bucket.name'], $results['s3.file.name'], '30 seconds');
现在,问题在于它返回了一个很棒的网址:
"s3.url": "http://THECOOLEST.BUCKET.INTHEWORLD.EVER.s3.amazonaws.com/2011/04/18/image/png/8ba2d302-a441-45d4-8354-08e2b7e1a325.png?AWSAccessKeyId=XXXXXXXXXXXXXXXXX&Expires=1303162244&Signature=AWdUnHSaIBDmRcbwo2RFSUQaqBM%3D",
当我将URL更改为我们用于cloudfront的CNAME时,ACL不起作用。任何人都知道如何配置CNAME get_object_url
?
答案 0 :(得分:0)
Cloudfront和S3是两回事。
您需要为S3存储桶设置CNAME。有关详细信息,请参阅AWS文档:http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?VirtualHosting.html#VirtualHostingCustomURLs