دسته بندی ها
14:27 1401/04/10

ذخیره فایلهای بزرگ در Asp Core - خطای Request Entity Too Large

مشخصات سوال کننده :
کاربر : Daneshfar     امتیاز کاربر : 3     رتبه کاربر : 136
دسته بندی : Asp.net Core

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 2503
1 نظر
saedbfd : درود بر شما اگر برای این کار کدی نوشتید و یا خطایی دارید قرار بدید. ضمنا بفرمایید فایل رو قرار هست کجا ذخیره کنید ؟

امتیاز کاربر : 1664   رتبه کاربر : 1   تاریخ ثبت : 08:23 1401/04/10
هوش مصنوعی

پاسخ هوش مصنوعی

برای ذخیره فایل های بزرگ در ASP.NET Core و جلوگیری از خطای "Request Entity Too Large"، شما نیاز دارید تا چند تنظیمات را انجام دهید. این مشکل اغلب از محدودیت هایی ناشی می شود که در کد یا تنظیمات سرور وجود دارد.

در ASP.NET Core، می توانید از موارد زیر استفاده کنید:

public void ConfigureServices(IServiceCollection services)
{
    services.Configure(options =>
    {
        options.MultipartBodyLengthLimit = 20971520000; // 20 گیگابایت
    });
}

علاوه بر این، شما باید مطمین شوید که در فایل startup.cs تنظیمات مربوط به Kestrel را نیز اعمال کرده اید:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    app.UseKestrel(options =>
    {
        options.Limits.MaxRequestBodySize = 20971520000; // 20 گیگابایت
    });
}

همچنین، اگر از IIS استفاده می کنید، باید تنظیمات زیر را در فایل web.config خود اضافه کنید:

<system.webServer>
    <security>
        <requestFiltering>
            <requestLimits maxAllowedContentLength="21474836480" /> 
        </requestFiltering>
    </security>
</system.webServer>

پس از انجام این تنظیمات، سرور شما باید قادر به مدیریت فایل های بزرگتر از 2 گیگابایت باشد.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : saedbfd 16:04 1401/04/11

خطای Request Entity Too Large

برای آپلود فایل در Asp.net Core میتونید لینک زیر رو مطالعه کنید.

آپلود فایل در Asp.net Core چگونه است؟

همچنین در فایل web.config مقدار maxAllowedContentLength رو برابر با یک مقدار بزرگ قرار بدید.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="2147483648" />
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

اگر هم حجم فایل شما خیلی زیاد هست باید از طری FTP آپلود فایلهاتون رو انجام بدید و نمیشه به روش عادی این کار رو انجام داد.

ویرایش شده در شنبه 11 تیر 1401 ساعت 16:04:32
به این پاسخ امتیاز بدهید    0
امتیاز: 1664 رتبه: 1
پاسخ دهنده : Daneshfar 14:10 1401/04/13

خیلی ممنونم از پاسخ کامل و خوبتون فقط برای FTP هم نمونه کدی دارید ؟

به این پاسخ امتیاز بدهید    0
امتیاز: 3 رتبه: 136
1 نظر
saedbfd : توی گوگل عبارت "How to upload files to an FTP server using .Net Core" رو سرچ کنید یک فیلم آموزشی در یوتیوب برای آپلود فایل توسط FTP در دات نت کور موجود هست.

امتیاز کاربر : 1664   رتبه کاربر : 1   تاریخ ثبت : 02:14 1401/04/13
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود