Det har hänt med alla. Du surfar på internet när du ser en av dina bilder på en annan sida. Omedelbart är du miffed att personen inte frågade ditt tillstånd eller inte ens kreditar dig för bilden. Du kanske undrar "Vad ska du göra för att förhindra att detta händer igen?" Det finns hotlinking-applikationer där ute, men det är vanligtvis avgift att köpa licensen. Här är två sätt att förhindra att personer kopplar samman dina bilder.

Ändra .htaccess-filen

Det bästa sättet att göra detta är genom att ändra .htaccess-filen. Det borde vara i huvudkatalogen på webbplatsen. Öppna den med din textredigerare för att lägga till följande kod:

 RewriteEngine på RewriteCond% {HTTP_REFERER}! ^ $ RewriteCond% {HTTP_REFERER}! ^ Http: // (www \.)? Yourdomain.com (/)?. * $ [NC] RewriteRule. * \. (Gif | jpe? g | png | bmp) $ [F, NC] 

RewriteCond tillåter webbplatser (din egen webbplatsadress ska vara här) som kan använda bilderna på din webbplats. Om du vill tillåta sökmotorer att få dina bilder att visas i bildsökningsfunktionen, lägg till följande kod:

 RewriteCond% {HTTP_REFERER}! Google. [NC] RewriteCond% {HTTP_REFERER}! Msn. [NC] RewriteCond% {HTTP_REFERER}! Yahoo. [NC] 

Du borde troligen tänka på att lägga till ditt RSS-flöde också, så dina bilder visas på din RSS.

RewriteRule är de filer som du inte vill ha folk hotlinking.

Använd PHP-kod

Om du föredrar att använda PHP istället. Skapa en ny PHP-fil och följande kod tillåter dig att göra samma sak som att ändra .htccess-filen:

 'image / jpeg', 'png' => 'image / png', 'bmp' => 'bild / bmp', ); $ Stat = stat ($ file); header ('Content-Type:'. $ mime [substr ($ fil, -3)]); rubrik ("Innehållslängd:". $ stat [7]); rubrik ('Senast ändrad:' .gmdate ('D, d MYH: i: s', $ stat [9]). 'GMT'); readfile ($ file); utgång(); } header ('Pragma: no-cache'); rubrik ("Cache-Control: no-cache, no-store, must-revalidate"); innefattar ($ file 'php.'); ?> 

Det första att göra är att ersätta " hemligt-okänt-namn-här " med något som ingen, men vem du vill ge tillgång till, kommer att kunna gissa. Se till att du skapar en katalog med samma namn. Där det står, " http://www.yoursite.com/, " ersätt det med din egen webbadress. Lägg till bildtillägg som du inte vill tillåta hotlinking där du ser jpg, png och bmp. Alla filer som du inte vill tillåta hotlinking placerar den i den hemliga katalogen.

Det bästa och enklaste sättet att förhindra att människor kopplar samman dina bilder är genom att ändra .htaccess-filen. Det är snabbt och enkelt jämfört med att man kodar PHP-metoden. Men vad som helst är upp till dig. Å andra sidan kan hotlinking vara underbart för sökmotoroptimering (SEO), så du kanske inte vill vara för strikt på detta om du övar SEO. Men det är verkligen upp till dig hur du hanterar hotlinking och det hjälper dig att göra det.

Redaktörens anmärkning : Ovanstående metod fungerar om och endast om bilderna är värd på din egen server. Om du använder tjänster från tredje part som Amazon S3, kommer ovanstående metoder inte att fungera.

Bildkrediter: Zemalf