Naked domain support for Azure Websites - azure

From the looks of it the new Azure Websites Feature still does not support hosting them under a naked domain such as example.com instead of www.example.com. Am I missing something?

Azure Websites have now released support for naked domains. Websites that are run on Shared or Reserved instances does support naked domains through an A record. Domain management is available through the Azure management portal.
Update 2012-10-21:
I previously stated that free instances could rely on CNAME to redirect a subdomain to their free Azure-website, but this appear to be incorrect, at least at the moment. Doing a CNAME to your Azure-website will result in an HTTP 404, as reported by MemeDeveloper in his comment.
However, if you run your website on a Free instance, you are still limited to CNAME, so for those websites naked domains are not possible.
Update:
As MemeDeveloper suggest in his comment, there are web services you can use that will take your naked-domain example.com and redirect it to www.example.com for you. For your www subdomain you could then have a CNAME to your Azure-URL.
Not as clean as a simple A record that is available for your paid websites, but a workaround for your free sites.

The conversations above are a bit dated. This entry however, comes up at the top of the list when folks are hunting/searching for Azure Naked Domain support.I'd update the answer.
Azure now supplies an IP in shared and > plans, and you can configure a naked domain.
Check out the following articles for more info:
https://azure.microsoft.com/en-us/documentation/articles/web-sites-custom-domain-name/
http://blogs.msdn.com/b/waws/archive/2014/10/01/mapping-a-naked-url-to-your-azure-web-site-url-with-no-www.aspx

Azure does not support naked domain, because this requires to map definitively an IP address to the domain name. To map a naked domain name, you need a 1 record in the DNS. So, in this case, services like load balancing are more difficult to put in place.
Most registrars provide a way to redirect a naked domain request to another name, through HTTP redirect mechanism. For instance, you could redirect example.com to www.example.com.

There seems to be some confusion about this. I don't know what the deal with Websites is, but normal Azure Web Roles provide a virtual IP address that is guaranteed not to change unless you delete a webrole deployment.
You can bind a domain name A-record to that VIP, as described here.
In practice, that means that when I want to update my website, I have to do a staging deployment first; and then switch it with the production deployment, and finally delete the staging deployment. The only caveat that I've been aware of, is that you can't do this if you switch your endpoint configuration (not even names).
I'm currently looking if there are same kinds of guarantees for websites, but haven't found appropriate documentation yet.

Related

Client cname pointing to my domain on cloudflare

A client of ours has the domain client.com
Our application is at superapp.mycompany.com
We want the client to be able to access our application via their own subdomain, like: superapp.client.com.
Normally we'd just tell the client to add a cname for superapp and point it to superapp.mycompany.com. Then on our server (IIS) we'd bind their domain to our app and everything would work as intended.
However, we can't replicate this functionality when our mycompany.com domain is managed via cloudflare.
When we navigate to superapp.client.com we get the following error page:
Error 1001
What happened?
You've requested a page on a website (superapp.client.com) that is on the Cloudflare network. Cloudflare is currently unable to resolve your requested domain (superapp.client.com).
Is there any way that Cloudflare can be used in this fashion?, this seems like a pretty standard set up for a multi tenant application that supports custom domains.
We don't need all the protection that Cloudfront offers for these client domains, but we want to use the Cloudfront nameservers for out application (mainly for fast switching of DNS records in the event we migrate servers, etc).
Any help is appreciated.
I hope it's not too late. But just found a way to do so.
You just need to add your client's domain (Add site in Cloudflare) to your account.
You don't need to change client domain's NS. So in your Cloudflare panel this domain will showing as "Pending Nameserver Update".
Next step is add the CName record to this domain.
Although the NS of client domain is not changed to CF, but CF has a lookup record as CName for it.
Hope it helps.
Just in case someone arrived here with same issue as me. Here is the answer. For short, no that won't work.
Since Cloudflare is a reverse proxy for the domain that is on Cloudflare, the CNAME redirect for the domain (not on Cloudflare) wouldn't know where to send the traffic to.
Ref: https://support.cloudflare.com/hc/en-us/articles/360017421192-Cloudflare-DNS-FAQ#CloudflareDNSFAQ-CanICNAMEadomainnotonCloudflaretoadomainthatisonCloudflare
If you don't need the CDN benefits, you can still use Cloudflare nameservers to manage your DNS zone and keep your current configuration. Just make sure the CDN is deactivated for the target subdomain in your zone (superapp.mycompany.com in your case).
You can tell if the CDN is activated or deactivated for a subdomain by looking at the cloud icon on the right of each DNS entry: if the cloud is orange the CDN is active, if it is gray, it isn't.
Cloudflare also supports external CNAME resolution in their CDN infrastructure, but it's only available for its Enterprise customers:
https://support.cloudflare.com/hc/en-us/articles/217371987-Managed-CNAME

Understanding how the correct site gets served up to a domain?

