8 months ago
Hi folks,
Have struggled to get my bare domain and www. working with Cloudflare, have read the Railway docs, and Cloudflare ones, and have tried many different settings, have ended up giving up, and now I'm here.
Here are the latest steps I've followed, could you please tell me where I'm going wrong?
In Railway: add a custom domain for
[mydomain.com](mydomain.com)
In Cloudflare: add a CNAME for Name =
@
, target =.[up.railway.app](up.railway.app)
-> the name of this DNS record automatically changes to[mydomain.com](mydomain.com)
In Railway: add a custom domain for
www.[mydomain.com](mydomain.com)
In Cloudflare: add a CNAME for Name =
www
, target =.[up.railway.app](up.railway.app)
After these steps, I can see Cloudflare proxy detected
on both custom domains in Railway.
Both my CNAME records are Proxied on Cloudflare.
When I do this, the www. version works, the bare domain doesn't (I get 'this site can't be reached' in the browser).
I've tried changing SSL/TLS mode from Full to Flexible in Cloudflare, still doesn't work. I've tried disabling Universal SSL
/re-enabling, same thing.
I only have one other DNS record, which is a TXT to auth with another service.
Any help appreciated!
Project ID: c18400df-5dee-4fe7-bc56-a98db8d475bd
0 Replies
(FYI, I've just gone through this again while writing this, and now the bare domain works and the www. doesn't ๐ )
8 months ago
If you want both to work like that then you'll need to add two custom domains, a [www.[mydomain.com](mydomain.com)](www.[mydomain.com](mydomain.com))
one and a [mydomain.com](mydomain.com)
one
Although my recommendation would be to choose one of them and then have the other redirect to your chosen one, this keeps things more consistent
I'd be happy to do the redirect - I have tried that in Cloudflare using a Redirect Rule - I think I must have done that wrong, as it didn't work
8 months ago
Oh I see now, sorry I misread ๐
Based on how you set it up, it should work ๐ค
Quick side note here:
I've tried changing SSL/TLS mode from Full to Flexible in Cloudflare, still doesn't work
SSL/TLS mode should always be on full when on Railway
8 months ago
Just Full
is fine
if you're doing the redirect, is the best thing to set up a custom domain for the bare, or for www., domain in railway?
8 months ago
that's completely up to you, personally I like it when websites don't use www
but that's just personal preference ๐คฃ
8 months ago
I believe so, although I'm not very experienced with Cloudflare so I can't really help a lot in that context
8 months ago
No, that should be turned off
ok, so I've just:
Removed my custom domains
Added mydomain.com (the bare url)
Added a CNAME for
@
and.[up.railway.app](up.railway.app)
to CloudflareDisabled Universal SSL
and now none (www.mydomain.com, http://mydomain.com, https://mydomain.com and https://www.mydomain.com) of my urls are working
8 months ago
Would you mind sharing the domain you're using?
8 months ago
Seems the cause is a ERR_SSL_VERSION_OR_CIPHER_MISMATCH
, usually these resolve themselves and are usually caused by SSL cache
interesting - when I do:
$ curl -I -L https://mydomain.com curl: (35) LibreSSL/3.3.6: error:1404B410:SSL routines:ST_CONNECT:sslv3 alert handshake failure
and
```$ curl -I -L mydomain.com
HTTP/1.1 301 Moved Permanently
Date: Fri, 09 Aug 2024 15:54:23 GMT
Content-Type: text/html
Content-Length: 167
Connection: keep-alive
Cache-Control: max-age=3600
Expires: Fri, 09 Aug 2024 16:54:23 GMT
Location: https://shareapodcast.com/
Report-To: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=RAt5pqcLCaUK3nHvDZkqM%2FyafZDuw3THGN8Km4eT9OpTLz4B8r2%2FHLyH%2FrfMWdd2GNyrnv3XeinvtjYJOGLlId2oukEQcfXPIGn%2FC3Lx3%2BL3vteuwTRHCH%2BFwAaztN7Kt%2FSLmw%3D%3D"}],"group":"cf-nel","maxage":604800} NEL: {"successfraction":0,"reportto":"cf-nel","maxage":604800}
Server: cloudflare
CF-RAY: 8b08eca85d4d949f-LHR
alt-svc: h3=":443"; ma=86400
curl: (35) LibreSSL/3.3.6: error:1404B410:SSL routines:ST_CONNECT:sslv3 alert handshake failure```
8 months ago
I ran a DNS check on the domain and I'm not seeing any CNAMEs on it ๐ค
8 months ago
who do you own the domain with?
Easiest thing is to point your bare domain at railway, and point www
at your bare domain:
If that doesn't work, you can also redirect www to your bare domain: https://developers.cloudflare.com/pages/how-to/www-redirect/
I just set one up, had to point the www domain at the bare domain, and add the bulk redirect.
The DNS record on the www just allows Cloudflare to listen on www (they are pointing it to a dummy IP), using a CNAME record pointing to the bare domain works as well.
I think that's the cleanest solution as you are also telling google not to index the www because of the 301 redirect
8 months ago
can you DM your domain?
8 months ago
nvm i can grab it from your service
8 months ago
show me your dns in cloudflare?
8 months ago
ssl tls mode set to full?
8 months ago
universal ssl off? this should be on, dane is right
Universal SSL should be on (unless you have an advanced certificate). The hosts on your universal ssl should be *.[example.com](example.com), [example.com](example.com)
to include www.
SSL = Full
The connection from Cloudflare to Railway is over SSL, so you need SSL = Full.
Full (strict) is only when you are using a cloudflare origin cert on Railway (can be done through a cloudflare warp tunnel)
There usually is a bit of a time delay. Do you have an advanced certificate as well, or just universal?
ok, so you would need to have universal enabled as that is the only certificate encrypting your connection between the browser and cloudflare.
Do you have the orange cloud turned on for your bare domain and www?
I only have one CNAME now, for @ (which replaces with mydomain.com) and yes, proxied/orange cloud is on
done: now, with www. I get "This site canโt be reached" / "DNSPROBEFINISHED_NXDOMAIN"
Glad it's working! DNS is a pain for sure, especially when you add on proxies and SSL rules
@Brody if it's useful, LMK if you'd like me to write up the steps I (Dane) just took to make this work, for this page: https://docs.railway.app/guides/public-networking
8 months ago
catch me up, what was the final nail in the coffin to make this work?
I had to
create a custom domain in railway for my bare domain
create a CNAME for bare domain, pointing to the railway host
create a CNAME for www pointing to @
enable Universal SSL
create a bulk redirect pointing www. to bare domain
8 months ago
i would love a pr to add that to the docs
8 months ago
scroll down
8 months ago
awesome, I will look at that
8 months ago
merged, thanks again!