为什么Angular+ASP.NET Core SPA不能在网络Ubuntu VM上运行



我正在将ASP.NET 5、Angular 11、SPA部署到Ubuntu 20.04本地VM上的网络位置。我发布的应用程序是linux自带的。Web API和客户端应用程序具有相同的url/端口,它在开发机器上工作。

我在appsettings.json:中有这个

"ApplicationUrl": "http://ubuntu1:5000",
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://192.168.0.120:5000"
},
}
},

我可以看到带有应用程序加载消息的index.html页面,但问题是角度部分没有启动。有什么日志我可以查一下吗当我测试Postman的web api时,web应用程序本身似乎运行良好。

我在.net中有代码:

services.AddSpaStaticFiles(configuration =>
{
configuration.RootPath = "ClientApp/dist";
});
//...
app.UseSpa(spa =>
{

spa.Options.SourcePath = "ClientApp";
if (env.IsDevelopment())
{
spa.UseAngularCliServer(npmScript: "start");                    
}
});

同样在虚拟机上的/etc/systemd/system/modulo.service中,我有:

[Unit]
Description=Modulo ASP .NET Web Application
[Service]
WorkingDirectory=/var/modulo
ExecStart=/var/modulo/Modulo
Restart=always
RestartSec=10
SyslogIdentifier=modulo-app
User=paul (I also tried with www-data)
Environment=ASPNETCORE_ENVIRONMENT=Production
[Install]
WantedBy=multi-user.target

在Ubuntu上重新启动服务时,我没有遇到任何错误。状态为活动(正在运行(。

我似乎还必须使用:

app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "ClientApp", "dist")),
RequestPath = ""
});

最新更新