dev/asp.net, c#

[asp.net core] 대용량 파일 업로드 사이즈 설정 (with IIS web.config 설정하기)

코딩for 2022. 12. 7. 12:01
반응형

 

 

 

asp.net core, iis 에서 기본적으로 업로드 사이즈를 제한하면 사용하는 버전에 따라서 크기가 제한될수 있습니다.

 

 

Asp.Net Core  설정

// Startup.cs  
// ConfigureServices()에 추가

services.Configure<FormOptions>(options =>
{
	// 500 MB 로 세팅
	options.MultipartBodyLengthLimit = 524288000;
});

 

IIS(Express) 에서 설정

IIS(Express) 환경에서는 web.config 에 requestFiltering 설정을 추가 

web.config 파일이 존재하지 않는다면 새롭게 생성한다.

<!-- Web.config -->
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <security>
      <requestFiltering>
       <!-- 500MB  -->
        <requestLimits maxAllowedContentLength="524288000"/>
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

 

Kestrel 설정

Program.cs 에 추가 UseKestrel

// kestrel 에서 limit size 500MB 설정

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureWebHostDefaults(webBuilder =>
        {
            webBuilder
            .UseStartup<Startup>()
            .UseKestrel(options =>
            {
                options.Limits.MaxRequestBodySize = 524288000;
            });
        });

 


 

설정된 용량 보다 큰 파일을 업로드한 경우 오류

 

 

대용량 파일 업로드 성공

반응형