、私は次のようStartup.csでOWINを使用して終了:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Owin;
using Microsoft.Owin.FileSystems;
using Microsoft.Owin.StaticFiles;
using System.IO;
namespace SealingServer
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.MapWhen(ctx => ctx.Request.Headers.Get("Host").Equals("subdomain1.site.com"), app2 =>
{
var firstClientRoot = Path.Combine("./firstClient/");
var firstClientFileSystem = new PhysicalFileSystem(firstClientRoot);
var fileServerOptions = new FileServerOptions();
fileServerOptions.EnableDefaultFiles = true;
fileServerOptions.FileSystem = firstClientFileSystem;
fileServerOptions.DefaultFilesOptions.DefaultFileNames = new[] {"home.html"};
fileServerOptions.StaticFileOptions.OnPrepareResponse = staticFileResponseContext =>
{
staticFileResponseContext.OwinContext.Response.Headers.Add("Cache-Control", new[] { "public", "max-age=0" });
};
app2.UseFileServer(fileServerOptions);
});
app.MapWhen(ctx => ctx.Request.Headers.Get("Host").Equals("subdomain2.site.com"), app2 =>
{
var secondClientRoot = Path.Combine("./secondClient/");
var secondClientFileSystem = new PhysicalFileSystem(secondClientRoot);
var fileServerOptions = new FileServerOptions();
fileServerOptions.EnableDefaultFiles = true;
fileServerOptions.FileSystem = secondClientFileSystem;
fileServerOptions.DefaultFilesOptions.DefaultFileNames = new[] { "home.html" };
fileServerOptions.StaticFileOptions.OnPrepareResponse = staticFileResponseContext =>
{
staticFileResponseContext.OwinContext.Response.Headers.Add("Cache-Control", new[] { "public", "max-age=0" });
};
app2.UseFileServer(fileServerOptions);
});
}
}
}
あなたはASP.NETコア(ケストレルを使用して)とWebをミックスしたい、なぜ私が理解していないことです同じプロジェクト内のAPI(System.Web)。彼らのアーキテクチャはまったく異なります(私は互換性がないと思います)。 Owin [ネイティブルーティング機能](https://stackoverflow.com/a/25405782/3670737)を使用し、[app.UseStaticFiles()](https://msdn.microsoft.com)のような形式の静的ファイルを提供することを検討することもできます/en-us/library/owin.staticfileextensions.usestaticfiles(v=vs.113).aspx)。 –
私はOWINを使用して終了し、私のニーズにうまくいきました。前のコメントのリンクの情報を組み合わせることで、ソリューションの実装に直接つながりました。ありがとう@FedericoDipuma! –