• User

    Blocco dell'Hotlinking e Motori di Ricerca

    Ciao a tutti, Stanco dell'ennesimo furto di immagini sottratte in hotlinking, vorrei mettere mano all' .htaccess per restituire ai furbetti un bell'Errore 403...

    
    RewriteEngine On
    RewriteCond %{HTTP_REFERER} !^[http://](http:///)(www\.)?miosito\.com/ 
    RewriteCond %{HTTP_REFERER} !^$
    RewriteRule \.(jpe?g|gif|bmp|png)$ - 
    
    
    • Che ripercussioni potrebbe avere però sul comportamento degli spiders?
    • Suppongo che anche gli spiders si scontrerebbero nel 403 ad ogni richiesta di immagini?
    • Basterebbe aggiungere nel .htaccess nell'elenco di domini "autorizzati" anche i domini dei principali motori?```

    RewriteCond %{HTTP_REFERER} !^http://(www.)?google.com/
    RewriteCond %{HTTP_REFERER} !^http://(www.)?yahoo.com/
    RewriteCond %{HTTP_REFERER} !^http://(www.)?live.com/

    ecc...

     Grazie a tutti in anticipo
    
     ![image](http://forum.html.it/forum/images/smilies/ciao.gif)

  • Community Manager

    Ciao Ram,

    chiedo perchè fondamentalmente sono poco pratico:

    ma se tu blocchi l'accesso alle tue immagini solo quando richiamate dagli altri domini, perchè ci dovrebbero essere problemi quando lo spider visita le tue pagine? Sempre dal tuo dominio le prende?

    Forse non ho chiara la situazione...puoi mostrare un esempio applicato e pratico del tuo caso che mi pare molto interessante? 🙂


  • User

    Ciao Giorgio,

    per evitare il "furto" di immagini in hotlinking (e relativo inutile consumo di banda), volevo inserire nell' .htaccess il codice nel primo post.

    Il codice permette la visualizzazione delle immagini, solo se la richiesta proviene da un dominio "autorizzato" (in pratica se la richiesta proviene da una qualsiasi pagina del proprio sito).

    Se l'immagine viene invece richiesta da un altro dominio (non "autorizzato"), al posto dell'immagine viene restituito un Errore 403 (col vantaggio di evitare inutili consumi di banda).

    • Se non erro*, l'.htaccess dovrebbe controllare il referer all'interno della request http del richiedente:
    • se il dominio è autorizzato: permette l'accesso e mostra l'immagine
    • se il dominio non è autorizzato: restituisce un Errore 403Il mio dubbio a questo punto è relativo al comportamento degli spider in fase di indicizzazione delle pagine contenenti le immagini.

    Temo che ogniqualvolta uno spider richieda un'immagine, avendo un referer diverso dal dominio autorizzato, si "scontri" contro un Errore 403.

    E non so quali conseguenza potrebbe avere questo, sull'indicizzazione delle pagine.

    Cosa ne pensi?

    :ciauz:


  • User Attivo

    Ciao Ram_wm. Non riesco a capire la tua preoccupazione: come diceva Giorgio se le immagini si trovano nel tuo dominio perchè allo spider dovrebbe risultare un Errore 403???


  • User Attivo

    in teoria non dovresti avere problemi con quel codice .htaccess
    Ma il tuo host non ti da una funzione del genere senza bisogno di mettere mano al codice?
    :ciauz:


  • User Attivo

    Ciao RAM_WM,
    il tuo ragionamento è giusto:
    il classico è cosi

    
    RewriteCond %{HTTP_REFERER} !^http://(.+\.)?example\.com/ 
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !google\. 
    RewriteCond %{HTTP_REFERER} !search\?q=cache 
    # RewriteRule .*\.(jpe?g|gif|bmp|png)$ images/notheft.jpg 
    RewriteRule .*\.(jpe?g|gif|bmp|png)$ - 
    
    ```Il codice è simile al tuo, quindi è corretto aggiugere i domini autorizzati(in questo esempio google images e la cache di google).
    
    Poi puoi decidere cosa far vedere:
    un 403 oppure (vedi commento htaccess) un immagine ...magari con la scritta hotlink non permesso.
    
    non so quale sia l'impatto dei motori, ma probabilmente è nullo.
    Infatti quando un motore spidera un sito (esattamente come un utente) tutte le immagini hanno referer uguale al sito stesso.
    
    Ciao

  • User

    Grazie!

    :ciauz: