Solgan
5 سال پیش توسط Solgan مطرح شد
6 پاسخ

سینک نبودن پوشه storage در هاست واقعی

سلام دوستان
من سایتم روی هاست بارگزاری کردم
قبلش چون از دیسک storage استفاده کرده بودم دستور php artisan storage:link رو زدم و بعد فایل هارو روی هاست قرار دادم و پوشه پابلیک به public_html محتویاتش قرار دادم.
الان مشکل اینجاست که موقع آپلود تصاویر، فایل بدرستی درون Storage روت قرار میگیره اما *درون پوشه public_html و پوشه Storage لینک یا سینک نیست و فایل های آپلود شده درونش قرار نمیگیره و به مشکل خوردم.
کسی میدونه باید چی کار کرد؟؟؟؟؟


ثبت پرسش جدید
محمدحسن بختیاری فر
@313ava 5 سال پیش آپدیت شد
0

@solgan
بنظرم وقتی لینک Symbolic رو به هاست جابه جا می کنید اتصالش بهم میخوره
هر چند شاید دیر شده باشه ولی من با روش زیر کارم راه افتاد.
اگر هاست بهتون اجازه استفاده از دستور symlink نمیده (که اکثرا به خاطر مسائل امنیتی نمیدن) از طریق تغییر در فایل config/filesystems.php به صورت زیر مستقیم دیسک public رو به یک پوشه داخل publichtml وصل کنید:

'public' => [
            'driver' => 'local',
            'root' => '/home/USERNAME/domains/DOMAIN.COM/public_html/storage',
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
2

در حین آپلود مسیر و نام فایل رو var_dump بگیرید. مشخص میشه کجا داره ذخیره میشه.


Solgan
تخصص : برنامه نویس سمت سرور(php-larav...
@solgan 5 سال پیش مطرح شد
0

@ali.bayat
داخل خود پوشه storage در روت اصلی آپلود میشه اما داخل فایل public درون public_htlm همزمان قرار نمیگیره و به همین دلیل تصویر نشان داده نمیشه
در صورتیکه من قبل از آپلود روی هاست اصلی دستور php artisan storage::link رو زده بودم.


محمدحسن بختیاری فر
@313ava 5 سال پیش آپدیت شد
0

@solgan
بنظرم وقتی لینک Symbolic رو به هاست جابه جا می کنید اتصالش بهم میخوره
هر چند شاید دیر شده باشه ولی من با روش زیر کارم راه افتاد.
اگر هاست بهتون اجازه استفاده از دستور symlink نمیده (که اکثرا به خاطر مسائل امنیتی نمیدن) از طریق تغییر در فایل config/filesystems.php به صورت زیر مستقیم دیسک public رو به یک پوشه داخل publichtml وصل کنید:

'public' => [
            'driver' => 'local',
            'root' => '/home/USERNAME/domains/DOMAIN.COM/public_html/storage',
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

Solgan
تخصص : برنامه نویس سمت سرور(php-larav...
@solgan 5 سال پیش مطرح شد
0

@313ava
سلام خیلی ممنونم بله دقیقا همین چیزی که فرمودید بود.
فقط موقع unlink کردن فایل جهت حذف خود فایل از روی هاست به ارور No such file or directory برخورد کردم. میتونید بنده رو راهنمایی کنید؟

public function destroy($id)
    {
        $photo = Photos::findOrFail($id);
        //$storage_path = '/home/SUNTECHS/public_html/storage/photos';
        unlink(public_path() . $photo->path);
        $photo->delete();

        Session::flash('delete_media', 'فایل با موفقیت حذف شد');
        return redirect('/administrator/media');
    }

محمدحسن بختیاری فر
@313ava 5 سال پیش مطرح شد
1

@solgan
از دستورات مربوط به storage جهت حذف استفاده کنید. اینجا رو ببینید.


asani
تخصص : کارشناس فنی
@ali.asani 4 سال پیش مطرح شد
1

@313ava
سلام - خدا خیرت بده مشکل منم حل شد


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

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