کنترل سطح دسترسی به فایل ها در پوشه storage

6 روز پیش
توسط profnami آپدیت شد
محسن ( 6270 تجربه )
6 روز پیش

با سلام.پروژه بنده با لاراول 6 هست..
فایل ها و عکس ها رو به پوشه storage منتقل کردم و لینک هم ایجاد شده و عمل میکنه.
اما مساله ای که هست مربوط به کنترل سطح دسترسی هست.
با تابع asset لینک عکس ایجاد میشه.شبیه به لینک زیر:

http://localhost:8000/storage/images/App/users/1/IMG_20190618_093814_863.jpg

حالا اگه همین آدرس رو سرچ کنم فایل نمایش پیدا میکنه و هیچ کنترلی روش نیست!

راه اصولی برای کنترل لینک های پوشه storage چیه؟

profnami ( 8950 تجربه )
6 روز پیش
تخصص : برنامه نویس

اگر فایلهاتون رو در پوشه storage قرار داده باشید به یک route و controller نیاز خواهید داشت :

Route::get('images/{filename}.jpg', [
    'as' => 'images.show',
    'uses' => 'ImagesController@show',
    'middleware' => 'auth',
]);

و

class ImagesController extends Controller
{
    public function show($filename)
    {
        // get the image named $filename from storage and display it

        // Something like (not sure)
        $image = File::get('images/' . $filename. '.jpg');

        return response()->make($image, 200, ['content-type' => 'image/jpg']);
    }
}
برای ارسال پاسخ باید وارد سایت شوید