سلام بچه ها من تصمیم گرفتم وب سایت فیلم را با فریم ورک لاراول کدنویسی کنم و من در مورد پایگاه داده این نوع وب سایت تحقیق کرده ام اما من مشکل بزرگی دارم که نتوانستم در سایت های مختلف مانند یوتیوب راه حلی پیدا کنم مشکل من این است: همانطور که توسعه دهندگان لاراول می دانند ما دیسک ذخیره سازی داریم این فایل ها توسط آن قابل دانلود هستند، اما در وب سایت فیلم می خواهم فیلم ها را به صورت آنلاین به کاربران نشان دهم و من می خواهم لینک فیلم را کنترل کنم، برای مثال کاربرانی که برای دسترسی به فیلم ها احراز هویت شده اند و بالعکس
سلام امکانش هست راجع به سایت های فروشگاه اینترنتی فیلم و سریال بنده رو راهنمایی کنید
من قصد دارم یک سامانه با بک اند لاراول بنویسیم و راجع به دیتا بیس های سایت های مطرح مثل نتفلیکس تحقیق کرده ام و مشکلی روی دیتا بیس ندارم ( اگر کسی علاقه مند بود میتونم دیتا بیس رو براش کالبد شکافی بکنم چون بنده مستندات انگلیسی خوندم )
چالش برنگیز ترین مشکل من در این آپلیکشن
بارگذاری فیلم ها و سریال ها هستش که نمیدونم چطوری باید این کار انجام بشه
اولا مدیا ها باید در دیسک storage خود پروژه لاراول ذخیره بشه یا نه ؟؟
و بحث دوم امکان داشتن کنترل بروی لینک ها ویدیو ها هستش که مثلا یک نفر به اون ویدیو دسترسی داشته باشه و یک نفر دیگر نداشته باشه
برای قسمت دوم بله میتونی برای هرکاربر یک لینک generate بکنی و زمان بهش بدی بابت expire شدنش
Signed URL
برای تعیین سطح دسترسی کاربرات به یک فیلم یکی از راه هاش استفاده از Gate و Policies هست. مثلا کاربری که اشتراک ماهانه خریده در برنامت بهش یک اجازه دسترسی میدی و بر اساس اون اجازه دسترسی میتونی محدودیت ایجاد کنی که فقط کاربرایی بتونن به لینک دانلود دسترسی پیدا کنن که اجازه دسترسی براشون تعریف شده.
Authorization
برای بخش اول سوالت
بستگی به خودت داره که میخوای فایلایت روی همین سرور لاراولت قرار بگیرن یا با استفاده از درایور های فایل سیستم ، در سرورهای دیگه ذخیره سازی کنی برای اینکه بیشتر با این قضیه اشنا بشی داکیومنت زیر رو ی نگاه بنداز
File System
درود...
بیشتر فایل های فیلم و سریال در سرور مجازی نگهداری میشه...
می توانید پوشه ای رو برای ذخیره فایل های فیلم سریال تعیین کنید و بهش برای ذخیره مسیر بدید...
و اسکریپت فایل منیجر برای لاراول نصب کنید که بتوانید راحت کار ساخت پوشه و آپلود فایل انجام بدید ...
درباره دسترسی اینه شما با میدولورر انواع دسترسی برای کاربر تعریف کنید مثلا دسترسی نویسنده و عادی و مدیر سایت و غیره...
سناریو دسترسی ها اینه که به نویسنده دسترسی ایجاد نوشته بدید و دسترسی فایل ها بهش دید و اون دسترسی رو به نویسنده بارگذار فایل بدید...
یعنی نویسنده فقط اطلاعات فیلم و سریال وارد کنه و بارگذار فایل فقط فایل ها رو آپلود کنه...
درباره پیوند دانلود می توانید سیستم VIP ایجاد کنید و کسی که اشتراک خریده به پیوند ها بر اساس زمان آن دسترسی داره و کسی اشتراک که نخریده به هیچ پیوند دانلودی دسترسی نداره...
ممنون از پاسخ شما آقای امیر
راجع به file system اطلاعات دارم و روش کار کردم
فهم خودم رو از file system عرض میکنم خدمتتون اگر اشتباه بود لطفا بفرمایید
در پروژه لاراولی ما دیسک فایل داریم به نام storage که داخل آن دو تا فایل هستش که یکی public و یکی private شما فرض کنید من یک ویدیو یا یک عکس در فایل public ذخیر سازی میکنم و این به صورت عمومی یک لینکی داره که اگر کاربر اون لینک رو از طریق inspect گرفتن پیدا کنه با همه میتونی شیرش کنه و در اختیار همه بزاره و اصلا به لاگین بودن در سامانه من و لاگین نبودن ربطی نداره ( میخوام بگم که ما کنترلی روی اون لینک نداریم که بخوایم از middleware ها یا همون بحث access permission ها استفاده کنیم ) بحث بحث authorisation اینجا برای ما کاربردی نداره میومنه فایل private طبق متندات خود لاراول که مطالعه کرده بودم اون فیل ذخیره شده فقط میشه دانلود بشه پس نمیتونه به کاربر به نمایش بیاد ولی بحث authorisation در اینجا کاربرد داره و میتونی این رو مشخص کنی بعضی از یوزر ها بتونن این مدیا رو دانلود کنن و یا برعکس
اما شما فرض کنید ما یک ویدیو ی رو در فایل private ذخیره کردیم و مثلا کاربر مبلغی رو پرداخت کرده و میخواد اون رو به صورت آنلاین ببینه ولی در این صورت فقط میتونه دانلودش کنه
اصلا چرا راه دور بریم همین سایت محبوب راکت که الان داریم ما باهاش کار میکنیم من دوره ای از این سایت خریدم و بعد از پرداخت اون رو به صورت آنلاین دیدم ضمن اینکه میتونستم دانلودشم بکنم.
ممنون از شما اقای رایموند
من فکر میکنم پاسخ شما منطقی هستش
پیش بینی همچین چیزی رو قبلا میکردم که کاملا غیر اصولی هست که ویدیو ها و یا عکس ها در storage خود پروژه ذخیره سازی شود ( چرا که فرض بفرمایید ما بیش از ۱۰۰ ترا بایت فایل فزیکی داریم و کنترل آنان سخت است ) اگر براتون مقدور هست راجع به سرور مجازی توضیح بیشتر بدین
چیزی که به ذهن خودم میرسه اینکه ما یک سرور مجازی داشته باشیم و اطلاعات مثلا یک فایل داخلی دیتا بیس ما هست و وقتی که میخوایم لینک ویدیو رو بدست بیاریم به اون سرور مجازی یک api بزنیم و یک لینک ازش دریافت کنیم و اون لینک رو به temporary url یا همون signed url ی که آقای امیر گفتن تبدیل کنیم و به کاربر پاس بدیم تا در اتریبیوت سورس تگ video بزاریم تا کاربر اون رو به صورت آنلاین ببینه
اینطوری هم میتونیم بروی لینک ها مدیریت داشتع باشیم هم مدیا هم یک جای مستقل ذخیره سازی شدن
حالا اگر این سناریوی که عرض کردم خدمتتون درست است چطور باید اون سرور مجازی رو درست کرد یعنی ما یک فایل مجازی داریم که فقط ویدیو عکس و ... توش ذخیره میشه و ما هر موقع بخوایم بهمون لینک میده ؟؟؟
لطفا کلید واژه های رو بهم بدین تا خودم تحقیق کنم یا اگر ویدیو آموزشی یا مستنداتی چه انگلیسی چه فارسی دارین بدین
منظورتون رو از vip هم متوجه متوجه نشدم
و خیلی ازتون سپاس گذارم که منو تنها نمیزارین و در حل مشکلم همراهی میکنید
سلام
این یک مشکلی هست که منم نتونستم براش راه حلی پیدا کنم
اینکه تو لاراول عکس یا ویدیویی را در strorage غیر از پوشه public ذخیره میکنی
و فقط میتونی اون رو دانلود کنی
اما نمیشه اون تصویر یا ویدیو رو نشون بدیم
راکت هم فک کنم برای دانلود داخل storage ذخیره کرده
ولی برای نمایش ویدیو ها از یه سرور دیگه استفاده کرده
ولی این بحث اپلود تصویر و ویدیو از پروژه لاراولی داخل یک سرور دیگه
و نمایش ویدیو و دسترسی پیچیدگی داره
اگر کسی راه حلی بده لطفا بگه
سلام آقا محمد الان داشتم در سطح اینترنت تحقیق میکردم متوجه شدم cdn یا همون شبکه توزیع محتوا بتونه به نا راجع به این قضیه کمک کنه حالا اگر دوستانی که تجربه این کارو دارم صحه به حرف من بزنن خیلی عالی میشه
چنتا لینک پیدا کردم راجبه نمایش ویدیو و عکس از storage ولی خودم تست نکردم
https://www.itsolutionstuff.com/post/how-to-display-image-from-storage-folder-in-laravelexample.html
https://laravel.io/forum/02-14-2016-how-read-uploaded-video-files-from-storage-directory
https://stackoverflow.com/questions/59881256/how-to-play-video-from-laravel-storage-directory-after-verifying-the-user-login
لینک سوم خیلی خوب بود دقیقا به مشکل ما برخورده بود و بعد از اضافه کردن کلاس stream ظاهرا ویدیو به نمایش در اومده
باید تستش کنیم لطفا شما هم تست کردیم به من بگین
@ghajarehsan
با توجه که قبلا تجربه راه اندازی سایت دانلود فیلم و سریال داشتم آن هم با سیستم محتوای وردپرسه...
۱. بهترین روش اینه یه سرور مجازی بگیرید و فایل های فیلم و سریال در آن قرار بگیره
۲. یه سرور مجازی دیگه بگیرید برای بالا آوردن سایت لاراول
۳. اسکریپت VIP تهیه کنید برای ایجاد اشتراک پولی پیوند دانلودها و محدود کردن دسترسی کاربران
نمونه : https://miladworkshop.ir/vip.html
چند نمونه اسکریپت VIP داریم بستگی به بودجه ای که دارید, تهیه کنید.
سرویس های اسکریپت vip رو بررسی کردم خیلی فیچر و قابلیت ها داره
خیلی عالی بود قطعا ازش استفاده خواهم کرد
فقط قبل از اون باید نحوه راه اندازی سرور مجازی رو بفهمم
اگر لینک و فیلم آموزشی دارین بفرمایید
@ghajarehsan
پیوند زیر:
https://roocket.ir/discuss/1818
نصب اسکریپت VIP توسط خود سازنده نصب میشه و بقیه کارها خودت انجام بدید...
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