خطای PostTooLargeException در لاراول

3 سال پیش توسط احسان مطرح شد
آفلاین
user-avatar
احسان ( 3085 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

سلام
برای آپلود یک فیلم با حجم ۳۲ مگ خطای Illuminate \ Http \ Exceptions \ PostTooLargeException برخوردم
با xampp کار میکنم و مقادیر memory_limit , post_max_size , upload_max_filesize رو هم تغییر دادم و همه رو برابر ۱۰۰۰۰M گذاشتم.

باز هم همین خطا رو دارم .

از لاراول ۵.۶ استفاده میکنم

ممنون میشم راهنمایی کنید .

بهترین پاسخ
آفلاین
user-avatar
احسان
3 سال پیش

تشکر از دوستانی که راهنمایی کردند

الحمدالله مشکل حل شد

باید یک middleware با نام ValidatePostSize به پروژه اضافه کنیم که همراه با عبارت پایین در فایل Kernel.php باعث میشه لاراول اجازه آپلود فاایل های با حجم بالا رو بده

عبارت مورد نظر : IlluminateFoundationHttpMiddlewareValidatePostSize::class,

آفلاین
user-avatar
عرشیا سعیدی ( 23871 تجربه )
3 سال پیش
تخصص : php ، لاراول ، وردپرس

لینک کوتاه اشتراک گذاری

0

به این لینک مراجعه کن شاید نوع ست کردن مقادیرت باشه که تاثیر میذاره

https://laracasts.com/discuss/channels/servers/interventionimage-memory-limit?page=1

آفلاین
user-avatar
احسان ( 3085 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

ممنون

این لینک رو دیده بودم
برای تصاویر از این پکیج استفاده کردم و مشکلی نیست
فایل من فیلم هست و عکس نیست که از Intervention استفاده کنم
الان مشکل سر آپلود بالای 8 مگ است با وجود تغییر مقادیر memory_limit , post_max_size , upload_max_filesize

آفلاین
user-avatar
ناصر رمضانپور ( 1559 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

بعد از انجام تفییرات ی بار php info بگیر ببین تغییرات در وب سرور اعمال شده یا نه؟

آفلاین
user-avatar
احسان ( 3085 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

بله اعمال شده

تو یک فرم با php خام عملیات آپلود رو انجام دادم
مقادیر memory_limit , post_max_size , upload_max_filesize رو کم کردم و به فایل آپلود شده خطا داد و با مقادیر زیاد تر که الان روی 2048M تنظیم شده خطا نداد و عملیات گرفتن فایل آپلود شده به درستی انجام شد .

پس مشکل از تنظیمات xampp نیست . هر چی هست مربوط به لاراول هست .

بعضی ها گفته بودند کلاس PostTooLargeException اضافه کن . این کار رو هم کردم تفاوتی نداشت

آفلاین
user-avatar
احسان ( 3085 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

تشکر از دوستانی که راهنمایی کردند

الحمدالله مشکل حل شد

باید یک middleware با نام ValidatePostSize به پروژه اضافه کنیم که همراه با عبارت پایین در فایل Kernel.php باعث میشه لاراول اجازه آپلود فاایل های با حجم بالا رو بده

عبارت مورد نظر : IlluminateFoundationHttpMiddlewareValidatePostSize::class,

آفلاین
user-avatar
سیدعلی موسوی ( 142798 تجربه )
3 سال پیش
تخصص : سی شارپ و پی اچ پی

لینک کوتاه اشتراک گذاری

0

سلام

عجب!
من بدون این روش در لاراول 5.6 و قبل تر دارو استفاده میکنم و فقط با تغییر در فایل PHP کارم راه افتاده
این میدلور رو کی بهتون پیشنهاد داده؟!

آفلاین
user-avatar
احسان ( 3085 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

جستجو کردم تو اینترنت دیدم بعضی ها درباره تغییرات در یک کلاسی صحبت مبکنند به اسم ValidatePostSize

بعد تو یکی از سایت ها آدرس این کلاس رو داده بود که در middleware قرار داشت , ظاهرا جزء middleeare های تعریف شده در لاراول هست چون در فایل Kernel.php قبلا اضافه شده اما کلاسش در فولدر middleware نبود که باید اضافه بشه .

اینطور با هر حجمی میتونید فایل رو آپلود کنید و إلا بیشتر از 8 مگ رو خطا PostTooLargeException میده و خطا هم مربوط middleware ای با نام ValidatePostSize است . حتی با تغییر در فایل php.ini

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.