我有一个应用程序,其中我使用以下代码提供静态文件
// index.js-服务器文件夹
app.use(express.static(path.join(__dirname, '..', 'client', 'build')));
app.get('/*', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'client', 'build', 'index.html'));
})
;
我能够获取html文件,但无法在build文件夹中获取js文件。
首先,它无法找到chunk.js文件
所以我添加了“主页”:“。”在我的package.json中为客户端
那我能够避免找不到404文件,但是当我检查chunk.js文件的响应时,它给出的是html代码而不是缩小的js代码。
我的应用程序基本URL是https://www.example.com/app
查看以下详细信息
sampleapp
client
// using cra (create react app) files
src
public
...
server
index.js
Dockerfile
// package.json->客户端文件夹中的
{
"name": "client",
"version": "0.1.0",
"homepage": ".",
"private": true,
"dependencies": {
"react": "^16.8.3",
"react-dom": "^16.8.3",
"react-scripts": "2.1.5"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
],
"proxy": "http://localhost:4000"
}
// Dockerfile
FROM node:10.15.1-alpine
COPY . /var/app
WORKDIR /var/app/client
RUN npm install --no-cache && npm run build && npm install -g serve
WORKDIR /var/app/server
RUN npm install --no-cache
EXPOSE 4000
CMD [ "node","index.js" ]
任何帮助表示赞赏