在实时服务器上上传构建时面临问题

Facing issue to upload build on live server

我已经上传了我的 angular 生产版本。我遗漏了一些东西,但我不知道那是什么。

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。在管理文件夹中听到 angular 构建是这样的。

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

app.js

为了允许所有管理面板页面,我在我的 app.js 文件中添加了这段代码。

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

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

当您使用app.use('/', express.static('./admin'))时,静态文件将在根目录中提供,例如http://0.0.0.0:3000/main.js, but because of the base tag, it will try to find the resource at http://0.0.0.0:3000/admin/main.js

要修复它,请更改静态文件的路径,如下所示:

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

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

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