کد جلوگیری از هاتلینک تصاویر در وبسرور آپاچی (Prevent Image Hotlinking)
با این دستور در htaccess، اگر دامنه درخواستکننده عکس جزو دامنههای مجاز شما نباشد، تصویر مسدود شده و خطای 403 برگردانده میشود.
مشخصات فنی و شناسنامه کد (Code Information)
بازبینی: 1405/06/29<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?example\.com [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?google\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?bing\. [NC]
RewriteRule \.(jpe?g|png|gif|webp|avif|bmp)$ - [F,NC]
</IfModule>
کد را کجا قرار دهیم؟ (Placement Guide)
در فایل .htaccess ریشه هاست، نام دامنه example.com را با دامنه خود جایگزین کنید.
این کد چگونه کار میکند؟ (How it Works)
شرطها بررسی میکنند که اگر ریفرر خالی نباشد و متعلق به دامنه خودتان یا موتورهای جستجو نباشد، درخواست فایلهای عکس را با [F] رد کند.
چه زمانی از این کد استفاده کنیم؟ (Use Cases)
در سایتهای با گالری عکسهای حجیم و محصولاتی که توسط سایتهای دیگر مورد سوءاستفاده قرار میگیرند.
چه زمانی نباید از این کد استفاده کنیم؟ (Anti-patterns)
اگر مایلید تصاویر شما در شبکههای اجتماعی یا فیدخوانها بدون مانع باز شوند.
پیشنیازهای اجرا
ماژول mod_rewrite آپاچی.
نحوه تست و اطمینان از عملکرد
آدرس یکی از عکسهای سایت را در یک ادیتور آنلاین دیگر (مانند JSFiddle) قرار دهید؛ تصویر نباید لود شود.
نحوه بازگردانی سریع (Rollback)
حذف کد از فایل .htaccess.
خطاهای رایج و راهحل رفع
فراموش کردن اجازه به موتورهای جستجو مانند گوگل که باعث حذف تصاویر از Google Images میشود (در کد بالا استثنا شده است).
ملاحظات و نکات امنیتی
جلوگیری از سرقت پهنای باند (Bandwidth Theft).
تاثیر بر سرعت و پرفورمنس
کاهش بار پردازشی سرور روی فایلهای استاتیک.