IIS配置:自定義錯誤頁面&不允許訪問目錄 訪問不存在目錄、訪問目錄、訪問不存在頁面自動跳轉


IIS配置:自定義錯誤頁面&不允許訪問目錄 訪問不存在目錄、訪問目錄、訪問不存在頁面自動跳轉

原創:鄧有權

轉載請注明

Demo:網站結構如下圖:

Help.aspx為自定義錯誤頁面,index.aspx為默認頁面。

 

參考了很多資料,都不能達到目的。

只有訪問不存在的頁面,如訪問./index1.aspx,可以跳轉到自定義錯誤頁面。

訪問目錄的話,不管是不是存在的,都不會跳轉。

請參考我的Web.config配置,詳細如下(用途見注釋)

 

<?xmlversion="1.0"?>

原創:鄧有權轉載請注明

<!--

  有關如何配置 ASP.NET 應用程序的詳細信息,請訪問

  http://go.microsoft.com/fwlink/?LinkId=169433

  -->

原創:鄧有權轉載請注明

<configuration>

  <system.web>

<compilationdebug="false"targetFramework="4.0" />

<!--

      說明:mode打開,defaultRedirect配置好

      一般情況下,只配置這個按道理應該所有錯誤都會跳到自定義的錯誤頁面

      但是,有時候可能訪問目錄或不存在的目錄,不會跳轉到自己錯誤頁面

    -->

    <customErrorsmode="On"defaultRedirect="/CustomErrorPages/error/help.aspx"></customErrors>

  </system.web>

  <system.webServer>

<!--

      說明:禁止訪問目錄

      網上解決目錄訪問的問題,大多都是把頁面提示的解決方法貼了上去,即enable設為true

      那樣,是不報錯,但是會顯示目錄,不會跳轉到自定義的錯誤頁面

    -->

<directoryBrowseenabled="false"/>

原創:鄧有權轉載請注明

<!--

      說明:設置默認文檔

      網上解決目錄訪問的問題,也提到了這個,但是正確設置也不會跳轉到自定義的錯誤頁面

    -->

    <defaultDocument>

      <files>

        <!--

         說明:清楚所有,配置唯一默認頁面

         -->

        <clear/>

        <addvalue="/index.aspx"/>

      </files>

    </defaultDocument>

<!--

      說明:errorMode設置為自定義

      網上解決目錄訪問的問題,不存在的目錄或存在的目錄,訪問的話,自動跳轉到自定義的錯誤頁面

      有時或許並不需要這么麻煩的配置,僅供參考

    -->

    <httpErrorserrorMode="Custom">

      <!--

         說明:根據需要移除指定的HTTP響應代碼,設置為自定義的錯誤頁面

      -->

      <removestatusCode="403"/>

      <removestatusCode="404"/>

      <errorstatusCode="403"path="/CustomErrorPages/error/help.aspx"responseMode ="Redirect"/>

      <errorstatusCode="404"path="/CustomErrorPages/error/help.aspx"responseMode ="Redirect"/>

    </httpErrors>

  </system.webServer>

</configuration>

原創:鄧有權轉載請注明

 

Refer

http://social.msdn.microsoft.com/Forums/zh-CN/295/thread/dc09b3bb-fcbf-4444-907d-0e1eec6e911e

http://msdn.microsoft.com/en-us/library/system.web.configuration.customerrorssection.redirectmode.aspx

原創:鄧有權轉載請注明

 demo代碼不知道怎么上傳,如有需要可以聯系 youquan.deng@gmail.com

 

原創:鄧有權轉載請注明

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM