No internet connection
  1. Home
  2. Support

Exporting to S3 and creating directories

By Will Warner @samsaradog2019-03-07 22:06:30.235Z

I have a bucket set up in s3, and the export is failing when trying to write to this bucket:

PUT'ing file to archives/1/feed/index.html in S3
Using S3 Endpoint
API response code: 403
API response body: <?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>8E27591E21BBB654</RequestId><HostId>K70EC6cmQQLPb8OqJxcE5uVI7FYW7v4bJbWyFLENxLh1nCU6CepjW/cTHqqsSO1WGX+cAzy0PWw=</HostId></Error>

When I go to I get:

<Message>The specified key does not exist.</Message>

Do I need to create the directories in the bucket before I try the export? Thanks for your help.

Solved in post #3, click to view
  • 2 replies
  1. S
    Will Warner @samsaradog2019-03-12 21:03:47.108Z

    We got it working, but it's ugly. We had to set these permissions on our S3 bucket:

        "Version": "2012-10-17",
        "Statement": [
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                "Resource": "*"

    The splats for PutObject* and PutBucket* are perplexing. I can't see why the plugin would need PutBucketCORS or PutBucketRequestPayment. I'll set up a separate post asking the devs which permissions they need for this. That might even end up in their documentation somewhere.

    Reply1 LikeSolution
    1. Leon Stafford @leonstafford2019-03-28 09:30:18.903Z

      Hi @samsaradog,

      I believe this requirement came about after replacing the very heavy AWS PHP SDK with our custom script. The script uses something like public-acl="public-read" which I think is requiring the looser bucket permissions.

      Will sort this out soon so that the workaround is not required.