[ djordje @ 23.04.2006. 01:36 ] @
Zelim da sprecim hotlinking ka odredjenim fotografijama na sajtu. Hocu da se u "properties" od slike ne vidi prava putanja do nje na serveru. Moze li se i kako resiti ovaj problem koristeci PHP ?
[ Nemanja Avramović @ 23.04.2006. 01:51 ] @
Moze. Posaljes header za sliku, ucitas fajl u promenljivu i samo echo-ujes sadrzaj slike. Tako ce na properties od slike da vidi adresu do php fajla. Sliku pozivas sa <img src="fajl.php" /> - ovo ce ti sakriti putanju slike, a hotlinking ces morati drugacije (najverovatnije (i najlakse) preko provere referera).

Pozdrav

edit: Hotlinking, odnosno zastitu od istog, mozes odraditi preko .htaccess fajla ali onda se vidi putanja do slike

[Ovu poruku je menjao JaHvram dana 23.04.2006. u 02:53 GMT+1]
[ djordje @ 23.04.2006. 09:32 ] @
Evo uradio sam ovako, ima li boljeg nacina?

Ovo je sadrzaj slika.php fajla koji se nalazi u: <img src="slika.php"... :
Code:
<?php

header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
header("Content-type: image/jpeg");  // change this from jpeg to whatever format the picture is in

header("Content-Disposition: attachment");

$location = 'test/test.jpg'; // this location variable can be set anyway you like, through $_GET['location'], a MySQL query, etc.

readfile($location); 

?>


Sto se hot linkinga tice, ovo je dovoljna zastita jer putanju do slike saljem POST metodom do fajla koji je "iscrtava". moj server ne podrzava .htaccess.


Pitanje je jos koliko ovo opterecuje server.

[Ovu poruku je menjao djordje dana 23.04.2006. u 10:52 GMT+1]
[ Nemanja Avramović @ 23.04.2006. 10:31 ] @
Opterecenje je zanemarljivo, ako su dimenzije slika u granicama neke normale... odnosno ne toliko dimenzije koliko velicina slike, ali verujem da velicina fajla zavisi od dimenzija
[ djordje @ 23.04.2006. 23:00 ] @
Slike ne prelaze 100kB i ima ih jedna po strani, a do 30-ak korisnika od jednom pregledaju slike.
[ Nemanja Avramović @ 24.04.2006. 08:37 ] @
Mislim da u tom slucaju ne moras da se cimas za opterecenje... cek` da neko drugi odgovori