Question

How to deploy a react server-side application with express serve

Posted September 14, 2021 179 views
Node.jsReact

I was working on a project that rendered the react component on the express server running and then delivers the html from the server side.
The project consist of two webpack configs file one for the client(react code) and other for the server sending the resolved react code.

But I am facing issue on how to deploy this application.

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

Maybe you can try this solution extracted from the reactjs official page Example link

const express = require('express');
const path = require('path');
const app = express();

app.use(express.static(path.join(__dirname, 'build')));

app.get('/', function (req, res) {
  res.sendFile(path.join(__dirname, 'build', 'index.html'));
});

app.listen(9000);

In this code the express server app is pointing to the build folder and you just need to route yourself the pages. Indeed, all routes will be quite similar:

...

app.get('/', function (req, res) {
  res.sendFile(path.join(__dirname, 'build', 'index.html'));
});

app.get('/users', function (req, res) {
  res.sendFile(path.join(__dirname, 'build', 'index.html'));
});

app.get('/admin/dashboard', function (req, res) {
  res.sendFile(path.join(__dirname, 'build', 'index.html'));
});

...

As you can see all you need is to deploy the express app and t will do the rest for the react app.
For further info, please chech this out: https://create-react-app.dev/docs/deployment/