مهدی حسن پور
4 سال پیش توسط مهدی حسن پور مطرح شد
9 پاسخ

ارور هنگام آپلود عکس روی سرور در لاراول

سلام بچه ها
موقع آپلود عکس روی لوکال اروری ندارم ولی وقتی میخوام روی سرور عکس آپلود کنم ارور زیر رو میگیرم.
Intervention\Image\Exception\NotReadableException Image source not readable
لاراول 6 با اینترونشن استفاده میکنم.
ممنون میشم اگه کسی بلده کمک کنه


ثبت پرسش جدید
رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 4 سال پیش مطرح شد
0

درود...
توی تگ form این کد اضافه کنید:

enctype="multipart/form-data"

برای make در کنترلر:

$img = Image::make($request->file('photo')->getRealPath());

مهدی حسن پور
@mehdih761 4 سال پیش مطرح شد
0

اینا رو امتحان کردم. روی لوکال درست کار میکنه. مشکل یه چیز دیگه هست. روی سرور درست کار نمیکنه.


Mohammad
تخصص : Back-End developer
@mhmdkavosi 4 سال پیش آپدیت شد
0

سلام.
عکس رو کجا داری اپلود میکنی.
شاید اون ادرس یا پوشه وجود نداره یا
پوشه ای که عکس و توش آپلود میکنی سطح دسترسی شو 777 بذار.


مهدی حسن پور
@mehdih761 4 سال پیش مطرح شد
0

سلام
عکس رو داخل پوشه storage آپلود میکنم. که درست آپلود میشه. ولی داخل پوشه پابلیک که سیمبل لینک از storage وجود داره چیزی آپلود نمیشه.
واقعیتش این هست که سایت در حالت لوکال درست کار میکنه. و فقط روی هاست اشتراکی مشکلی هست که درست لینک داده نمیشه به پوشه public. فکر میکنم چون توی هاست اسم public_html هست به جای public این مشکل به وجود میاد. و از storage به پوشه public_html لینک داده نمیشه. این وسط باید یه سری تغییرات بدم تا public_html رو لاراول بشناشه.


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 4 سال پیش مطرح شد
0

public لاراول رو به public_html تغییر بدید و در فایل AppServiceProvider کد زیر رو ست کنید

$this->app->bind('path.public', function() {
return base_path().'/public_html';
});

Mohammad
تخصص : Back-End developer
@mhmdkavosi 4 سال پیش مطرح شد
0

یه راه دیگه اینه که شما پوشه public/storage
رو پاک کنی بعد با کد سیمبل لینک(سرچ کنی نمونش هست) بگی که پوشه public/storage لینک بشه به storage.


مهدی حسن پور
@mehdih761 4 سال پیش مطرح شد
1

خیلی ممنون از دوستان ولی کاری که خودم انجام دادم و جواب داد این بود که اول یه دونه دیسک ذخیره سازی ساختم که داخل پوشه public فایل ها رو آپلود میکنه به صورت

'public_uploads' => [
            'driver' => 'local',
            'root'   => public_path() . '/storage',
        ],

و ذخیرشون میکنه بعد هم یه قطعه کد به فایل index.php به صورت زیر اضافه کردم و الان داره کار میکنه.

    $app->bind('path.public', function() {
        return __DIR__;
    });

حسین
تخصص : برنامه نویس لاراول و اندروید
@simhos2017 4 سال پیش مطرح شد
0

منم همچین مشکلی داشتم ولی با کمک کد آقای @juza66 مشکل حل شد .
دمت گرم .👍👍👍


حسین
تخصص : برنامه نویس لاراول و اندروید
@simhos2017 4 سال پیش مطرح شد
0

بچه ها یه سوال ؟!
اگه از کد زیر استفاده کنیم ، ولی پروژه روی لوکال باشه دیگه خطا میده و کار نمیکنه ! چیکار باید کرد ؟ باید پوشه public رو به public_html تغییر بدیم ؟؟؟

$this->app->bind('path.public', function() {
return base_path().'/public_html';
});

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام