Question

How to use one droplet for frontend (nuxt) and backend (node app) on subdomains of the same domain.

Posted September 24, 2020 1.4k views
Node.jsAPI

Hello I am new with Digital Ocean and want to know how to use different urls for different apps (please include nuxt.js). my backend will be an API that is why I need another domain. I know there is a feature on nuxt but I dont want the api to go down if the nuxt app goes down.

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.

×
Submit an Answer
1 answer

Hi there @23brewert,

What I could suggest here is using Nginx as a reverse proxy so that you could proxy the traffic to your different apps based on your domain names.

I could suggest starting with this article here on how to setup Node JS for production, you can follow Set Up Nginx as a Reverse Proxy Server step:

https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-ubuntu-16-04#set-up-nginx-as-a-reverse-proxy-server

Let me know how it goes!
Regards,
Bobby

by Brennen Bearnes
Node.js is an open source JavaScript runtime environment for easily building server-side and networking applications. Node.js applications can be run at the command line but this guide focuses on running them as a service using PM2, so that they will automatically restart on reboot or failure, and can safely be used in a production environment.
  • Is there a way to do this in a single app? Apps are amazing but I would like to use a single app to run my backend and front end. I tried with 2 different apps approach as well, but it failed really badly.

    • Hi there,

      Yes, here is a great video on how to do that:

      https://www.youtube.com/watch?v=qkg5Cufa-C8

      Regards,
      Bobby

      • I have checked this but my backend has its own backend (using Keystone) and When I try to access that two next projects clash. I believe the reason is not being able to use subdomains instead of a single domain with a route. I tried launching 2 separate as well and try to connect them as well. That failed too.

        • Hi there,

          Have you tried using a Dockerfile or a Docker Image to run both applications from?

          Also, do you get any specific errors when the service crashes?

          Regards,
          Bobby

          • Servis is not really crashing I believe for some reason frontend app is not finding the backend for like first 1 min of the request (my console log code lets me know it is not finding) then when it finds it images doesn’t load for like 25 min. This is in 2 different apps situation.

            In a single app with 2 components. backend is set to APP_URL/backend but when I go there. dev tools console gives me “Failed to load resource: the server responded with a status of 404 ()”

            I believe keystone is set to load the admin in “/” route.

            I’m terrible at backend stuff at the moment. So, I’m trying to do relying on the Digital Ocean :)

          • Hi there,

            I am not familiar with Keystone do you have a link to the project? I could try to reproduce the problem on my end.

            Regards,
            Bobby