• 14-10-2013, 22:28:31
    #1
    Merhaba,

    .htaccess hotlink koruması kullanıyorum fakat büyük bir sorun var hotlink korumasında görüntülenen resim ya da dosyalar tarayıcı ön belleğine alınıyor kullanıcı direkt sitede olsada hotlink dosyası ön belleğe alındığı için hotlink dosyasını görüyor

    ya da izin verdiğim halde adres satırından doğrudan adres girildiğinde de hotlink resimi görünüyor

    ayrıca resim başka sitede link olrak verildiğinde tıklanınca yine hotlink resimi görünüyor

    sayfayı bir kaç defa yenilerse ya da ön belleği temizlerse sorun çözülüyor ama herkes bunu bilmiyor

    hotlink korumasında görüntülenen dosyaların tarayıcı ön belleğine alınmaması için ne yapmalı ?

    kullandığım kod;

    <IfModule mod_rewrite.c>
    
    RewriteEngine on
    
    RewriteCond %{REQUEST_URI} ^/hotlink
    
    RewriteRule ^.*$ - [L]
     
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http://(.+\.)?site\.com [NC]
    ......
    .......
    ......
    
    RewriteRule .*\.(jpg|jpeg|gif|png|bmp|JPG|JPEG|GIF|PNG|BMP|zip|rar)$ http://www.site.com/hotlink/hotlink.$1 [L]
    
    </IfModule>
  • 15-10-2013, 21:15:19
    #2
    bu sorunun bir çözümü yokmu acaba
  • 15-10-2013, 22:01:17
    #3
    sitedeki resim dosyakarına random metin yada numara ekleyebilirsin. bu durumda kullanıcı her siteye girdiğinde tarayıcı resmi yeniden çağıracaktır.

    örnek;
     <img src="http://www.site.com/resim.jpg?x=<?php echo rand(111,9999); ?>" />
    bir ara bende böyle bir sorun yaşamıştım. cpanel üzerinden yapılan hotlink protection daha kullanışlı gibi.
  • 15-10-2013, 22:32:12
    #4
    ilginiz için teşekkürler @betabil hocam cpanel denedim değişen bir şey olmadı random iyi fikir ama cache eklentisi kullanıyorum oda işe yaramıyacak

    RewriteCond %{HTTP_REFERER} !search\?q=cache [NC] diye bir kod buldum içinde "cache" ifadesi geçince aradığım budur dedim ama olmadı