在实时服务器上上传构建时遇到的问题

时间:2019-03-29 17:36:13

标签: node.js angular live production

我已经实时上传了我的角度制作图。我错过了一些东西,但我不知道那是什么。

build/index.html中,我已在基本URL中设置了此名称。

<base href="http://0.0.0.0:3000/admin/">  // Instead of 0.0.0.0 I have set my EC2 instance's elastic ip address

我设置了/var/www/html/myapp/admin。听到在管理文件夹的角度建设是。

我的节点服务器在/var/www/html/app.js

app.js

要允许所有管理面板页面,我已将此代码添加到我的app.js文件中。

app.use('/', express.static('./admin'))

app.get('*', (req, res) => {
   res.sendfile('./admin/index.html')
})

Server image

Admin panel

1 个答案:

答案 0 :(得分:1)

使用app.use('/', express.static('./admin'))时,静态文件将在根目录中提供,例如http://0.0.0.0:3000/main.js,但是由于带有base标签,它将尝试查找资源。在http://0.0.0.0:3000/admin/main.js

要解决此问题,请更改静态文件的路径,如下所示:

app.use('/admin', express.static('./admin'));

此外,我不建议手动编辑base标签,您可以在build命令中设置基本url,如下所示:

ng build --prod --base-href="http://0.0.0.0:3000/admin/"