Stránka 1 z 1
Zakázání přístupu k souboru na mým webu z cizích odkazů
Napsal: čtv 1. úno 2007, 22:55
od jenda.69
Vážně nevím, jak to líp nazvat. Jde mi zkrátka o to, že mam na svým webu soubor a byl bych rád, kdyby šel stáhnout jedině přes odkaz na stránce třeba
www.example.org/cesta ... když by někdo použil třeba link z jinýho webu (třeba by někdo na stránky www.neci_cizi_web.com dal odkaz na muj soubor a někdo pak na něj klikl), tak by soubor nešel stáhnout a jen by to přesměrovalo na
www.example.org/cesta, kde by musel kliknout na odkaz k souboru a z toho by to šlo stáhnout... (nejlepší by bylo, kdyby soubor nešel stáhnout, ani kdyby někdo link na něj zkopíroval do adresovýho řádku -- tzn. že by byl bez refereru)
Snad jsem to napsal aspoň trochu srozumitelně..
Opravdu netuším, co hledat. Doufám, že to jde nějak třeba přes htaccess...
Napsal: čtv 1. úno 2007, 23:00
od [CZ]Airwolf[OC]
Jedine pres skripty generovat nahodne jmeno souboru a to pak pri kliknuti stahovat. jina cesta skoro neni.
Napsal: čtv 1. úno 2007, 23:06
od jenda.69
Fakt ne? Sakra... To je blbý, no, tak to budu asi muset udělat bez toho. Já jen chtěl, aby se někdo, když už někdo chce ten soubor stáhnout, aspoň koukl, co mam na webu. No nevadí. Já si jen řikal, jestli neni nějakej příkaz do toho htaccessu...
Napsal: čtv 1. úno 2007, 23:10
od [CZ]Airwolf[OC]
no v htaccess muzes zakazat pristup z venku, tim padem clovek musi pres nejake url, aby jsi na to pristoupil lokalne, jenze nezabranis tim copy a paste. jedine skript pro onetime pouziti generovaneho jmena.
Napsal: čtv 1. úno 2007, 23:20
od jenda.69
No, já na to zrovna koukam, problém je v tom, že to asi bude psát něco jako nenalezeno, když přijde někdo z venčí, ne? Kdyby to šlo udělat, že by ho to hodilo na tu stránku, tak by to stačilo aspoň takhle.. bez toho copy&paste se nějak obejdu...
//Našel jsem tohle
Kód: Vybrat vše
SetEnvIf Referer www\.domena\.tld povoleno
Order deny,allow
deny from all
Allow from env=povoleno
To funguje skoro tak, jak bych si přál, jenom nevim, co tam napsat, aby to místo 403 přesměrovalo na tu stránku, kam potřebuju //jo, to mam, nastavim jinou adresu u chyby 403 přes ErrorDocument//.
A když někdo ten soubor bude stahovat a pak bude chtít resume, tak to asi taky nepůjde, co?

Napsal: pát 9. úno 2007, 16:11
od mozek007
Mám asi nápad.
Kód: Vybrat vše
$odkud = $_SERVER['HTTP_REFERER'];
if ($odkud = "http://domenaOdkudMuzePrijit") {
$backlink= "http://domenaKdeJeSoubro.cz/soubor.exe";
header ("Location: $backlink");
}
else { echo "vypadni";
}
Napsal: pát 9. úno 2007, 18:47
od OndraSter
bacha na to, referer neni problem zakazat (myslimze Kerio to dela, v Opere se to da snad nastavit, v IE taky snad, atd atd atd atd..)
ja neco vymyslim
//
co treba nejakou kombinaci mod_rewrite (neucinny) a *.php?d=filename a tam by to kontrolovalo treba SESSION ktera by se vytvorila pri prohlizeni download sekce?
Napsal: pát 9. úno 2007, 18:56
od mozek007
OndraSter píše:bacha na to, referer neni problem zakazat (myslimze Kerio to dela, v Opere se to da snad nastavit, v IE taky snad, atd atd atd atd..)
Komu to vadí? Když si někdo referer zakáže, tak je to na škodu právě jemu - nedostane se k souboru! Už jsem se s tím setkal na zahraničním webu, že jsem klikal na download. Otevřela se mi stejná stránka a nic. Tak mi to bylo divný, napsal jsem kámošovi, jestli mu to jde stáhnout. Prej bez problému, pak jsem si všiml malým písmem - no referer. Tak jsem si ho pustil. Když si ho někdo zakáže, tak to bude na škodu právě jemu, ty ho na to upozorníš, a řekneš mu odkud má přijít.
Podobná realizace na základě cookies, u odkazu mu dáš koláš a pak ho před stažením zkontroluješ. Podle mě ideální řešení - chceš stahovat? Tak si povol cookei pro tento server.
Napsal: ned 18. úno 2007, 18:44
od jenda.69
Omlouvám se, že jsem se tu dřív neukázal..
mozek007: nakonec jsem to udělal docela podobně, jako píšeš ve svým příspěvku.
No a to s tim "no referer" budu muset ještě nějak vymyslet
