Question

How to get a single Nodejs app to serve different content to different domain names?

Posted September 30, 2019 2.2k views
Node.js

What I am trying to do is get several domain names pointing to one Nodejs app (express & next) and have unique content be served back based on which domain name it has come from. I’ve seen a few tutorials that are massively out of date, and mostly everyone else recommends to use Nginx and a reverse proxy. But that seems to be for serving up wholly different node apps, instead of serving content to a singular app. Any pointers would be greatly appreciated. Cheers!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
2 answers

Hello,

Indeed the most straight forward way would be to just have multiple instances of the application and use Nginx server blocks for each domain name. That way you will be able o host multiple apps on one server. To do that you can follow the steps here:

https://www.digitalocean.com/community/tutorials/how-to-host-multiple-node-js-applications-on-a-single-vps-with-nginx-forever-and-crontab

If you prefer to have a multisite setup and have only 1 app, I think that you could try using the Express.js Extention vhost. Here’s an article that might help you:

https://medium.com/@Xourse/nodejs-app-with-multiple-domains-75939bee8efd

Regards,
Bobby

by Christian Fei
This is our tutorial on hosting multiple Node.js apps on a single VPS with nginx, forever, and crontab.
Submit an Answer