I've seen people struggling with implementing custom domains. That's when your customers can use your web app from their own domain, i.e. yourapp.customer.com instead of yourapp.com/customer
Some people also call it white-labeling.
I can help you with this. It doesn't matter if you're on Heroku, AWS, Render or something else.
If you're running an internet business that will benefit from offering custom domains, leave a comment, and let's organize a call.
I'll explain how to:
A couple of weeks back, I've developed the custom domains feature for a really cool company. While working on it, I discovered that most people who try and implement custom domains encounter a couple of the same problems. Even when they end up implementing it, unwittingly they had just added a single point of failure for their app or they made it somewhat of a manual process while it could've all been fully automated, etc.
I had this cool idea of productizing my solution for these problems, basically, offering people a managed custom domains service. Since then, I'm trying to get a better understanding of the problem and people facing this problem. I've been reaching out to people and companies I found on Indie Hackers who have already implemented custom domains trying to figure out what makes a company implement it, what types of companies usually implement it, what industries are they in, are they B2B, B2C, B2B2C, B2B2B, and so on.
What I'm getting out of our call is just that, I want to see why are you interested in offering custom domains feature, how did you know it was the right time to build it, why do your customers want it, what industry are you in, etc.
Btw, just a quick thanks to all the folks who replied to me on Twitter when I sent them a message asking about this. I know you're all super busy, and it meant a lot to me that you'd respond to a complete stranger.
Hey @RobertoDigital , Something which you might find helpful.
@shree - thank you for the shoutout :)
Great to know this crnjac
Hey Drago π
Nice to meet you here after Intercom. I've implemented this using Nginx Proxy + LE for a website builder which handles ~3k domains in the past. Happy to get on call to explore your solution for them and maybe expand on the problem.
Hey Apoorv! Nice to see a fellow Intercomrade on Indie Hackers :) let's connect on Twitter so we can chat :)
Reaching out on Twitter, very curious about your implementation! Happy to share some insight as well :)
Let's do it!
Hvala Drago! I'm in - PMing
Sweet!
I just asked admins from my data center for a solution to this a couple of days ago.
After spending some time googling, I suggested them to take a look at "Caddy in front of Apache" vel "Caddy as a reverse proxy for Apache".
That's a cool solution! We can get on a call and talk some more about it. You can implement it without them needing to do anything.
I forgot to mention that custom domains are already working, the only thing that is missing are SSL certificates for them. We'd like to use Let's Encrypt API for that.
Ok, now I understand. I'd say HTTPS is a big part of this because browsers will throw a warning to people visiting over HTTP, or in some cases not even allow them to visit the HTTP website. If your admins don't resolve this just message me and we can get on a call https://twitter.com/dragocrnjac
Would you also be able to cover fully custom domains like short link services instead of bit.ly/12345 users could add their domain to be example.com/12345? Or is that a different process?
I'm not nearly at the point of needing to implement this feature yet but it one that I've been dreading simple because I wouldn't even know where to start.
Hey, my app https://blanq.io does this. Let me know if you have any questions.
Yes, but you have to understand that the path after the domain (/12345) has to be handled by your backend. If your customer is using example.com/12345 it is the same as if they went to bit.ly/12345 but the browser will show example.com/12345 instead.
Yeah that's definitely how I would like to implement it, the path would be the same and handled by my server and just the domain would be changed. I'm just making a product analogous to shortlink service and I want my customers to be able to brand their links with their own domain so they can share it with their users or embed it in their sites.
That's great! Once you set up your service and want to allow customers to brand their links, just hit me up here or on Twitter
https://twitter.com/dragocrnjac
This is a real pain man, but we have tackled it using caddy server for https://helpninja.com
Hey, that's great! Do you mind jumping on a 15 min call with me to tell me about your setup? Maybe I can share some tips to make it more secure, available etc?
I think this is a great idea. I had a hard time implementing this in Blanq. Small things like missing a line of configuration are difficult to detect and debug. Nginx that I use, recently added support for dynamic variables which makes the reverse proxying a bit easier.
For custom domains, I use a third party library to automatically generate and update SSL from LetsEncrypt but, setting it up and making it work was time consuming and frustrating.
I would have loved to save some time and instead focus on building features.
You should productize this
If possible can you run https://gtmetrix.com/ on your solution and let me know what you get for connecting and ssl on the waterfall screen.
We're obsessed with page speed at https://versoly.com/ so if your solution is fast would love to chat.
Hey Volkan, I've run it through gtmetrix.com and got SSL done in 83.6 ms.
It will go lower when I roll out the new solution I'm currently testing. What do you think?
Contact me on Twitter so I can send you a screenshot. IH doesn't let me share an image in the comment.
I think there's definitely a need for this! I remember getting it setup initially and it was an absolute nightmare to semi-automate since there isn't a ton of useful information and guides out there about it. Looking back, I would have definitely paid for a solution.
Too, Drago :D Hajde!
Hey Nikola :)
I see you're running hostedstatus.page
Do you guys offer custom domains to your users?
That's one of my goals, but so far had no luck whatsoever. Tried with Caddy but eventually started focusing on other stuff π€·ββοΈ
Awesome! Let's move this conversation to Twitter DMs and organize a call :) Can't wait!
Much appreciated π₯ πͺ
Love this! Letβs get on a call
Let's do it, my Twitter has open DMs!
Hi,
I have set up my saas application SSL and wildcard domain SSL too.
I am using Nginx to route the custom domain to the Saas application.
For example the customer wants: abc.customerwebsite.com to mask to abc.mysaas.com then I am facing SSL issues as the SSL for abc.mysaas.com doesn't work for abc.customerwebsite.com
Can you help me with this?
Do I need to generate the SSL for abc.customerwebsite.com on my server and save it on my server (after verification of DNS from the customer?)
I am using CertBot to generate SSL.
If anybody from the future ends up here looking for an easy way to implement custom domains, check out https://approximated.app (I'm the founder). It reliably serves hundreds of thousands of custom domains as of today, it's super easy to get up and running with your app the same day, and it starts at $20/month with a 7 day free trial.
This is quick and easy to implement but the load times are painfully slow.
Do you mean the landing page, the dashboard, or custom domains running through it? wondering so that I can fix it or provide support.
Thanks for the prompt response, shall I DM you ? Not the speed of your dashboard or LP, but the custom domains I've linked.
Also is it possible to so something like :
<VirtualHost *:443>
ServerName vendorcustomdomain.com
ProxyPreserveHost On
ProxyPass / http://sassdomain.com/home?vendor=vendorid/
ProxyPassReverse / http://sassdomain.com/home?vendor=vendorid/
SSLEngine on
# SSL certificate configuration
</VirtualHost>