상세 컨텐츠

본문 제목

[.NET Core] ASP.NET Core 오류페이지 설정

Programing/.NET Core

by 호짱 HoZang 2020. 10. 20. 15:50

본문

[.NET Core] ASP.NET Core 오류페이지 설정

 

1. Startup.cs 수정

namespace Homepage
{
    public class Startup
    {
        .
        .
        .
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseDatabaseErrorPage();
            }
            else
            {
                // Production 환경에서 오류 발생 시 오류내용을 감추기 위해 404페이지로 대체한다.
                app.UseExceptionHandler("/Errors/_404");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }
            
            app.UseHttpsRedirection();
            
            // 기본 Http status code 페이지
            // app.UseStatusCodePages();
            app.UseStatusCodePagesWithReExecute("/Errors/_{0}");
            .
            .
            .
            
        }
        .
        .
        .
    }
}

 

2. Razor Page 생성

경로는 Pages/Errors/_404.cshtml

Solution Explorer에서 Pages/Errors 폴더를 생성하고, 폴더에서 우클릭 Add -> Razor page...

@page
@model Razor.Pages.Errors._404Model
@{
}
<h1>Page not found : 404</h1>

Razor 페이지 경로는 원하는 위치에 생성해도 되지만

1. 번 순서의 UseStatusCodePagesWithReExecute 메서드에서 요청 경로는 맞춰주어야 한다.

 

[참고 글]

www.learnrazorpages.com/configuration/custom-errors

 

Configuring a custom error page in a Razor Pages web site | Learn Razor Pages

Configuring a custom error page When a visitor tries to request a page on your site that doesn't exist, or an unhandled exception occurs while executing server-side code the web server returns an HTTP status code to the browser indicating that an error occ

www.learnrazorpages.com

 

관련글 더보기

댓글 영역