2015-07-21 59 views
0

在我的web.Release.config我有一个自定义的错误标记,我会认为会将用户重定向到错误页面,就像它在本地主机上一样。但是,它给了我黄色的死亡屏幕。任何人,知道为什么?自定义的错误页面没有出现在服务器上

RELASE web配置:

<customErrors defaultRedirect="Error.cshtml" 
     xdt:Transform="Replace" mode="On"> 
     </customErrors> 

标准的web配置:

<customErrors mode="On" defaultRedirect="Error.cshtml" /> 

我知道这是不是一个很大的代码,但我不知道到哪里寻找这个,所以如果你需要更多,只是留下评论,我会添加它。

+0

好从它的外观你的发布web.config和开发web.config看起来1:1。是否有任何机会在Error.cshtml上发生异常? –

+0

不,每当我尝试输入一个不存在的链接,它只是给我YSOD –

+1

Error.cshtml是在应用程序的根? –

回答

1

从web.config中删除defaultRedirect =“Error.cshtml”,无论如何您无法从浏览器查看cshtml。只是开/关/只读,它会工作。它的部分视图在呈现时嵌入在布局页面中。

还要确保在发布时选取正确的配置文件。

0

请尝试以下之一:

1把完整视图路径:

<system.web> 
    <customErrors mode="On" defaultRedirect="~/Views/Shared/Error.cshtml"> 
    </customErrors> 
</system.web> 

2-重定向到控制器,控制器将返回一个观点:

<system.web> 
    <customErrors mode="On" defaultRedirect="/Home/Error" /> 
</system.web> 


public class HomeController: Controller 
{ 
    public ActionResult Error() 
    { 
     return View(); 
    } 
}