Jak pomoci PHP nebo .htaccess zakazu aby si lidi nemohli stahovat moje obrazky, ale aby na ne mely pristep stranky?
Když už je jednou odešleš browseru, tak už stahování nezabráníš!
prece to nejak musi jit... treba udelat v htaccess zamitnutej pristup?
bud je zobrazis a pudou stahovat, nebo je nezobrazis a nebudou se dat stahovat :)
kdyz sou zobrazeny, uz sou vlastne stazeny ;)
Aby se nedali ulozit! Nebo treba, kdyz by si dal ulotit tak aby se tomu dotycnymu ulozil jinej obrazek nez chtel
Nelze.
Z pohledu HTTP protokolu je "zobrazení" a "stažení" stejný požadavek
dalo by sa urobit "finta pre blbych" :-) a to vypnutie cache. tym padom nepojde "zobrazit zdrojovy kod". niekolko 5% ludi to mozno zastavi :-)
dalsich 10% zastavi progamik v javascripte, ktory zablokuje rightclick.
ale co so zvysnymi 85%... :-)
Od věci by nebyl třeba javascript, který by ten obrázek ve správném okamžiku schoval (při kliknutí na obrázek apod.). Jenom nevim, co se stane, když si ten člověk uloží celou stránku...
Někteří lidé nebudou umět ten obrázek uložit, pokud bude ve Flashi a navíc ho budeš vkládat z jiného serveru - uložit ze stránky jenom ten flash nejde úplně lehce, a prohlížeče standardně neukládají soubory vložené do stránky z jiného serveru...takle tohle by se možná mělo zkusit, mam pocit, že by to mohlo dungovat! Ale nevim, jen jsem si to teď vymyslel, třeba je to hovadina!
no jasně <img src="?" onmousedown="this.style.display = 'none'">
mohlo by to jit :)
ad [plusminus+-]: To se mi zdá blbost: ten člověk si muže tu stránku uložit, a pak se mu to ukáže, nebo se podívat na zdroják a otevřít ten obrázek rovnou. A k tomu mě napadla ještě jedna věc: přes ten obrázek by se nechal přetékat CSSkem nějakej průhlednej objekt, kterej by byl navrchu, a po kliknutí by se zobrazilo menu normálně pro stránku.
Jeste jeden tip: naimportujes styl CSS jako PHP soubor, ve kterém klidně bude normální CSS. Asi takto <link rel="stylesheet" href="soubor.php">: zkrátka to zamezí ukládání s obrázků v IE, ale zdroj zobrazit jde.
2Pif:jak muzou css zamezit v ukladani obrazku prve timto zpusobem?
napadla mne jina blost:
zobrazovat obrazky a stranky pomoci php+ session
tj ze by se dynamicky vygeneroval odkaz na obrazek kterej by platil jen urcitou dobu. tento odkaz by zpracovalo php a poslalo by doticnej obrazek
takze by se vygenerolo <img src="obrazky.php?id=vhjgchgchxgdyfdxxgfx">
a toto id by se pri pristim nacteni stranky samozrejmne zmnilo.
pri posilani obrazku by se samozrejmne v hlavice vypla cache plus by se tam mohla pridat nejaka ta kravinka jako potlaceni praveho tlacitka ci ruzne skryvani. sice to neni 100 ale takoeho BFU to odradi
barkuda: jo, taky to ztíží uložení obrázku, to omezení platnosti není vůbec špatný nápad, rozhodně bych to použil
pif: Tomu s tim CSS nijak zvlášť nerozumim...když si tu stránku normálně uložim, tak se stane co? Zkus to trochu podrobněji vysvětlit!
Nedalo by se využít toho, že při ukládání stránky se (někdy) neukládaj soubory, které jsou na jiné doméně? (když mam stránku na WZ a bude tam <img src="http://www.sweb.cz/x-y/obr.jpg"...) Možná dokonce stačí, když ten obrázek bude na stejném webu, ale místo rel. linkování se bude linkovat absolutně...
ad [Pif,barkuda,R.U.R.]: Ještě dovysvětlení: mělo by to asi stejnou funkci, jako když ten objekt zmizí po najetí myší. Když uživatel klikne pravým tlačítkem na ten obrázek-zobrazí se mu pouze menu pro nomální text. Je to stejná blbost jako psal 'plusminus+-', akorát to není omezeno JS ale CSS, a uživatel by třeba nemusel pátrat proč ten obrázek mizel...
Další věc je, když ten uživatel chce ten obrázek za každou cenu, tak si může vyfotit obrazovku (screenshot) a potom si to uložit, je to možná jednoduší než obcházet všechny ty ochrany. Ale pro nás je to asi neřešitelnej problém.
To sa asi prakticky neda urobit. Uz z principu !
Staci napr. pouzit teleport pro a vsetky obrazky sa pekne ponatahuju. :-)
Tohle je opravdu neřešitelnej problém. Pokud chceš zakázat stahování obrázků, tak co ví asi nejmíň lidí, je flash. Tím pádem zabráníš tak 50% uživatelů stáhnutí. Ale dalších 45% si najde program, aby to obešli a posledních 5% se s tím vůbec nebude štvát a hackne ti ftp. Takže se spíš zaměř jak dokonale opravdu potřebuješ ty obrázky skrývat před stáhnutím :o)
Jo, ten Flash už jsem navrhoval a zdá se to operavdu jako relativně dobré řeš.
PrintScreen: jde v JavaScriptu použít událost "stisk tlačítka PrtScr?"
lamersky dotaz> neslo by generovat pomoci php upraveny obrazek jako v toto: http://i.mobilem.cz/wallpapers/74021.gif ?
jo a pak uživatel zmáčkne klávesu PrintScreen a jseš v prdeli...
mno ale pak si ulozi ten 'znehodnoceny' obrazek...
Proti print screenu není obrana, ale mohlo by to bejt, aby se ty obrazky nacitaly prez php:
index.php: <img scr="obrazek.php?id=[naky id]&kontrola=<? echo time();?>">
obrazek.php:
<?
if((Time()-$kontrola)<=1):
//pokud zobrazeni indexu je maximalne o vterinu predem, nez natahovani obrazku, tak to projde
nacitani treba z db, nebo janevim z ceho
endif;
?>
Ale chytřejší si udějají php script:
<img scr="http://tvastranka/obrazek.php?id=[naky id]&kontrola=<? echo time()-60;?>">
a ma minutu na stažení..., pak by ta podminka byla
if((Time()-$kontrola)<=1 && ((Time()-$kontrola)>0):
atd.
a pak by se to zase obešlo
stažení lze zakázat jedině tím, že to nedáš k dispozici.
Soubor nenalezen. Mám ho předstírat? Abort/Retry/Fail/Ignore/Autodestruct?