Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用自定义cname与aws ios sdk一起上载_Ios_Amazon S3_Amazon Web Services - Fatal编程技术网

使用自定义cname与aws ios sdk一起上载

使用自定义cname与aws ios sdk一起上载,ios,amazon-s3,amazon-web-services,Ios,Amazon S3,Amazon Web Services,我们正在使用aws ios sdk将媒体上载到s3,但希望使用不同的主机名(例如,我希望cname up.ourdomain.com->s3.amazonaws.com)。有人知道如果没有太多的黑客攻击,这是可能的吗?我不希望将来无法升级sdk 谢谢 我帮助维护用于iOS的AWS SDK。虽然我不建议您继续执行此计划,但您可以在服务客户端上设置端点,如下所示: s3 = [[AmazonS3Client alloc] initWithAccessKey:ACCESS_KEY_ID withSe

我们正在使用aws ios sdk将媒体上载到s3,但希望使用不同的主机名(例如,我希望cname up.ourdomain.com->s3.amazonaws.com)。有人知道如果没有太多的黑客攻击,这是可能的吗?我不希望将来无法升级sdk


谢谢

我帮助维护用于iOS的AWS SDK。虽然我不建议您继续执行此计划,但您可以在服务客户端上设置端点,如下所示:

 s3 = [[AmazonS3Client alloc] initWithAccessKey:ACCESS_KEY_ID withSecretKey:SECRET_KEY];
 s3.endpoint = @"up.ourdomain.com";
虽然这应该适用于全局操作(例如列出bucket),但SDK会期望您尝试创建或直接访问的任何bucket都存在
BUCKETNAME.up.ourdomain.com
。如果您能保证情况会如此,那么您可能不会遇到任何其他问题


我可以问一下,您为什么觉得需要添加一个额外的间接层?

+1。除非你真的需要聪明地使用主机名,否则你不应该冒被破坏的风险。谢谢,这真的很有帮助。我不认为我需要改变它,但我正在考虑这个选择。如果我们使用cname,我们可以(理论上)将现有客户端透明地移动到新的后端(如果我们确实需要)。@ColinKroll您的客户除了通过您的应用程序之外还会直接访问up.ourdomain.com域吗?如果不是,我不认为你会拯救你自己(或者你的用户)吗?你应该选择在未来离开S3,因为你仍然需要替换任何将文件上传到后端的代码。@ CykLink你想考虑的是,如果你使用的是一个桶(或者一个可管理的桶组),您可以在您的子域(BUCKET1.ourdomain.com->BUCKET1.s3.amazonaws.com)中为它们的每个DNS名称别名,但仍使用标准s3端点进行上载。这是我自己在其他项目中使用的一种非常常见的设置。