23

Kestrel Web サーバーを使用して、デフォルトの URL /で「index.html」を提供できるようにする必要があります。現在、静的ファイルにアクセスできるのは、フル パス、つまり/index.htmlのみです。

繰り返しますが、これはVisualStudioで完全に機能します。コンテキストはKestrelを使用したOSXです

これは私のStartup.cs です

public void ConfigureServices(DI.IServiceCollection services)
 {   
     services.AddMvc();
 }

 public void Configure(IApplicationBuilder app)
 {
     app.UseStaticFiles();
     app.UseMvc();
 }

これまでの解決策は、HomeController 内でリダイレクトを行うことです。しかし、これは明らかに醜いです。静的な html ファイルを提供しようとしていますが、可能であれば、Kestrel から直接提供されるアプリケーションで処理されたくないのです。

4

1 に答える 1

42

DefaultFilesMiddlewareusingを有効にして、への呼び出しのUseDefaultFiles()に配置する必要があります。UseStaticFiles()

app.UseDefaultFiles();
app.UseStaticFiles();

特に指定しない場合、ミドルウェアはDefaultFilesOptionsデフォルトで を使用します。つまり、デフォルトのファイル名のリストが使用されます。

default.htm
default.html
index.htm
index.html

MSDNを参照

于 2015-05-14T08:24:03.173 に答える