Drupal hotlinkelés megakadályozása

#drupal #hotlink #htaccess #mod_rewrite

Drupal hotlinkelés megakadályozása

Figyelem!

Úgy tűnik, hogy jelenleg egy olyan cikket böngészel ami több mint két éve készült. A technológia világában ez nagyon sok idő és azóta már sokkal jobb megoldások is lehetnek, mint amit ebben a cikkben olvashatsz. Így azt tanácsolom keress egy frissebb cikket ebben a témában.

A hotlinkelés vagy direktlinkelés egy olyan módszer amivel mások a mi sávszélességünket kihasználva jelenítik meg képeinket vagy más tartalmainkat az oldalukon. Tehát a fájlok nem a saját szerverükről, hanem miénkről lesznek hostolva, ezért a mi számlánk ketyeg nem az övék. Ezt sokan ezért lopásnak is tekintik, de van megoldás ellene.

Mint sok esetben, most is a .htaccess fájlban találjuk a megoldást. Mint tudjuk a Drupal főkönyvtárában található egy .htaccess fájl, de ezt most békén hagyjuk. Helyette a képek tárolási mappájában lévő .htaccess fájlt keressük meg. Ez általában a sites/default/files mappa. Miután végeztünk a .htaccess fájlal, valahogy így kell majd kinéznie:

A következő megoldáshoz a mod_rewrite nevű Apache modulra van szükség a szerverünkön.

SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006
Options None
Options +FollowSymLinks
# A fenti sorok találhatóak az eredeti fájlban
# A következő sorok pedig a képek hotlink blokkolásáért felelősek
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(.*\.)?tedomainneved.hu [NC]
RewriteRule \.(jpeg|jpg|gif|png)$ http://tedomainneved.hu/nincshotlink.gif [NC,R,L]</code>

Megismétlem, ez nem a főkönyvtárad .htaccess fájljába kerül, hanem a files mappában lévőbe! A beírt sorok blokkolni fognak minden olyan kérést ami nem a megadott domain névről jön, és a beállított képet pl. a “nincshotlink.gif”-et jelenítik meg a hotlinkelt kép helyett.

A témádhoz tartozó képek nem lesznek ezzel levédve. Ehhez a témád mappájában is létre kell hoznod egy ilyen .htaccess fájlt.

Figyelem: ez a technika befolyásolhatja a különféle képkeresők működését, így csak meggondoltan használjuk.

További tartalmak