Google Developers Console - Missing custom domain - google-app-engine

I had two custom domains on my setup. Now one is not there, the domain in question, www.emlakair.com is still working and pointing to the app engine code, but missing from the developers console. The other domain is www.catchamove.com. This is working also and visible under custom domains.
I have not done anything with the custom domains since they have been working so no changes on my part there. However, I have recently setup an account on with Google's search console and both the same domains are listing on there. My domain settings remain unchanged since verification of the domain first time around and everything seems fine that end.
Does anyone have a clue, I could try to re-verify the missing domain but that will mean changing the CNAME record and that will take the domain down for a while.
Here is the CNAME record data:
Can anyone from Google or anyone else for that matter explain this or provide a solution.
Thanks

Ok, I just had to re-verify again. But why? It would be nice to get some answers as to why a custom domain falls of the face of the map without explanation, yet still manages to point to the app engine project code no problem?
However, there is one anomaly still remaining and that is the other custom domain www.catchamove.com is showing A and AAA records on the developers console, but www.catchamove.com is setup with a CNAME record on my DNS management system, but it is working at the moment.

Related

Setting up subdomains for different services in appengine

I did pore through other similar questions and found answers. I am still having a situation that is not answered and I am not able to comment on those posts to seek clarifications. Thus this new question.
Let me explain my situation...
I have a GCP Project and enabled AppEngine on the same.
I have setup 3 services: 'default', 'api' and 'ui'.
I have deployed apps on all the 3 services and they are all being served through their appspot urls without any issues.
Now I want to setup routing using own domain, purchased from GoDaddy. The schema looks like the following:
www.my-domain.com -> 'default'
rest.app.my-domain.com -> 'api'
ui.app.my-domain.com -> 'ui'
I have the dispatch.yaml to setup the routing rules and I can see the same properly defined in the 'Services' screen. No problems there... The problem is in defining the custom domain mappings for these services.
For the 'default' service, it was easy. GAE identified GoDaddy and requested A & AAAA records for managed security. And then CNAME 'www' pointing to 'ghs.googlehosted.com'. Done and all went well.
Now, for the other services, GAE is asking for the same set of A, AAAA and CNAME records.
Here is the problem. I cannot setup multiple CNAME records pointing to the same value ('ghs.googlehosted.com'). The GoDaddy cPanel/DNS Manager Tool does not even allow adding such records. I have spoken to their support and they confirm that their tool is restricted ti ICAAN policies. So multiple CNAME records is out of question.
As a workaround, I setup a sub-domain pointing to googledomains. I setup 'app' as a new Zone in 'Cloud DNS' in m GCP Project. All name servers are placed in master DNS zone in my GoDaddy. This could allow me to create CNAME record for 'app' in googledomains, atleast theoretically. But GAE Project Settings does not recognise the domain. Its forcing me to make the CNAME records in GoDaddy under the master zone. Not sure how Google doesnt understand the ICAAN policies!! So this option walked into a wall too.
Then I read about the wildcard subdomains. GoDaddy documentation describes the support for this but limited to a specific IP (so only A record). However, GAE needs the value 'ghs.googlehosted.com' and that means I must create a CNAME record only. There are many discussions on this; some saying this will not work and others claiming this works.
This is quite literally my last option and I would like to know how to make this work. If there is any other way to get this setup working, it would save me a lot of time and trouble. I am a developer and all this infra work is just such a hog on my productive bandwidth.
Thanking you in advance.
Finally, the way I have resolved this is to define a single wildcard CNAME in GoDaddy pointing to 'ghs.googlehosted.com' and registered all subdomains as new domain names (actually with different names) in googledomains now. The latter is an alternate fail-safety to ensure my clients can connect. I am now waiting for the current subscription to run out and move away from GoDaddy after. Right now, the pricing I pay GoDaddy is too much compared to Google Domains and for the level of support quality from GoDaddy it is really not justified.
So, I've worked on this for some time and I believe that there is something odd here.
I tried this with a go daddy domain and 2 app engine services. So the steps that I followed are explained next:
1) Go to App engine and on settings/custom domains add the custom domains you'd like to have (with the subdomains in this case)
2) On go daddy you need to go to your domain and admin your DNS records on your domain.
3) Add The Cnames registers with your sub domain pointing to ghs.googlehosted.com
4) deploy your dispatch.yaml
The thing that I don't understand is why you say that is impossible to do the step 3 as it has never caused issues when I tried to do this. Could you specify how are you doing the third step in go daddy?
Additionally, I believe that this same information is better explained on this documentation Is just that I don't get why is it failing on your side.

Adding custom domain to google app engine

