How can i setting cloudflare CNAME link Object Storage and use CDN

I already setting cloudflare CNAME to {my-bucket-name}.us-east-1.linodeobjects.com
and turn proxy on.

but always return NoSuchBucket.

If turn off proxy , sometimes can work.

15 Replies

Hey there -

It's tough to figure out exactly what might be happening, since I don't have access to your configuration but what I can do is give you some extra resources to take a look at that might help you out.

First, CNAME with Object Storage can be configured following this guide:

Object Storage - CNAME

Are you looking to host a static site? If so, the entire guide linked above might help:

Host a Static Site Using Linode Object Storage

I'm not sure if this will help, but I wanted to provide you with our post on using Nginx as a proxy.

I hope this helps. If I've misunderstood your issue, and you need further assistance, please let us know. I'll add some additional tags to this post to give it more visibility to our Community as well.

Just to provide an update on this:

This is an issue that our Object Storage team is currently aware of. Specifically, if you are using Cloudflare to set your CNAME, there is an issue with how routing is done on our side.

To resolve this, the CNAME alias must match the bucket name. For this to work, the SSL setting within Cloudflare will also need to be set at "Full" as opposed to "Full (strict)".

We realize this is not a complete workaround in that it sort of defeats the purpose of using a CNAME if you are trying to obfuscate your bucket name, but I just wanted to mention it in case it'd be helpful.

For this to work, you would also need to manage your CNAME DNS record through your Linode DNS Manager, rather than setting it up through Cloudflare.

We are currently tracking this as a feature request, though, and our development team is aware of this issue.

Already did it 4 months ago .

Thanks your reply.

Another option that works well:

  • Keep using Cloudflare DNS
  • name your bucket the FQDN of your site. An example backet name:

www.domain-name.com

  • Change the CNAME in CF to:

www.domain-name.com.eu-central-1.linodeobjects.com

Site is now accessible!

The other option is to use CF Host header Page rule, which is only offered for Enterprise customers.

Disabling the Cloudflare "proxy" (the orange cloud) on my bucket CNAME record has solved this issue for me.

this not works for website bucket!

@jcardillo Any updates on the status of the Cloudflare CNAME routing bug? Or is there anywhere we could follow for status updates?

Hmm I'm a bit confused here. I tried the solution described by @jcardillo of matching my CNAME alias in Cloudflare to my bucket name in Linode, and setting SSL to "Full." This doesn't work.

You also mention:

For this to work, you would also need to manage your CNAME DNS record through your Linode DNS Manager, rather than setting it up through Cloudflare.

So, is this saying that the only mitigation is to not use Cloudflare at all and just manage DNS in Linode? If so, why comment on the Cloudflare SSL setting? Just trying to figure this out.

I'm flexible on bucket names and configuration, but not flexible on putting Cloudflare in front. I'd really like to get some version of this setup in place while waiting for the bug to be fixed, but if I can't use Cloudflare at all then I'll probably need to use a service other than Linode Object Storage.

how to configure static site on object storage to work on root/apex? like "example.com"??

any uppdate for it? as i would like to use cloudflare CDN

Maybe you guys should consider adding another one caution to this article?

May I be sure that switching to your NS will fix this and allow pointing our domain name to the root document in the website-configured Linode Object Storage bucket?

Two years later and no fix, not even a response from @jcardillo or any other Linode staff? That's not great.

We already use Cloudflare to front our site and proxy TLS. I was hoping to move our file assets over to Linode Object Storage, but not if I can't integrate with a CDN. Seeing as we already use Cloudflare, it makes more sense to just use R2 for us instead of trying to then also use AWS CloudFront to front Linode's objects storage - while also using Cloudflare.

Am I missing something? Has anyone found an easy way to front Linode Object Storage with a CDN and a CNAME?

The Configure a Custom Domain guide on the Linode docs site covers this and, in my testing, the instructions do work when using Cloudflare's DNS service. If your CNAME DNS record is (or will be) proxied through Cloudflare, the bucket name must be the full domain name (including the subdomain) that you intend to use. So, if you intend to access your bucket over assets.example.tld, your bucket must be labeled assets.example.tld and your CNAME record in Cloudflare must have the name assets. If this does not work for you (and you've verified that you can access a file in the bucket through its default unique URL), reply back with the steps you've taken and the error/behavior you're experiencing. Perhaps someone from the community might be able to point you in the right direction.

I had done all of that and it was still not working via the CNAME. Everything worked via the default URL, but failed on the CNAME.

Unfortunately I can't provide exact specific configuration details, as the absence of a response or follow-up from Linode lead us to cancel Linode Object Storage and move to S3. It may not be as cheap, but it's more flexible and it works the way we need it to. :/

To circle back on this thread for anyone else that comes across it…

CC: @ChrisMc @oleg_lymarchuk @kloallan2000 @lxsedov @guy @jusnode

I apologize for the very, very late reply here. I've confirmed that CNAME flattening, and Apex (root) domains, such as example.tld, are not supported at this time, whether through Linode's DNS, or a CDN. Our Technical Content team will be updating our documentation here:

https://www.linode.com/docs/products/storage/object-storage/guides/custom-domain

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct