我可以使用AWS PHP SDK在本地存储S3文件吗?



我们将文件存储到S3。每个环境都有自己的bucket,所以每个开发人员也需要自己的bucket。

我最近了解到rubygem AWS/S3允许你通过S3接口访问本地文件。本地存储使网络流量更少,允许您离线开发,当然也更便宜。

在PHP中是否有类似的方法来做到这一点?

有一个类似的项目叫做Fake S3,但从它的Github存储库来看,它并没有积极维护:https://github.com/jubos/fake-s3

还有这个服务:http://s3ninja.net/但是fake-s3实际上工作得很好,需要记住一些事情:

  • 不支持ssl。
  • 删除命令有一些问题
  • 你可能需要"调整"你对S3的调用(当使用fake-s3时)关于终点。在aws-ios-sdk中的示例:

    // Create the S3 Client.
    AmazonS3Client *s3 = [[AmazonS3Client alloc] initWithCredentials:uploadToken.credentials];
    // Create the amazon request.
    S3PutObjectRequest *request = [[S3PutObjectRequest alloc] initWithKey:uploadPath inBucket:uploadToken.container_name];
    if ([uploadToken.provider isEqualToString:@"fakes3"])
    {
        s3.endpoint = [[NSString alloc] initWithFormat:@"http://localhost:9294/"];
        request.key = [[NSString alloc] initWithFormat:@"%@/%@", request.bucket, uploadPath];
        request.bucket = nil;
    }
    

最新更新