在 Azure 上发布 web api net core 时静态文件中间件出现问题
Problem with static file middleware when publish web api net core on Azure
我已将 Web api .net 核心发布到 Azure。一切正常,直到我使用静态文件中间件并将我网站的图像存储在我的内容文件夹中。当我在本地 运行 网站时没问题,我可以使用 http://localhost/Content/Images/abc.jpg 从 Content 文件夹中获取图像,但是当我尝试再次将我的网站发布到 Azure 时,我遇到了内部服务器错误。我该如何修复该错误?
这是我在启动文件中的Configure方法
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseCors(builder =>
builder.WithOrigins(Configuration["ApplicationSettings:Client_URL"].ToString())
.AllowAnyHeader()
.AllowAnyMethod());
app.UseAuthentication();
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "Content")),
RequestPath = "/Content"
});
app.UseMvc();
}
您是否尝试过以下选项,如果没有,试试这个看看是否有帮助。
我假设这可能是设置的文件夹权限的问题。您可以尝试在内容目录中创建一个新文件夹并在其中添加一个文件夹吗?然后尝试通过添加组或用户名更改该特定文件夹权限设置并允许完全控制,然后尝试将特定文件夹专门发布到 Azure,它通常应该可以工作。
我已将 Web api .net 核心发布到 Azure。一切正常,直到我使用静态文件中间件并将我网站的图像存储在我的内容文件夹中。当我在本地 运行 网站时没问题,我可以使用 http://localhost/Content/Images/abc.jpg 从 Content 文件夹中获取图像,但是当我尝试再次将我的网站发布到 Azure 时,我遇到了内部服务器错误。我该如何修复该错误?
这是我在启动文件中的Configure方法
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseCors(builder =>
builder.WithOrigins(Configuration["ApplicationSettings:Client_URL"].ToString())
.AllowAnyHeader()
.AllowAnyMethod());
app.UseAuthentication();
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "Content")),
RequestPath = "/Content"
});
app.UseMvc();
}
您是否尝试过以下选项,如果没有,试试这个看看是否有帮助。
我假设这可能是设置的文件夹权限的问题。您可以尝试在内容目录中创建一个新文件夹并在其中添加一个文件夹吗?然后尝试通过添加组或用户名更改该特定文件夹权限设置并允许完全控制,然后尝试将特定文件夹专门发布到 Azure,它通常应该可以工作。