هش کردن لینک دانلود در php

php -
1 سال پیش توسط ftp آپدیت شد
آفلاین
user-avatar
کامران ( 60 تجربه )
4 سال پیش

لینک کوتاه اشتراک گذاری

1

سلام خدمت همه دوستان عزیز راکت

دوستان مطلب هش کردن لینک دانلود در php خیلی واسم جالبه ولی متاسفانه هرچقدر سرچ میکنم نه در سایت های ایرانی و نه در سایت های خارجی منبع خاصی وجود نداره که بشه یاد گرفت !!
ممنون میشم اگه یه راهنمایی در این مورد داشته باشید یا یک منبعی رو معرفی کنید

با تشکر

آفلاین
user-avatar
حسام موسوی ( 434547 تجربه )
4 سال پیش
تخصص : طراح و برنامه نویس

لینک کوتاه اشتراک گذاری

3

روشی که برای این موضوع اینکه شما میتونید فایل هاتون رو در دایرکتوری قرار بدید که بصورت مستقیم قابل دسترس نیستن و بعد با استفاده از توابع هش کننده یک سری اطلاعات رو در سمت کاربر هش کنید و به url خودتون اضافه کنید و در طرف دیگه اون url رو هش معکوس کنید و ببینید آیا مقدار فرستاده شده درست هست یا نه
به مثال زیر دقت کنید

http://dl4.roocket.ir/download?path=dlv/1396/laravel55/1-laravel55.rar&mac=$2y$10$tSfQ6dfjGbCQNULL/MXf6.tQMLUA2E6AdQ6tXzUEm2ULIYLsmF/R6&t=1507079175

url زیر برای یکی از فایل های سایت هست
همونطور که مشاهده میکنید تنها بخشی از آدرس فایل قرار داده شده و بهمراه این url بخشی بصورت هش شده وجود داره که در بردارنده یک سری اطلاعات هست که زمانی که کاربر این url رو اجرا کنه سمت دیگه این اطلاعات یعنی مقدار هش شده گرفته میشه و دقیقا معکوس باهاش برخورد میشه تا از صحت درستی مقدار هش شده مطمئن بشید اگر کاملا درست بود اون وقت میتونید فایل رو برای دانلود به کاربر بدید
در php با استفاده از header ها میتونید به کاربر فقط همین url رو نشون بدید و فایل دانلود بشه و هیچ وقت نفهمه url اصلی برای دانلود چی هست
اینطوریم میتونید یه سیستم امن برای دانلود داشته باشید
البته این موضوع کمی پیچیده هست من این موضوع رو در دوره لاراول کامل توضیح دادم

آفلاین
user-avatar
کامران ( 60 تجربه )
4 سال پیش

لینک کوتاه اشتراک گذاری

1

خیلی ازتون ممنونم آقای موسوی ، اما متاسفانه همون طور که گفتید یکم پیچیده و برام مبهم بود
آقای موسوی امکانش هست یک آپدیت جدید در همین مورد رو به دوره های php خودتون اضافه کنید یا یک منبعی رو معرفی کنید که بشه به صورت عملی این مبحث رو یاد گرفت

با تشکر از شما

آفلاین
user-avatar
none ( 1001 تجربه )
4 سال پیش

لینک کوتاه اشتراک گذاری

1

سلام
شما میتونید از مقاله زیر استفاده کنید
http://concordia.sk/programming/php/135-dynamic-download-link

آفلاین
user-avatar
ftp ( 36500 تجربه )
1 سال پیش
تخصص : ساده

لینک کوتاه اشتراک گذاری

1

@hesammousavi
@khanzadimahdi
امکانش هست در مورد قضیه بالا یکم راهنمایی کنید (با مثال)
کدم اینه من میخوام یک urlرو وقتی داخل دانلود منیجر میندازم دانلود کنه اما نمیشه
لینک اصلی من لینک آپاراته و یک لینک فرعی دارم و urlمن همان لینک فرعی هست

    $path=$head_link;
    header("Pragma: public");
    header("Expires: 0");
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Content-Description: File Transfer');
    header("Cache-Control: public");
    header('Content-Type: application/mp4');
    header('Content-Disposition: attachment; '.$path);//save as IDM
    header('Content-Transfer-Encoding: binary');
    header('Content-Length: ');
    ob_clean();
    flush();
    readfile($path);
برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.