I am a newbie to google compute engine, I looked at various tutorials and could add a custom domain to app engine. I added a sub domain as advised in the tutorial http://demo.appostrophi.com/ [http://demo.appostrophi.com/][1]. I want my URL to be www.appostrophi.com/ but it's showing a blank screen. What could I have possibly done wrong.
I have added the resource names as suggested by google with my domain registrar.
Please advice.
Thanks in advance
Your DNS registration appears incorrect (or didn't yet have time to propagate properly):
Firefox can’t find the server at www.appostrophi.com.
and
Firefox can’t find the server at appostrophi.com.
The document you mentioned is not the proper procedure to register a domain and/or a subdomain to a GAE app. See Adding a custom domain for your application.

Custom Domains in Google App Engine

I added a custom domain to point to one of my Google App Engine Projects. It has been approximately 18 hours since I made this change.
How long does it take for DNS changes to propagate. After 18 hours when I hit the domain, I still get "Site can't be reached" on Chrome.
ping: cannot resolve: Unknown host, when I do a ping.
UPDATE: I figured out the issue. I bought the domain uisng Google Domains. It seemed like Google App engine settings, where I added, custom domain was going to update A records in Google Domains for my domain. It didn't. Created A records in Google Domains, and now it works fine. My domain, and subdomain are pointing to a project in Google App engine.
At the bottom of the Add a new custom domain screen from the GAE App's Custom Domains page in the developer console you can see:
DNS changes can require up to 24 hours to take effect
A snapshot of that screen is illustrated at step 5 of the Adding a custom domain for your application procedure.
Side note: maybe it's also worth re-checking the updated settings, it actually happened to me once - I was waiting (in vain) for DNS propagation only to notice that the changes I thought I completed weren't there - I must have missed an ok/confirm button or something...
If the settings are there you could also try checking using some network other than your usual internet provider (which often is involved in the DNS propagation). Mobile/office maybe?
You can also try some online DNS lookup tools or even website verification tools - often propagation to such servers is faster than to end-user internet providers. It doesn't matter if the app is not up, all you want to see if they're able to get the IP address for your domain. If any of them can get an address then it's really just a matter of time.

GAE Custom Domain Delegation

I have a Google Application Engine project that is working fine with two Custom Domains pointing at the application. mydomain.com and www.mydomain.com. I want to transfer the domain pointers to another GAE project on a second gmail account, and later transfer them back.
I thought this would be as simple as using www.google.com/webmasters/tools/ to make the second account a second owner of the two domains because they are automatically verified through delegation. This looks to be happening if I use webmaster tools with the second account, I see the sites as I do with the first account.
My plan was then to go into Custom Domains for the first account through https://console.developers.google.com/ and turn off the domains pointing to it and then go to the second account and point the domains to it.
Unfortunately whatever I seem to do I cannot get the other domains to show up in "2. Select the domain ..." I seem to need to verify the domains, even though delegation should be sufficient.
I could verify by hitting the domain registrar with new settings but it seems a pretty heavy approach when all I am trying to do is get Google to move the domain pointers from one GAE application to another.
Also there will be a long hiatus where the domains are pointing at nothing. I suspect this to be either my complete misunderstanding of the Custom Domain approach or a Google/GAE issue.
I suspect a Google/GAE issue because in the second account some of the descriptions of the delegated ownership domain names have http:// at the front and this is not true on the first account.
Any suggestions or help greatly appreciated.
I had this same issue, and I had to call Google Apps for Work (renamed from Business) to cancel the original account that housed the domain so it would show up in my second (new) account.
I have found a workaround/alternative which is to verify the domain names using the sub-domain method. I use 1&1 for my domain names and although it only allows 5 sub-domains I have a spare one I can use. So I have two sub-domains defined, one for each account as per verify settings in webmaster central. I can easily flip the domain pointer between the first and second accounts and back again using https://console.developers.google.com/ . This is partly because the other configuration settings that are necessary when you set up a domain pointer in Custom Domains are always the same for Google, even if the accounts and applications are different. There is no haitus with this method because the flipping takes effect immediately in Google, although the effect in the web world can take a while with caching occurring all over the place.
I could not used the suggested Google Apps/Business solution as I am not using either.
The conclusion I reach is that delegation of domain names is not really much use and best avoided.

How are people using Google App-Engine apps with their own domains?

I've been fooling around with the Google App Engine for a few days and I have a little hobby application that I want to write and deploy.
However I'd like to set it up so that users are not directly accessing the app via appspot.com.
Is hosting it through Google Apps and then pointing it at my own domain the only way to go? I looked at that a little bit and it seemed like a pain to implement but maybe I'm just missing something.
My other thought was to write the app-engine piece as a more generic web-service.
Then I could have the user-facing piece be hosted anywhere, written in any language, and have it query the appspot.com url.
Anyone have any luck with the web-service approach?
The reason Google Apps is required is because you need somewhere to a) verify you own the domain (otherwise, you might point it at app engine, then I might hijack it by adding it to my account) and b) set up domain mappings (which subdomains point to which of your appengine apps).
Since this stuff already exists in Apps, it seems silly to duplicate it in AppEngine.
As has been pointed out, it doesn't cost anything, and you do not need to "move" anything to Google. You simple created a cname record with a random name to verify you own the domain, and a cname for the subdomain you wish to point at App Engine. This only takes a few minutes, and once it's done, it's done forever.
Note: If you host your site elsewhere and use webservices, you need to scale the site/frontend. If you host on app engine, you get this for free :-)
I wrote an article on my blog about redirecting *.appspot.com domains to your custom domain to keep your branding:
http://blog.dantup.com/2009/12/redirecting-requests-from-appid-appspot-com-to-a-custom-domain
To do this, I believe you need to be using Google Apps and have a custom domain setup for Google Apps. Then, you deploy your app into your Google Apps domain.
Here is google's official instructions on how to do that:
http://code.google.com/appengine/docs/domain.html
I have used this process for a couple of sites and it is easy and painless, provided you have control on the DNS records for your domain (you should).
OK, we're now at the end of 2017 and things are a lot different regarding App Engine and custom domains. It's easy now!
Go to the app engine dashboard for your app and choose Settings, then go to the Custom Domains tab. From there, choose Add custom domain.
The tricky part is that Google needs to verify that you control the domain, so they ask you to put a TXT record in the DNS for your domain. Once you do that and Google it, you become "verified" as the owner of the domain.
After that, Google will give you a bunch of A and AAAA (for IP6) records to put in your DNS. Once you've done that, you should be good to go.
It can be easily done using request.getRequestURI() method. If the URL doesn't include your domain, just redirect it to the desired URL using
resp.sendRedirect("<your domain>")
Otherwise load a error page using
request.getRequestDispatcher("<error-page>").forward(request, response);

Resources