c# - 在 IIS 上使用 reactjs 应用程序部署 ASP.NET Core 后的空白页
问题描述
我将应用程序部署到我的 Windows 10 机器上的 IIS。但是当我在浏览器中打开应用程序时,页面保持空白。如果我在调试器中运行应用程序,一切正常。
该代码基本上是 VS 模板中未更改的代码。我刚刚添加了一些控制器和模型。.NET Core 托管包安装在计算机上。
Microsoft 文档在这种情况下没有帮助。
浏览器开发者工具控制台返回以下内容:
我的 web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*"
modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath=".\ApplicationXYZ.exe"
stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout"
hostingModel="inprocess" />
</system.webServer>
</location>
</configuration>
我检查了 Startup.cs。但它对我来说看起来不错:
public class Startup
{
public Startup (IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices (IServiceCollection services)
{
services.AddControllersWithViews ();
// In production, the React files will be served from this directory
services.AddSpaStaticFiles (configuration =>
{
configuration.RootPath = "ClientApp/build";
});
services.AddHttpContextAccessor ();
services.Configure<DbConfig> (Configuration.GetSection ("DB"));
services.AddTransient<IDbContext, DbContext> ();
}
public void Configure (IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment ())
{
app.UseDeveloperExceptionPage ();
}
else
{
app.UseExceptionHandler ("/Error");
app.UseHsts ();
}
app.UseHttpsRedirection ();
app.UseStaticFiles ();
app.UseSpaStaticFiles ();
app.UseRouting ();
app.UseEndpoints (endpoints =>
{
endpoints.MapControllerRoute (
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
// endpoints.MapFallbackToController ("Index", "Home");
});
app.UseSpa (spa =>
{
spa.Options.SourcePath = "ClientApp";
if (env.IsDevelopment ())
{
spa.UseReactDevelopmentServer (npmScript: "start");
}
});
}
}
我将非常感谢能引导我走向正确方向的提示。
解决方案
推荐阅读
- javascript - 通过AJAX插入html后在django视图中获取输入值
- angular - 默认设备后退按钮无法与选项卡一起正常工作:IONIC
- amazon-web-services - AWS S3 - 通过预签名 URL 放置文件时出现 400 错误请求
- asp.net - 如何在 ASP.NET CORE 3.1 过滤器中正确记录响应 http 代码?
- java - Anylogic:为每个资源使用单独的 RandomNumberGenerator
- java - 如何使用 TypedArray.getResourceId() 方法返回值?
- android - 如何在 Android 的 Recyclerview 的 onCreateViewHolder 中更改特定 LinearLayout 子项的颜色
- java - 当对象的所有字段都设置为默认值时,为什么实例常量有一个值?
- flutter - 如何使用 Shimmer 在 Flutter App 中添加 X 持续时间的延迟?
- html - SVG G Path Not Displaying