سلام
من یه ویدیو رو سایتم آپلود کردم به فرض به ادرس sample.com/movie/test.mp4 و میخوام این لینک به صورت مستقیم برای کاربر هایی که دسترسی لازم رو ندارن نمایش داده نشه ، و نتونن به طور مستقیم با داشتن این لینک ویدئو رو دانلود کنن.
برای view ای که کد نمایش این ویدیو داخل نوشته شده هست این دسترسی با میدلور چک شده اما میخوام برای لینک مستقیم ویدیو هم این دسترسی چک بشه که کسی با inspect element نتپنه لینک و برداره و به دیگران بده.
این هم کدی هست که داخل ویو برای نمایش ویدوئو قرار داده شده:
<source src="{{url('movie/intro.ogv#t=0.1')}}" type="video/ogg">
ممنون میشم راهنماییم بفرمایید
سلام
فایل رو در پوشه ی storage آپلود کنید و در مرحله بعد در router مانند زیر آدرس دهی کنید:
Route::get('/attachments/video/{type}/{filename}{extension?}', 'VideoController@index')->where([
'filename' => "[a-zA-Z0-9_-]+",
'extension' => '\..+',
]);
حالا یک کنترلر با اسم VideoController ایجاد کنید و تابعی مانند زیر اضافه کنید:
public function index( $type, $filename, $extension = NULL ) {
$path = storage_path() . "/video/$type/" . $filename . $extension;
$exists = File::exists($path);
if (!$exists) {
$path = storage_path() . "/video/cover/notfound.jpg";
}
$file = File::get($path);
$type = File::mimeType($path);
$response = Response::make($file, 200);
$response->header("Content-Type", $type);
return $response;
}
این کلیت ایجاد لینک دسترسی به فایل هاست.
کافی هست در مرحله ی آخر سطح دسترسی هایی که لازم دارید رو در تابع پیاده سازی کنید.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