首页 > 代码库 > 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