آموزشوردپرس

تنظیمات مربوط به محصولات دانلودی برای فروشگاه فایل در ووکامرس

Digital/Downloadable Product Handling

ووکامرس (WooCommerce) یکی از بهترین افزونه‌های فروشگاه ساز در وردپرس است. این افزونه امکانات بسیاری برای ایجاد یک سایت فروشگاهی ایجاد می‌کند. یکی از امکانات آن، ایجاد فروشگاه فروش فایل است. ما در “نت‌افراز بلاگ” قصد داریم به صورت کلی، روش پیکربندی این افزونه برای ایجاد فروشگاه فایل را آموزش دهیم.

چالش‌های مربوط به ایجاد فروشگاه فایل چیست؟

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

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

تنظیمات مربوط به پیکربندی فروشگاه فایل قابل دانلود

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

تنظیمات و پیکربندی ابتدایی:

ابتدا وارد پیشخوان وردپرس خود شوید. سپس از منوی سمت راست، بر روی “ووکامرس” و سپس بر روی “پیکربندی” کلیک کنید.

بر روی تنظیمات پیکربندی ووکامرس کلیک کنید

 

در این بخش لازم است تا از منوی بالا، بر روی “محصولات” و از بخش محصولات بر روی “محصولات دانلودی” کلیک کنید.

 

انتخاب محصولات دانلودی از بخش محصولات در ووکامرس

 

در این بخش، گزینه‌هایی وجود دارد که به معرفی آن‌ها می‌پردازیم.

 

انتخاب روش دانلود فایل برای فروشگاه فایل:

در این بخش سه روش مختلف وجود دارد:

 

انتخاب روش دانلود فایل در ووکامرس و فروشگاه فایل

 

  • اجبار به دانلودها: در این روش، فایل دانلودی شما با استفاده از دستورات PHP، به صورت “Force to Download”، دانلود می‌شود. برای اطمینان از اینکه فایل‌ها حفاظت شده و به صورت لینک مستقیم دانلود نمی‌شوند، از این روش استفاده می‌شود. البته با توجه به اینکه در این روش، از دستورات PHP استفاده می‌شود، اگر فایل‌ها حجیم باشند و یا دستورات باعث ایجاد اختلال در سرور شوند، ممکن است با Timeout شدن دانلود مواجه شوید. بنابراین پیشنهاد می‌کنیم که از روش بعدی استفاده کنید.
  • X-Accel-Redirect/X-Sendfile: در این روش، فرآیند دانلود از طریق وب‌سرورهای (Nginx/Apache) انجام می‌شود. البته برای انجام این فرآیند، لازم است تا ماژول‌های X-Accel-Redirect/X-Sendfile  بر روی سرور نصب و فعال باشند. “توجه داشته باشید که در تمامی سرورهای نت افراز این ماژول‌ها فعال هستند و از این بابت هیچ نگرانی وجود نخواهد داشت.” این روش، مطمئن‌ترین روش است. چون فایل مستقیما و به صورت محافظت شده به مشتری ارائه می‌شود. بنابراین بهترین عملکرد را به شما ارائه می‎‌دهد.
  • فقط تغییر مسیر (ناامن): با فعال کردن این گزینه، اگر مشتریان شما فایلی را دانلود می‌کنند، لینک دریافتی آن‌ها به لینک اصلی فایل ریدایرکت می‌شود. استفاده از این روش بدین معناست که فایل اصلی شما محافظت شده نیست و هرکسی که لینک آپلود را بدست آورد، به راحتی به لینک فایل نیز دسترسی خواهد داشت. حتی اگر وارد حساب کاربری نشده باشد. این روش ناامن بوده و توصیه نمی‌شود.

اجازۀ استفاده از حالت تغییر مسیر (ناامن) به عنوان آخرین چاره

اگر گرینه‌های “اجبار به دانلودها” یا “X-Accel-Redirect/X-Sendfile” را انتخاب کرده باشید، ممکن است که تمایل داشته باشید گزینه ” اجازۀ استفاده از حالت تغییر مسیر (ناامن) به عنوان آخرین چاره” را نیز انتخاب کنید. اگر این گزینه فعال شود، اگر به هر دلیلی فایل موردنظر با متد موردنظر شما دانلود انجام نشود، از روش سوم یا همان “تغییر مسیر” این دانلود انجام می‌شود. این گزینه برای مواقعی مناسب است که در برخی پلتفرم‌ها، امکان دانلود به روش‌های دیگر ممکن نباشد. باز هم انتخاب این گزینه به صورت کلی ناامن است و پیشنهاد می‌شود که این روش را انتخاب نکنید.

 

