اجبار به دانلود یک فایل یا تصویر با کلیک روی لینک

حتماً با حالتی روبرو شدید که وقتی روی یک لینک یا پیوند از صفحات مختلف کلیک می‌کنید، به جای اینکه آن سند روی مرورگر شما دریافت (دانلود) شود، محتوای آن سند درون همان سربرگ یا یک سربرگ تازه نمایش داده می‌شود. البته این در حالتی است که مرورگر از پسوند آن سند برای باز شدن پشتیبانی کند. مثلا اسناد pdf و mp3 و txt ممکن است درون خودِ مرورگر باز شوند.

اجبار به دانلود یک فایل یا تصویر با کلیک روی لینک

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

اجبار به دانلود سند توسط .htaccess

کاری که باید انجام شود، استفاده از یک تکه کد تقریباً ساده در سند .htaccess است. این سند دستوراتی را به وب سرور ارسال می‌کند که وب سرور هم کارهایی که ما می‌خواهیم را برای ما انجام می‌دهد. دستوری که در زیر می‌بینید را هم شما می‌توانید درون این سند که در ریشهٔ هاست شما واقع شده است قرار دهید و نتیجه را بررسی کنید.

<FilesMatch "\.(pdf|jpg)$">
Header set Content-Disposition attachment
</FilesMatch>

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

یک آموزش جذاب دیگه!  htaccess برای وردپرس

به جهت اینکه این کد کار کند، حتماً باید افزونهٔ mod_headers روی وب سرور شما نصب شده باشد که به احتمال زیاد خارج از کنترل شماست. چون تنها مدیر سرور که دسترسی root به سرور را دارد می‌تواند این کار را انجام دهد. روی بیشتر هاست‌ها این افزونه نصب است.

راجع به سند .htaccess به شما هشدار دهم که این سند خیلی حساس است. بهتر است قبل از اعمال تغییرات یک نسخهٔ رونوشت شده از آن در جایی ذخیره داشته باشید که به محض بروز خطا، با جایگزین کردن آن خطا رفع گردد.

6 دیدگاه برای “اجبار به دانلود یک فایل یا تصویر با کلیک روی لینک”

  1. محمد گفت:

    سلام من این کار رو انجام دادم ولی روی گوشی میزنم باز هم اجرا میکنه به جای دانلود

    1. جمال گفت:

      توی یک مرورگر دیگه روی لپ تاپ یا رایانه رومیزی تست کنید. اگر اونجا این مشکل نبود، به احتمال زیاد توی مرورگر این تنظیم انجام شده که به جای دانلود، سند باز بشه.

  2. reza گفت:

    سلام و درود.
    برای هاست دانلود به چه شیوه ای می توان عمل کرد که فایل ها دانلود نشوند. آیا راهکاری هست؟

    1. جمال گفت:

      با سلام. از همین روش باید استفاده کنید. یعنی کد رو توی سند htaccess قرار بدید که به وب سرور هاست دانلودتون بفهمونه که به مرورگر بفهمونه که نباید اون رو دانلود کنه و باید توی مرورگر نمایشش بده.
      Header set Content-Disposition inline

  3. معین گفت:

    سلام کاربرای سایتمونو نجات دادین دمتون گرم ❤️

    1. جمال گفت:

      سلام. موفق باشید.

ارسال دیدگاه

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

آموزش جامع وردپرس

آموزش نصب وردپرس روی لوکال هاست

آموزش افزونه Yoast SEO

درباره ®WPTutorial

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