ASP.NET 核心 MVC 反应应用程序:System.InvalidOperationException:SPA 默认页面中间件无法返回默认页面'/index.html'



UI PROJECT ENVIRONMENT: ASP。CORE MVC

UI项目类型: ASP。NET CORE + REACT APPLICATION

错误名称/论坛标题:ASP。asp.net CORE MVC REACT项目:系统。InvalidOperationException: SPA默认页面中间件未能返回默认页面'/index.html',因为没有找到它,并且没有其他中间件正在处理请求

错误细节:我有一个用ASP创建的React项目。. NET CORE MVC模板。这个React UI项目从一个单独的ASP获取数据。基于asp.net CORE MVC的WEB API项目,并将客户数据投射到屏幕上。身份验证、授权和数据检索操作通过API提供。在连接到用户UI页面时,将从相关API检查LDAP授权。如果LDAP授权可用,则打开UI页面。如果用户没有LDAP授权,则界面显示"You Are not Authorized"。这些基于react的Web UI和Web API页面运行在Windows服务器的IIS上。此外,UI和API都安装在名为S1、S2和S3的三台服务器上,并在Load Balancer上工作。90%的用户可以直接访问相关的UI。有些可以从S1登录,有些可以从S2登录,有些可以从S3服务器通过负载平衡器管理登录。但是,有些用户在打开相关UI页面时会遇到以下错误。我们在Dynatrace上检测到这个错误。

错误:REACT SPA默认页面中间件无法返回默认页面'/index.html',因为没有找到它,并且没有其他中间件处理该请求。您的应用程序在生产模式下运行,因此请确保它已经发布,或者您已经手动构建了SPA。或者,您可能希望切换到开发环境。

我们无法弄清楚为什么有些用户会得到这个错误,即使大多数用户访问相同的页面。你认为访问问题的原因是什么?

这些基于react的Web UI和Web API页面运行在Windows服务器的IIS上。此外,UI和API都安装在名为S1、S2和S3的三台服务器上,并在Load Balancer上工作。90%的用户可以直接访问相关的UI。有些可以从S1登录,有些可以从S2登录,有些可以从S3服务器通过负载平衡器管理登录。但是,有些用户在打开相关UI页面时会遇到以下错误:

我希望我的React UI页面为有错误的用户打开。

我想我已经知道为什么了。

您的三个节点服务器环境,ASPNETCORE_ENVIRONMENT的值可能是Development和某些Production,因此开发节点服务器正常运行。

如何检查?

您可以检查您的ApplicationHost。配置文件,或者查看这个博客

<<p>解决方案/strong>
  1. 确保你的节点服务器是Production.

  2. 使用PublishRunWebpack将react项目部署到wwwroot

相关内容

  • 没有找到相关文章

最新更新