اجازه استفاده از حالت تغییر مسیر به عنوان آخرین چاره

 

بخش محدودیت‌های دسترسی به فایل در ووکامرس

در این بخش، دو چک باکس وجود دارد که توضیحات مربوط به آن نوشته شده است.

 

محدودیت دسترسی در فروشگاه ساز ووکامرس

 

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

اختصاص یک رشته متن به نام فایل در ووکامرس

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

 

تنظیمات نهایی فایل در ووکامرس

 

با کلیک بر روی “ذخیره تغییرات” تمامی تغییرات انجام شده ذخیره می‌شود.

حفاظت از شاخه آپلودها:

در این بخش روش‌هایی را برای حفاظت از شاخه‌ای که فایل‌های شما در آن آپلود شده را آموزش می‌دهیم.

به صورت پیشفرض، ووکامرس یک فایل htaccess. را برای حافظت شاخه آپلود ها در شاخه:

content/uploads/woocommerce_uploads

قرار داده است. البته این به معنای امنیت کامل نیست، و همچنین لازم است تا این تنظیمات توسط پشتیبانی در وب‌سرور انجام شود.

آیا از وب‌سرور Nginx استفاده می‌کنید؟

اگر از وب‌سرور انجینکس برای آپلود فایل‌های خود استفاده می‌کنید (تمامی سرویس‌های نت‌افراز بجز سرویس‌های حرفه‌ای) و در بخش قبلی گزینه‌ی X-Accel-Redirect/X-Sendfile  یا اجبار به دانلودها را انتخاب کرده‌اید، بهتر است تا دستورات زیر را در تنظیمات وب‌سرور انجینکس انجام دهید. با توجه به مسائل امنیتی، دسترسی مستقیم شما به تنظیمات وب‌سرور انجینکس وجود ندارد. بنابراین با تماس با “پشتیبانی نت‌افراز” می‌توانید نسبت به اعمال دستورات زیر اقدام کنید.

# Protect WooCommerce upload folder from being accessed directly.
# You may want to change this config if you are using "Redirect Only" method for downloadable products.
# Place this config towards the end of "server" block in nGinx configuration.
location ~* /wp-content/uploads/woocommerce_uploads/ {
    if ( $upstream_http_x_accel_redirect = "" ) {
        return 403;
    }
    internal;
}

و اگر گزینه‌ی “فقط تغییر مسیر” را انتخاب کرده‌اید، دستورات زیر را وارد کنید:

# Protect WooCommerce upload folder from being accessed directly.
# You may want to change this config if you are using "X-Accel-Redirect/X-Sendfile" or "Force Downloads" method for downloadable products.
# Place this config towards the end of "server" block in nGinx configuration.
location ~* /wp-content/uploads/woocommerce_uploads/ {
    autoindex off;
}

 

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

استفاده از رشته متن بعد از نام فایل در ووکامرس

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

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

اعمال این تغییرات همانطور که در بخش قبلی گفته شد در بخش “ووکامرس -> پیکربندی -> محصولات -> محصولات دانلودی” قابل مشاهده است.

در این آموزش سعی کردیم که به صورت کلی، نحوه‌ی اعمال پیکربندی‌های مربوط به “فروشگاه فایل” در ووکامرس را آموزش دهیم. در آموزش‌های بعدی نحوه آپلود اینگونه فایل‌ها را آموزش خواهیم داد.

شاد و پیروز باشید.

نوشته های مشابه

‫2 دیدگاه ها

  1. با سلام و ممنون بابت این نوشته. فایل های دانلودی معمولا در هاست دانلود قرار میگیرند و هاست های دانلودی فاقد ماژول‌های X-Accel-Redirect/X-Sendfile هستند. برای این مورد چه راه حلی پیشنهاد می نمایید؟

    1. با سلام و تشکر از شما دوست عزیز
      در نت‌افراز ماژول‌های X-Accel-Redirect/X-Sendfile بر روی هاست‌هایی با وب‌سرور Nginx فعال هستند.
      با توجه به اینکه وب‌سرورهای هاست دانلود تماما Nginx هستند، بنابراین این ماژول به صورت پیشفرض بر روی تمامی هاست‌های دانلود نت‌افراز فعال است و هیچ مشکلی از این بابت وجود ندارد.
      البته درصورتیکه نیاز به بررسی بیشتر داشتید، می‌توانید با پشتیبانی نت‌افراز در تماس باشید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت توسط reCAPTCHA و گوگل محافظت می‌شود حریم خصوصی و شرایط استفاده از خدمات اعمال.

دکمه بازگشت به بالا