I am developing a new project with react/express as the frontend and loopback as the backend api. I have separated both of them in my development environment with different ports.
How should I deploy them in production?
Hosting on a same server - separate the backend with a different sub-domain?
Hosting on 2 different servers - seems impossible to use back the same domain.
A common application architecture is to host a front-end (user-interfacing) application and back-end (data-serving) application separately from each other. The goal is separation of concerns and therefore an increased ease in continuous integration between separate teams.
You can't start both on the same one and if they are apart, it's impossible for the frontend code to access the backend endpoints. Fear not. If you really want to run both servers, you have to make sure that both are accessible through the same port.
In the package. json file, edit the script: "scripts": { "server": "npm run dev --prefix server", "client": "npm start --prefix client", "dev": "concurrently \"npm run server\" \"npm run client\"" }, And, npm run dev you can start both at the same time.
I just answered a related question for AWS.
You can deploy
your frontend on a static hosting service and a CDN
your backend on a cloud computing service
You can set different subdomains on different hosts, e.g.
app.domain.com
on GitHub Pagesapi.domain.com
on HerokuIf you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With