Question

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

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.


Submit an answer

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!

Sign In or Sign Up to Answer

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.

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/