How to connect a custom domain to an existing subpage/subdomain? - hosting

I am trying to connect a custom domain to the subpage of an existing website hosted via Firebase Hosting. Just like in website builder sites who allow users to 'connect a domain'.
Should I connect the new custom domain to Firebase's name servers, and then reroute to the specific subpage?
Or is there a separate standardized approach which lets a website publish content to custom domains?

You cannot map your DNS records to a subpage because it just map IP addresses to hostname.
The solution for you is to redirect requests from source page to your destination page.

Related

Apply access control to sub page with custom domain

I have a main website example.com, develop using Laravel. This website also provide a personal page for subscribed users at example.com/user1, example.com/user2, etc.
Currently, I control the access by URL, by verifying the username in the URL if the user is active or not.
However, I'm planning to give the URL its own domain. I have read about using DNS & htaccess, but it has to be done manually for every single user. I'm planning something that can be control programmatically.

HTTPS using google domains and third party hosting

I have purchased a domain name through google domains (e.g. example.com). Separately I have created a website at a third party (wix). I am now trying to connect my domain name to the wix hosted site.
Setting up regular http was trivial: I copied the 2 custom name servers from wix to the DNS name server entries in google domains and then example.com immediately began routing to the wix site.
What are the next steps to setup https so that my domain securely routes to wix?
The help page for google domains states that I can go to Certificate Authority to obtain an SSL certificate, but then where does the certificate information go? In google domains or in wix? If the cert info goes in wix, do I have to change any settings on the google domains side?
Note: I am tyring to avoid doing redirect because I want the website url to always show "example.com", I don't want the address changed by redirect to "example.wix.com" while the user is browsing.
Thank you in advance for your consideration and response.
Eventually https began to redirect properly to wix as well. I was not able to discover the root cause, perhaps it was just a timing issue with DNS.

Configure a custom domain name for an azure blob storage endpoint

