首页 > 代码库 > iis 伪静态,支持 .net mvc
iis 伪静态,支持 .net mvc
这周内连着两次碰到 iis 部署.net mvc,不支持伪静态,报404错误。
特记下备忘,因为有时急着找个内容时,发现反而难找。
1、我同事的电脑碰到,本来我们的开发机,装完vs 或 加装 mvc 后,是不会出现该问题的。
我同事是由于,iis出问题后,把iis卸了重装。
2、我朋友公司的小网站,用的XX的云服务器(我没打广告),这个不支持很正常。
下面的解决方案也是参照其他大神的文章,不是原创,纯粹自己备忘。
1、选中站点,切换到功能试图,找到 "IIS(服务器组件)"-> "处理程序映射",双击之后。
右边"添加脚本映射":请求路径 * ,可执行文件选择 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll,名称随意。
32位的,应该是 C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll。下同。
2、"添加通配符脚本映射":请求路径 * ,可执行文件为:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll,名称随意。
3、"添加托管处理程序":请求路径 * ,可执行文件:System.Web.UI.PageHandlerFactory,名称随意。
4、选中站点,切换到功能试图,找到 "IIS(服务器组件)"->"模块",双击之后。
右边"添加托管模块",名称随意,类型URLRewriter.ModuleRewriter,并且把"仅针对向asp.net 应用程序或托管处理程序发出请求调用" 选中。
做完这些,我同事的iis可以访问mvc页面了
但今天朋友的服务器,还报 在其模块列表中有一个错误模块“ManagedPipelineHandler”
1、开始->所有程序->附件->命令提示符, 右键,以管理员运行,依次执行
2、cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
3、aspnet_regiis.exe -i
搞定
iis 伪静态,支持 .net mvc