Report this

What is the reason for this report?

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

Posted on September 30, 2019

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!



This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

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.

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

Thanks Bobby!

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.