Object Storage access Url
This is the message when you click the URL
I changed the permissions to READ and everyone.
This XML file does not appear to have any style information associated with it. The document tree is shown below.
Any help would be cool it is a Gatsby JS Static build
That message is a typical message of your browser saying it got an XML file with no styling information associated with it, so it’s just showing you the raw XML.
Believe it or not that’s normal for an S3 endpoint, and I can see plenty of files listed in that XML.
If you’re expecting to see a static website, you need to configure and use the “website” endpoint not the S3 one.
This website URL for your bucket is (note the extra “website-”): https://rockandrollcanadashow.website-us-east-1.linodeobjects.com/
Also check out this guide for more details about hosting a static website on Linode’s Object Storage.
That's a great question! It looks like there are a couple ways you can go about doing this. The first is by adding the below parameters to the gastby-plugin-s3 options in your gatsby-config.js file:
generateIndexPageForRedirect: true, enableS3StaticWebsiteHosting: true,
npm run build && npm run deploy from your projects root directory. This will configure your bucket as a website and automatically uploads all of the files.
The one thing I noticed with
npm run deploy was that it would randomly fail with an "Access Denied" errorand only some of the files would get uploaded. I was able to resolve this using s3cmd. If you don't have it installed, you can learn how in our How to Use Object Storage guide where we go over installing it. Once it's installed, you'll want to run the following commands from your project's root directory:
$ s3cmd ws-create --ws-index=index.html --ws-error=404.html s3://my-bucket $ s3cmd --no-mime-magic --acl-public --delete-removed --delete-after sync public/ s3://rockandrollcanadashow
You can check out the quick Gatsby site I deployed this way using Gatsby's starter site here.
One thing to note is that once your bucket is configured as a static site, the new URL will be https://rockandrollcanadashow.website-us-east-1.linodeobjects.com/
If you run into any trouble with this, be sure to let us know. We'll be more than happy to take another look!
Linode Support Staff
Hello. I've got exactly the same problem but I don't want to mess generating a static site. I just want to get a public url for my uploaded files in order to link them from a website I've running on a linode. The url related to objects isn't accessible because of the described error.
@q2dg Without seeing the exact error message you're receiving, I can't be certain what your specific issue is. That being said, you should be able to share your URL publicly once the correct permissions are in place. Check out the two links below for more information.
- How to Enact Access Control Lists (ACLs) and Bucket Policies with Linode Object Storage
- How to Access Objects with Linode Object Storage
Hope this helps!
Thanks! I've finally solved my issue following these steps: https://www.linode.com/community/questions/19796/public-read-access-for-object-storage-bucket As I've said in my ticket, I think it would be a great usability improvement for the Object Storage's web panel adding an option to make the bucket a public/private one.