عرض سلام به همه دوستان عزیز و گرامی

مشکلی برای بنده پیش اومده که سعی میکنم اون رو کامل توضیح بدم.

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

دنبال تهیه هاست بودم و فکر میکردم که خب از این هاست ها که نوشته پهنای پاند و هارد نامحدود کار ما رو راه میندازه اما بعد متوجه شدم قوانین و مقررات خاص هاستینگ ها این اجازه رو نمیده که علی رغم واژه نامحدود چنین سایتی روی این هاست ها میزبانی بشه.

چاره کار رو پرسیدم گفتند که باید یک هاست دانلود تهیه کنید و تمامی فایلهایی که میتونن از سوی کاربران دانلود بشن رو روی اون قرار بدید و یه هاست پی اچ پی هم بگیرید و اسکریپت دروپالتون رو روی اون اجرا کنید.
این 2 تیکه شدن باعث شد که کار ما در بیاد. نزدیک 2 روز سر و کله میزدم تا ببینم میشه کاری کرد که مثلا فایلها مثل حالت CDN که روی سرورهای دیگه کپی میشن رو جای دیگه کپی کرد. دیدم میشه و موفق شدم از طریق اف تی پی از داخل اسکریپت دورپال فایلها رو منتقل کنم روی سرور دیگه (سرور دانلود)
تا اینجا خوب بود. اما خب مشکل از اینجا شروع شد.
دروپال 2 نوع سیستم فایل داره . یکی پایلیک و یکی پرایوت.
در مورد فایلهای پابلیک لینک مستقیم میده به فایل . حالا هر جایی که میخواد باشه.
اما در مورد فایلهای پرایوت از اونجاییکه باید قبلش بررسی بشه که ایا مثلا کاربر مجوز دانلود یا دیدن این فایل رو داره لینک مستقیمی در کار نیست. بلکه یه لینک php خود سیستم هست که با یه ساز و کاری یه فانکشنی رو کال میکنه و اون بعد از اینکه دید مجوز دسترسی هست (اگه درست گفته باشم) به صورت استریم فایل رو میرسونه سمت کاربر.

من رفتم ترافیک هاست ها رو چک کردم. دیدم متاسفانه وقتی از این روش استفاده میشه هر دو هاست ترافیک شون درگیر میشه . یعنی هم هاست دانلود و هم هاست اصلی. بنابرین این روش به کار نمیاد.

دوباره فکر کردم چه کار میشه کرد. به این نتیجه رسیدم که فایلها رو روی سرور دانلود کپی کنیم . بعد یه فایل text یا html درست کنیم و ادرس مستقیم فایلها رو بذاریم داخلش که مثلا وقتی کاربر محصول دانلودی رو خرید. اون فایل تکست باز میشه و محتویاتش به کاربر نشون داده میشه و میه برو از اینجا فایلها رو دانلود کن.

حالا مساله اینجاست. اگه دسترسی ها همینطور روی سرور دانلود باز باشه که هیچی به هیچی. طرف میره سرور دانلود رو جارو میکنه.
گفتم روی این فولدر ها با مکانیزم protected directory که فایل htaccess درست میکنه پسورد گذاشته بشه.

منتها الان طوری هست که حتما باید برای اینکه کاربر بتونه اون لینک ها رو دانلود کنه حتما باید یوزر - پسورد بزنه. حالا اگه با بروزر (مثلا فایرفاکس یا کروم) بزنه یک بار و اگه بخواد مثلا با idm دانلود کنه هم باز باید یوزر پسورد رو بزنه.

اینکه یوزر پسورد اون فولدر رو میدیم به کاربر داره اذیتم میکنه. چون اگه یوزر پسورد رو بره به دیگران بده اونها هم میتونن دانلود کنند.

میخواستم ببینم میشه کاری کرد که بدون اینکه به کاربر یوزر پسورد رو نشون بدیم بهش مجوز دانلود فایل از روی سرور دانلود برای فقط اون فایلهای خاص رو بدیم ؟

یا اینکه اگه باز راه بالا نمیشه. ایا میشه این پسورد ها و یوزر ها رو که کارشون محافظت از فولدرهاست به صورت داینامیک از خارج از هاست دانلود تغییر بدیم . مثلا هر شب پسورد این فولدرها رو به صورت اتوماتیک عوض بشه که امکان سرقت از هاست دانلود به حداقل برسه.

راستش تو این موضوع تجربه ندارم . امیدوارم دوستان با تجربه راهنمایی بفرمایند.

سپاس از همه دوستان عزیز