我正在尝试在MVC5应用程序中实现以下功能。
在MVC站点根目录中,是静态文件所在的子站点“站点”。例如,“acme”可能有静态资产(HTML,JS,CSS),它位于“/ Sites / acme /”
理想情况下,如果你点击“acme.localhost”(在我的开发环境中),它将提供/ Sites / acme位置的内容,默认为index.html。所以基本上acme的子域上的所有内容都将被重写为相对于/ Sites / acme。我将DNS的这一面全部整理出来。
我知道IIS URL Rewrite模块是为了实现这个场景而设计的,但是用户可以动态地在我的MVC应用程序中定义它们的子域(这些子域当前存储在数据库中)。我不知道它们会是什么,据我所知,编辑web.config中的重写如果我这样做会导致父MVC应用程序池回收。这让我觉得它必须是某种HttpHandler,它会查看系统中注册的可能子域的缓存表并相应地重写。
有什么想法或建议吗?我在考虑一个HTTP模块或自定义路由处理程序,但不知道如何实现这一点,并且非常谨慎地以有效的方式执行此操作。
由于