2013-08-19 40 views
1

我已使用this文章創建了自定義錯誤頁面。這個自定義錯誤頁面只有在aspx頁面沒有找到時,以及當找不到文件(比如pdf和其他文件)時纔會出現 - 默認google的錯誤頁面出現。如何獲取文件的自定義錯誤頁面?我試着在兩臺不同的機器上實現這個解決方案:在本地機器上,出現兩個.aspx頁面和文件的自定義錯誤頁面,但在服務器上,該解決方案僅適用於.aspx頁面,儘管配置文件相同。我錯過了什麼?也許這臺機器上有不同的IIS配置,或者什麼?提前致謝。未找到文件(.pdf和其他)時,不會出現Sitecore中的自定義404錯誤頁面

+0

在web.config的節點上是否有mode =「RemoteOnly」?這意味着在遠程服務器上(在您的服務器上)會顯示自定義錯誤。嘗試將其設置爲「關」。 –

+0

不,我不具有模式= 「僅限遠程」,我通過 <錯誤的StatusCode = 「404」 重定向= 「/ 404.aspx」/> User

回答

2

我想這會幫助你。

<system.web> 
    <customErrors defaultRedirect="Error.aspx" mode="On"> 
     <error statusCode="500" redirect="Error.aspx"/> 
    </customErrors> 
</system.web> 

U可以添加額外的標籤,並提提供的錯誤代碼,並要重定向的頁面。

+0

不,它不工作。我猜這個問題不在配置文件中,因爲我在兩臺機器上都有相同的配置文件。也許有一些與IIS或Sitecore的東西。 – User

+0

要不然讓頁面加載時httpexception細節和使用switch語句幀烏爾自己的錯誤信息或根據錯誤重定向到烏爾錯誤頁面。 – Sasidharan

1

嘗試在IIS中直接設置你的錯誤頁面。在做這件事之前拍一下你的Web.config的快照,因爲我確信一旦你改變了這個設置,它就會被IIS修改。如果內存爲我服務,您會在system.webServer中看到此更改,而不是system.web。

請注意,如果您使用IIS的混合版本(例如Server 2008和Server 2008 R2),我發現2008 R2的設置與2008不兼容。