我的路由规则
routes.MapRoute(
"beauty_blog", // Route name
"beautyblog/{webtoken}.html", // URL with parameters
new { controller = "beauty_blog", action = "Index", BaseToken = @"\d+" }
, new string[] { "JaredDemo.Areas.Cosmetology.Controllers" }
).DataTokens.Add("Area", "Cosmetology");
在本地可以显示,如localhost:8080:beautyblog/1001.html
部署到服务器上就是显示不了,是什么情况,求高手帮忙,万分感谢。
这里提示下关于IIS处理静态请求,如果请求的资源为静态资源(html 图片等)则IIS会直接返回被请求的静态资源,如果为动态资源(aspx ) IIS处理不了这种请求会把请求转交给asp.net_iisapi.dll 处理然后走相应的页面生命周期部分。所以如果是静态资源应该不是由程序来处理的。
首先很感谢您的回答,在园子里也搜索了一些案例,包括设置路由的,但是都没有达到效果,我在每个静态资源下面都放了一个web.config内容就是阻止通过asp.net_iisapi.dll处理,因为我用的是Rozor视图,也尝试在跳转的页面放配置文件,但是没有用呢,就是不现实,请问您有遇到这样的情况吗,现在我只能用xx?id的方式来显示,如果您了解希望帮助我一下。万分感谢!
MVC配置问题,你放到服务器上之后,要配置IIS的,
1.安装IIS 2.安装.netframework 3.安装MVC 4.修改网站配置文件
折腾了半天,提示里面的解决方法是:
按照该方法改后 ,发现网页运行界面进去的变成了目录结构,后来发现改配置文件web.config配置文件的配置节后,网站就可以正常使用了,记录下哦。
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
非常感谢你的回答,我按照你的方式设置了,还是没有实现,请问还有什么方法吗?
给IIS应用程序添加通配符映射
给IIS应用程序添加通配符映射 这个有可能是这个问题
还有可能是你的虚拟目录中有.比如你的虚拟目录是server.site,那么的url应该就是www.abc.com/server.site/home如果是这样也访问不到的