找不到页面时重定向到主页/索引

时间:2009-12-30 23:44:21

标签: asp.net-mvc routing

已经有人问here但我希望有更好的“路由”方式来做到这一点。

当用户在我的网站中输入错误的网址时,我基本上想要重定向到主页/索引页面。

修改

我正在使用IIS。

2 个答案:

答案 0 :(得分:2)

恕我直言,最好的方法是使用Home / Index作为404错误处理页面。因此,每次返回404时,用户都将被重定向到主页。

<?xml version="1.0"?>
<configuration>
    <system.web>
        <!-- For IIS6 and Cassini -->
        <customErrors mode="RemoteOnly">
            <error redirect="Home/Index" statusCode="404"/>
        </customErrors>
    </system.web>

    <system.webServer>
        <!-- For IIS7 -->
        <httpErrors>
            <error statusCode="404" path="Home/Index" /> 
        </httpErrors> 
    </system.webServer>
</configuration>

或使用IIS7重写模块。

答案 1 :(得分:1)

或者您可以实现自己的 Route 具体类,接受每个输入并使用值重新填充路由字典:action =“Index”,controller =“Home”并从中删除其他所有内容。

您应该将该实现实例添加到路由集合中。