I am following these instructions on how to configure a custom domain for a blob storage endpoint
and get to the instruction on configuring the custom domain name
Azure shows
I expect I need to enter the custom domain name but I am not clear on how to do this.
For example which one?
contoso.com
www.contoso.com
http://www.contoso.com
http://contoso.com
I am trying contoso.com
When I do this I see a brief message stating
Failed to update storage account 'mystaticwebsite' Error: The custom domain name could not be verified. CName mapping from contoso.com to mywebsite.blob.core.windows.net does not exist
using my example names
I have only just changed my domain name hosting location so I expect I need to wait.
[Update]
I see that all my storage accounts belong to the same Active Directory.
Could it be that the website needs to have the same domain as the Azure Active Directory?
[Update]
I see the CName record is not propagating.
I have asked about it here
I noticed existing answers are over a year old. Here is my scenario and the simple change I needed:
I already had my domain/website running through Cloudflare for the past 5+ years. My simple static .html website was being hosted on a traditional IIS server, but Azure's Static website offering is much more attractive, so now I was trying to move everything over as an Azure static website.
I created a new Storage Account and set up the "Static website" and copied my files over via Azure Storage Explorer.
My static website was working over Azure's url -- https xxxxxx.z5.web.core.windows.net fine.
I went to the "Custom domain" settings in the Blob service section of my Storage Account and followed the instructions of adding a CNAME for example.com and www in Cloudflare's DNS settings dashboard.
Back in the Azure Portal, I typed www.example.com into the custom domain textbox, but was immediately notified of:
"Failed to update storage account 'xxxxxxx'. Error: The custom domain name could not be verified. CNAME mapping from www.example.com to any
of xxxxx.windows.net, xxxxx.core.windows does not exist."
But I already followed the CNAME instructions and my Cloudflare DNS entries looked exactly like they wanted. I waited hours, thinking it was a DNS replication/refresh issue. I went to bed. Same problem in the morning.
THEN I noticed one thing that was different in Cloudflare... All 3 of the CNAMES i set up (asverify.www, example.com and www) all had Status "DNS and HTTP proxy (CDN)" turned on (the cloud icon with an arrow through it was lit up and orange colored.)
I clicked each one to turn off HTTP proxy. So now my DNS entries at Cloudflare are "DNS only" <-- this is the tl;dr, thanks for reading all this way.
tl;dr: If your DNS Records are set up in Cloudflare, you must make each of those entries "DNS only" and not "DNS and HTTP proxy (CDN)"
Edit: After your custom domain name is verified, you can go back into Cloudflare and turn the HTTP proxy (CDN) back on. You will need to add a Page Rule of example.com/* to Forwarding URL 301 to https://www.example.com/$1 if you want SSL to work for a root site.
As your first link mentioned, you need to get a custom domain name which binds your blob storage endpoint url before you enter the domain name in textbox.( step 3, 4, 5 ).
If you enter the domain name casually, you would get the above error. And you needn’t to enter ‘http://’ in textbox. The ‘contoso.com’ and ‘www.contoso,com’ are OK.
If you have a custom domain name, you just need to create a CNAME record with your DNS provider that points from your domain (like www.contoso.com) to blob endpoint url. Different domain registrar's websites have different methods.
For Azure,you could follow my steps to bind a domain name to blob endpoint url:
Before you do this, please make sure you have purchased a valid domain name. If not, please refer to this step to buy: (App Service>Create App service>click Custom domains> Buy domain).
Or you could read this article to buy a domain name.
Buy domain
If you have already purchased it, you could see the custom domain name like this:
the domain name you have purchased
Open your App Service>Custom domains>App Service Domains(domain name list)> click your domain name>Click DNS Zone>click ‘+Record set’ button.
Record set
In Name property, you could enter a custom domain name( such as aa.contoso.com). In Type, you could choose CNAME. In Alias, you could enter your blob storage endpoint url which you want to bind( such as myname.blob.core.windows.net). After you saved the record, you’d better to click ‘Refresh’ button to refresh the domain record list.
The bind screenshot like this:
Bind blob endpoint url to custom domain name
Return storage account> Blob Service>Custom domain>In textbox, you could enter the custom domain name which you have created. (such as aa.contoso.com).
Finally, you could save the domain name successfully. (If you saved successfully, the ‘Save’ button would be disabled.)
save custom domain name successfully
I made a CNAME record with name=docs Alias to myblob.website.blob.core.windows.net ( i.e mapping to the storage account in Azure)
Then in the text box in the Azure Custom domain screen I entered docs.contoso.com
then I made a redirect for www to http://docs.contoso.com/index.html
So now
www.contoso.com opens the index.html to say "hello world"
Note I do have the $root container set up with index.html inside it.

How to implement customer subdomain in Spring framework

In many of the SaaS web applications (ex, Atlassian JIRA), a user can have dedicated subdomain. For example, if my user name is helloworld, then after I log in to the web application, I am redirected to helloworld.atlassian.net
How to implement this in Spring Framework?
Do I have to have one application server instance running for each customer?
But this dosent seem to be the cheapest solution. Does Spring have such feature that I can create dynamic subdomain based on the username, and in the backend, only one instance of application server is running?
Create a custom filter which parses whole url and extracts subdomain, then check if the user is on proper domain with proper rights. Also worth mentioning Nginx should redirect "*.yourdomain.com" so all subdomains don't have to exist in Nginx, they could exist in database and each user has his unique or can be multiple sudomains attached, your custom filter does the checking on each request.

Scalable way to add third-level domains

Users of my app has an ability be get a third-level domain for them : my-domain.example.com. What is the scalable way to manage that on Fortrabbit?
I use CloudFlare for DNS management. I assume I can delegate domains via API with them. How can I automate it on a Fortrabbit side for that domain to resolve?
On fortrabbit, you probably don't have to use an API or something.
Just create a domain entry *.example.com that points to your document root. You will have to get the subdomain in your code.

Resources