Google Domain - DNS Configuration for Firebase Hosting - Connect Domain - firebase

I am trying to connect my firebase app in to a domain -where the domain purchesd from google.Need help to to do the setup for DNS configuration.
my app is working fine in firebase app.
firebase app is - https://.firebaseapp.com/
My Firebase setup
And
Google Domain (https://domains.google.com/) - DNS Configuration
1.Name servers
Default is "Use the Google Domains name servers" is it OK?, if not what to setup
2.Registered hosts
If anything, need to add- please let me know.
3.Synthetic records
If anything, need to setup - please let me know.
4. Custom resource records
I am trying to add two records but getting error while trying to add second record - is "Record already in use"
please find the screen shot
Update
Now I have added both the IP address, but still it is not working.

Click the little + icon to the right of the field where you're entering the IP address. That will open a second textbox that you can use for the second value.

I noticed in your screenshot
That you have #-------------.com (where I assume ----------- is your URL). You don't want that. You want simply # there (and www if you want to redirect www.--------.com as well). # means "this domain name", which in your case is ----------
Hope this helps!

This was really helpful but there was one missing thing I was still confused on. On the firebase docs page for this https://firebase.google.com/docs/hosting/custom-domain if you scroll down the page it give you an example of how to setup a google domain. It asks that you put in the following information.
I could not find any "verification value provided in firebase console" for a TXT record. I ended up just putting the DNS A record inputs and that worked for domainName.com and www.domainName.com

Addition to Editing and (+) adding records together. You might want to also add 2 records for # and and 2 for www.

I had same problem, every setup was right but site doesn't work.
Finally I removed the domain from Firebase and add it again without changing DNS setup, then problem resolved.

Related

Mapping GoDaddy domain to Firebase Hosting does not get verified

I'm probably doing something silly, but I can't seem to be able to figure this out.
I've waited over 24 hours for Firebase to validate my domain, but the status just stays at "needs setup" and "domain not verified".
Per other other related answers on StackOverflow, I use # as the Name for TXT, instead of what Firebase said to put there (I also tried the "acme-challenge.www.mydomain.com" for a while).
Here are my GoDaddy records:
Anyone got ideas what might be wrong?
OK. I think I got to the bottom of it finally (I'm really new to this domain business). I originally added www.mydomain.com and not the naked mydomain.com to the "connect domain wizard". And I believe since I didn't have a CNAME www pointing to # it could never have worked.
Now I just added mydomain.com to the wizard, and Firebase instantly validated the domain.
The status is now "pending" since it takes up to 24 hours to validate the certificate, but the site already works.
Make sure to delete the original A records using the name #. Only keep the A records that are pointing to the Firebase Hosting IP address.
EDIT:
Change your TXT value to google-site-verification=YOURCODE.
It must include google-site-verification=.
Add custom domain from GoDaddy to firebase hosting
Simple step-by-step solutions with screenshots are found here

Error from Firebase Project URL: Adding www causes "Your connection is not private"

I have a firebase project that loads properly unless I type the url to my project with www. in front.
This works:
https://myproject.firebaseapp.com
This returns an error:
https://www.myproject.firebaseapp.com
Your connection is not private
Attackers might be trying to steal your information from
www.myproject.firebaseapp.com (for example, passwords, messages, or
credit cards). Learn more NET::ERR_CERT_COMMON_NAME_INVALID
Attempt to resolve
I followed the "Learn More" in the error above and it seems that
the error might be that firbase by default sets up
myproject.firebaseapp.com but not www.myproject.firebaseapp.com.
I then checked the firebase app in the hosting console (i.e. https://console.firebase.google.com/project/myProjectNameHere/hosting/main)
and it does show only the non-www version, but adding the www version here does not seem possible since I do not own the firebaseapp domain so I cannot add the provided TXT file at this point to the DNS records.
Does anyone know why this is occurring and how to get the project to load when www. is added to the url?
Thank you in advance!
This is not supported.
To give some technical detail, wildcard SSL certificates are only valid for a single level; so *.firebaseapp.com but not *.*.firebaseapp.com. In addition, this is (in my estimation) entirely unnecessary as it simply makes the URL longer.
What I would encourage you to do is purchase a domain name for use with your Firebase Hosting site, and connect it. Read "Connect a Custom Domain" in our docs for more info.

Adding custom hosting domain: "Unexpected TXT records found. Continuing to watch for changes."

I'm attempting to add a custom domain to firebase hosting.
Added the TXT records as instructed, and I get this message in the firebase dashboard:
"Unexpected TXT records found. Continuing to watch for changes."
There is one additional TXT record in my DNS settings, but I can't remove it. I don't see how it would get in the way of firebase's verification of my domain either.
I'm using Namecheap if that helps.
Thanks in advance!
I had to make sure that for the host field, it was set to '#', and not my actual host name.
I'm told this varies from registrar to registrar. Some require '#' for the host field if it's for the root domain, and others do not.
Hope this helps someone.
If you've updated your TXT records in your DNS settings as per the instructions, then it just a matter of time for firebase to detect the changes. Normally upto 48 hours. This message is normal though, if there is a real problem then you will be able to see an error message after the 48 hours.
On namecheap what worked was changing my host field to '#' rather than the host provided on firebase help.
Next step was to wait for an SSL

Unable to Verify Custom Domain with Firebase Using Namecheap

After I followed the instruction by inserting the Text Record 1 that firebase has provided into my NameCheap, this error message keeps popping up:
Current Status: Sorry, we were unable to verify your domain.
This message has been shown up for about 5 days now.
I've captured screenshots of firebase and namecheap setting as below:
After #Frank van Puffelen suggested to change the host value from my domain name to #, this is the screenshot, and we'll wait and see after a few hours, hopefully it can verify successfully.
After waiting for a few hours this message appears:
From other reports and the information on this Google page for verifying namecheap domains, it looks like you may have to use # for the host field.
In the Namecheap site, click Manage next to the domain you want to
verify with your Google service.
Click the Advanced DNS tab on the domain dashboard.
Scroll down and click Add New Record under the host records table.
Select TXT Record from the record type drop-down list.
Paste the entire verification record into the Value field.
Enter # in the Host field.
Leave the TTL field set to Automatic.
Click the green check mark to save your TXT record.
Note: The change may take up to 24 hours to update. However, as you go
through the next steps in the Setup Wizard, the wizard immediately
starts checking for your new TXT record to verify your domain.
Can you try that? If it doesn't work, let me know and also reach out to support#firebase.com.
Your attached screens do not show your CNAME configuration. Even though firebase instructions indeed only asks for two TXT records, records that are both correctly set up as your screens show, I believe that these pair of TXT records that firebase requests do not free you up from the need of setting up at least a CNAME record in addition to both TXT records.
This was my case: while I did not set a CNAME record, firebase never recognized my domain.
I am not an expert (sorry!), but in the lack of other answers, even I may be helpful to suggest that you set up your CNAME record to point to:
CNAME record
host: www
value: [yourfirebaseappname].firebaseapp.com.
(Please note the dot after the '.com').
In my case this was enough to make firebase works well and recognize my domain.
In my specific case, and I'll register here at least for my own future use, I prefered to use, as an after step, both A records supplied from firebase as my way to route to my domain without www.
I believe this can be done with CNAME, but in my case the final setup was:
Advanced DNS Management
type: CNAME record
host: www
value: [my-domain-name-without-www]
type: A record
host: #
value: [IP address from firebase, like '1.2.3.4']
type: A record
host: #
value: [Second IP address from firebase, like '2.3.4.5']
Everything is working fine using this configuration. Goal reached.
As a todo future step, It would be useful to learn how to achieve similar goal using the CNAME record pointing to firebase domain instead of A records pointing to firebase supplied IP addresses.
Hope this helps other users in similar situation!
I had issues connecting my custom domain as well, apart from using # in the host field and the CNAME, you'd also need A records. Here's all I ended up with, I sat back a while for the domain to get propagated (I had just purchased it) and waited for 10 minutes after adding all of the records and it worked. Also I've found helpful instructions in this blog post.
I had the same problem and I took Namecheap support. Then they provided me following properties to change when connecting Namecheap with Firebase.
For the TXT records Host should be # instead of yourdomain.com
For the CNAME records remove the trailing domain name from the Host.
In this example value should be
firebase1._domainkey
and not
firebase1._domainkey.yourdomain.com
I was having the same issue for days (my custom domain made it through the verification stage but would not connect) but it turns out that I didn't have to change my DNS configuration to fix it (the screenshot for the config that worked is below for reference).
I just had to re-run the Connect Domain wizard. https://firebase.google.com/docs/hosting/custom-domain
Hosting -> Select the vertical ellipsis under your custom domain -> delete domain -> then click Connect Domain to start the wizard again.
namecheap dns configuration
Lookup your domain using this tool to see if there are DNS errors https://toolbox.googleapps.com/apps/dig/
For me (with namecheap) I had to remove all existing records, then the TXT record alone worked.
Reference: this post
That configuration worked for me. Seems the easiest and propagation takes around 20 minutes (include your TXT verification as well, of course).

DNS custom domain to subfolder

I have a SaaS app where every user has a personal subdomain: username.domain.com. Every user has a personal blog at username.domain.com/blog.
Now I want to accept custom domains, e.g. www.mycustomblog.com would be an alias for username.domain.com/blog.
If someone browses to www.mycustomblog.com/123, the page username.domain.com/blog/123 should be served.
However, I do NOT want a redirect. The user should still see www.mycustomblog.com/123in their address bar.
How can I achieve this behaviour? I have looked into Nginx reverse proxies, DNS CNAME records... but nothing seems to suit my needs. I can access both the custom domain DNS settings and all of the server's config files.
I think what you're looking for is a rewrite. However your described logic doesn't work:
www.mycustomblog.com -> username.domain.com/blog
appears to be missing a piece of identifying information on the left side. Perhaps www.mycustomblog.com/username? After that, it's just a matter of writing out the match/map statements to change the request to match what you've got on the server.

Resources