伪静态我认为是不能实现的。MVC6 也没看到有这个心特性,所以我觉得会使用mvc4的规则,就是凡遇到 js css html,都不走router,而是直接访问资源。
http://stackoverflow.com/questions/16948933/why-css-and-js-files-bypass-asp-net-mvc-routes
当然也可以在配置中打开 runAllManagedModulesForAllRequests, 让所有的request都走路由,但是会影响运行速度的。
http://www.britishdeveloper.co.uk/2010/06/dont-use-modules-runallmanagedmodulesfo.html 这文章有提及。
如果真的要做伪静态,我觉得应该会从hander出发去考虑,也许能够实现,
你说的二级域名,应该就是在http-server中加多一个虚拟目录就可以。如果有反向代理服务器,就是加多一个转发——遇到
大概就是遇到url为 www.domain.com/subdomain 就转到 192.168.0.33:8083 之类的规则。
谢谢
1.伪静态,我这么写,好像可以正常解析
routes.MapRoute(
"articleroute",
"article/detail/{id}/ddd.html",
defaults: new { controller = "Article", action = "Detail" });
2.二级域名,这样写也正常,但问题是 about这个地方是变量,不知道怎么写?
routes.MapRoute(
name: "Aboutroute",
template: "About",
defaults: new { controller = "Blog", action = "List" });
好像要自己获得url后,自己来解析才能做到。问题是不会写
@freewzx2005: 我也要试试,之前弄过js和css是不行的。html可能性。谢谢楽