PDA

View Full Version : سوال: راهنمایی در مورد ساخت لینک های دانلود غیر مستقیم با php



comp90
چهارشنبه 01 شهریور 1396, 08:22 صبح
سلام و درود خدمت شما:

این موضوع را می دانم که یکی از روش های جلوگیری از دسترسی مستقیم کاربران به فایل های درون یک پوشه اینه که با استفاده از یک فایل htaccess و هدایت به یک فایل php درونش بررسی کنیم که آیا کاربر مجوز دانلود این فایل را دارد یا اینکه خیر که البته لازمه درونش به دیتابیس متصل بشیم و بعد از بررسی های لازم فایل را برای دانلود به مرورگر بفرستیم.

اما یه مسئله اگر ما وبسایتمون روی هاست اصلی باشه و کل اون پوشه فایل ها (مثلا پوشه video که درونش ویدیو هایی هست که نباید هر کاربری بهش دسترسی داشته باشه چون برخی غیر رایگان هستند) روی یک هاست دانلودی می دانید که روی هاست دانلودی قابلیت اتصال به دیتابیس وجود نداره .

چگونه می تونم جلوی دسترسی مستقیم به فایل های درون این پوشه را از کاربران بگیرم در ضمن چک صلاحیت دانلود رو هم انجام بدم؟

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

لطفا اگر ایده ای وجود دارد بفرمایید ممنون میشم


با تشکر

moslem.hady
چهارشنبه 08 شهریور 1396, 10:38 صبح
سلام. من ASP کار میکنم و کلا PHP نمیدونم. ولی برای چنین کاری توی ASP نیاز داشتم که از هاست لینوکس فایل ها دانلود بشه.
چیزی که به ذهنم رسید، این بخش آخرش که شما نیاز دارید به این صورت میتونه باشه که لینک دانلودی که از سرور دانلودی میدید، لینک به یه فایل هندلر php باشه. یعنی یه فایل php روی سرور داشته باشید که دسترسی رو چک میکنه. حالا این لینک حاوی اسم و مکان فایل و یه تاریخ انقضا هست که کد شده هستند. مثلا همچین چیزی:

site.com/dwonload.php?coede=/files/filename.zip-13960809
که با یه الگوریتم کدگذاری تغییر بدید به چنین چیزی:

site.com/dwonload.php?coede=sax89uisYhsaihi9*usayga56GU


اینطوری فقط کافیه توی فایل php ، دیکد کنیدو تاریخ انقضای لینک رو چک کنید

از اینکه قابل پیاده سازی هست یا نه اطلاع ندارم. اگه نظری دارید بگید.