This question is sort of dev ops or networking related. When I point a domain at a hosting provider, I use a fairly generic Nameserver, i.e. ns1.digitalocean.com.
I understand when I add a domain to my hosting service to manage, that the hosting service recognises I am the registrant and serves up the site to the domain - so my question is, if another customer of the same hosting service adds my exact domain to manage on his account (there are now two) how does the correct registrant of the domain get selected? I.e. if there are two accounts on Digitalocean and they both put in example.com to manage and the registrar of example.com is pointing to the generic ns1.digitalocean.com how does Digitalocean select the correct accounut and code base to serve up? Apologies if any confusion or lack terminology - I am a bit fuzzy on this whole process. Thanks, Nick
They wouldn't allow another user to add the same domain, otherwise it's a bug.

Why won't root domains in Azure Traffic Manager load balance or fail over?

Simply put:
I have a domain called erik.com, two azure websites (east and west), and one traffic manager that is setup to manage the two azure websites.
When I take east offline (by throwing a non-2** status code) erik.com goes offline. This should not be the case! Right?
However, when I add a sub domain to the two azure websites (www.erik.com) then it works! I take one or the other offline and the traffic manager resolves to the available website.
I'm hearing/reading things that tell me that Traffic manager doesn't work with root domains like that... Say what?! Why?
As explained in the FAQs at https://azure.microsoft.com/en-us/documentation/articles/traffic-manager-how-traffic-manager-works/#faq , Traffic Manager does not support 'naked' / apex domain names.
*Can I use Traffic Manager with a ‘naked’ (www-less) domain name?
Not currently.
The DNS CNAME record type is used to create a mapping from one DNS name to another name. As explained in the Traffic Manager example, Traffic Manager requires a DNS CNAME record to map the vanity DNS name (e.g. www.contoso.com) to the Traffic Manager profile DNS name (e.g. contoso.trafficmanager.net). In addition the Traffic Manager profile itself returns a second DNS CNAME to indicate which endpoint the client should connect to.
The DNS standards do not permit CNAMEs to co-exist with other DNS records of the same type. Since the apex (or root) of a DNS zone always contains two pre-existing DNS records (the SOA and the authoritative NS records), this means a CNAME record cannot be created at the zone apex without violating the DNS standards.
To work around this issue, we recommend that services using a naked (www-less) domain that want to use Traffic Manager should use an HTTP re-direct to direct traffic from the naked domain to a different URL, which can then use Traffic Manager. For example, the naked domain ‘contoso.com’ can re-direct users to ‘www.contoso.com’ which can then use Traffic Manager.
Full support for naked domains in Traffic Manager is tracked in our feature backlog. If you are interested in this feature please register your support by voting for it on our community feedback site.*

for Azure websites, do you need to keep the awverify DNS records?

I managed to get my custom subdomain name assigned to my Azure website, following this (very carefully):
link to azure custom domain name instructions
Is it necessary to keep the "awverify" DNS records after the custom domain names linkage has been established?
I deleted the awverify DNS record for the test subdomain, and was able to add another subdomain pointer to my azurewebsites test site.
Maybe I did not wait long enough. Does anyone else have any experience with this, to say one way or the other?
Not sure if I understand the issue you are running into... but the CNAME entry with the 'awverify' subdomain is used to "prove" to Azure that you own that domain when you are wiring up a custom domain name. Once that is established, you no longer need that.

wildcard DNS A record for Azure Reserved Website

I have setup a wildcard A record so *.mydomain.com resolves to the fixed IP address of my reserved WAWS. I have also set up a few test a and cname records for various subdomains.
The guide here explicitly mentions wildcard a records:
A record
With an A record, you map a domain (e.g., contoso.com or
www.contoso.com) or a wildcard domain (e.g., *.contoso.com) to the
single public IP address of a deployment within a Windows Azure web
site.
The main benefit of this approach over using CNAMEs is that you can
map root domains (e.g., contoso.com) and wildcard domains (e.g.,
*.contoso.com), in addition to subdomains (e.g., www.contoso.com).
In the Azure portal, I am able to add various domains which get validated before being accepted. I can add the root mydomain.com plus any explicit a and c subdomains eg test.mydomain.com. Navigating to mydomain.com, www.mydomain.com and test.mydomain.com all work fine but if I try something.mydomain.com where I have not explicitly set this up, I get a 404.
something.mydomain.com resolves to the correct IP but just does not work. When using a wildcard a record, what do I need to configure in azure to get it working?
mydomain.com is already there but does not seem to allow just any subdomain
*.mydomain.com is not accepted
Even explicitly trying to add each required subdomain (eg something.mydomain.com) does not seem to work as the validation fails (unless I create a separate DNS record for each subdomain which defeats the purpose of the wildcard).
I am at a loss as to how to proceed. Given the mention of wildcard domains in the windowsazure.com article mentioned above, it seems as though they should be supported but in that same article, there is a comment stating that they are not supported and I certainly have not manage to get it working so far.
Any idea whether this is possible right now?
Wilcard domains aren't supported by WAWS currently. Its in the works for now.
To be honest, most documentation on Azure is out of date, for example the pages about CDN.
It's to bad that you can't rely on whats written.
I assume there's been no change to this wildcard matter since March?

Resources