私の webpack 構成は、提供される index.html をオンザフライで生成する HTMLWebpackPlugin を使用します。
plugins: [
new HTMLWebpackPlugin({
title: 'My App',
favicon: path.join(__dirname, "../src/public/fav.ico")
})
]
この生成された index.html を次のように公開しています。
app.use('/', express.static(__dirname));
クライアント側のreact-routerを使用しています。ルートは次のとおりです。
export default (
<Route path="/" component={App}>
<Route path="home" component={HomePage} />
</Route>
)
http://localhost:1337/へのアクセスは正常に動作し、「アプリ」コンポーネントを適切に表示しますが、http://localhost:1337/homeにアクセスしようとすると、ルート /home が SERVER-SIDE に見えるため、404 が返されます。 .
もちろん、server.js に追加すると:
app.get('/home', function(req, res) {
res.json({name: 'john'});
})
http://localhost:1337/homeを呼び出すと、適切な json オブジェクトが返されます。
何が欠けていますか?