From 05f3f5ee81aec9429f00f57d17b499d8a22aadef Mon Sep 17 00:00:00 2001 From: Igor Ramos <isramos@users.noreply.github.com> Date: Tue, 18 Apr 2017 20:38:07 -0500 Subject: [PATCH] Update doc server example to work from any directory (#1988) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Node.js serving with absolute path It’s safer to use the absolute path of the directory that you want to serve, in case you run the express app from another directory. * Update README.md --- packages/react-scripts/template/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/react-scripts/template/README.md b/packages/react-scripts/template/README.md index d1c5e0c6e..1bb101076 100644 --- a/packages/react-scripts/template/README.md +++ b/packages/react-scripts/template/README.md @@ -1242,10 +1242,10 @@ const express = require('express'); const path = require('path'); const app = express(); -app.use(express.static('./build')); +app.use(express.static(path.join(__dirname, 'build'))); app.get('/', function (req, res) { - res.sendFile(path.join(__dirname, './build', 'index.html')); + res.sendFile(path.join(__dirname, 'build', 'index.html')); }); app.listen(9000); @@ -1264,11 +1264,11 @@ If you use routers that use the HTML5 [`pushState` history API](https://develope This is because when there is a fresh page load for a `/todos/42`, the server looks for the file `build/todos/42` and does not find it. The server needs to be configured to respond to a request to `/todos/42` by serving `index.html`. For example, we can amend our Express example above to serve `index.html` for any unknown paths: ```diff - app.use(express.static('./build')); + app.use(express.static(path.join(__dirname, 'build'))); -app.get('/', function (req, res) { +app.get('/*', function (req, res) { - res.sendFile(path.join(__dirname, './build', 'index.html')); + res.sendFile(path.join(__dirname, 'build', 'index.html')); }); ``` -- GitLab