راکت
حل شده

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

6 پاسخ

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

Solgan
Solgan
@solgan
ثبت پرسش جدید

پاسخ‌ها

6
محمدحسن بختیاری فر
محمدحسن بختیاری فر
@313ava
بهترین پاسخ

@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

تخصص: توسعه دهنده ارشد وب

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

Solgan
Solgan
@solgan

تخصص: برنامه نویس سمت سرور(php-laravel)

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

شاید پاسخ شما همین‌جا باشد

Solgan
Solgan
@solgan

تخصص: برنامه نویس سمت سرور(php-laravel)

@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

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

asani
asani
@ali.asani

تخصص: کارشناس فنی

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

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

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