Zdravím,
dělám přesměrování pomocí php, standardní metodou:
header("Location: http://www.neco.cz")
Mám s tím bohužel menší problém, který bych potřeboval vyřešit. Ačkoliv dojde k přesměrování, tak v liště s adresou je pořád stará url.
Příklad:
původní sajt = http://www.prvni.cz
zavolám header("Location: http://www.druhy.cz")
dojde k presmerovani na http://www.druhy.cz
nicmene lišta s adresou stále ukazuje http://www.prvni.cz
Bohuže se mi to nepodařilo vygooglovat.
Za jakoukoliv pomoc budu vděčný.
J.
P.S.: K žádnému html výstupu předtím zcela určitě nedochází (to by konec konců nedošlo ani k tomu redirectu).
<HTML>Nešlo by hodit odkaz na ten váš pokus, abychom se mohli přesvědčit?</HTML>
Doporucuji hledat chybu u prijimace - myslim tim prohlizec..
Pokud se totiz opravdu deje to, co tvrdite, tak to neni problem serveru. - Server jen vrati novou adresu s informaci "ja uz ti nic nedam, pokracuj tady (adresa)..". Prohlizec by mel zmenit adresni radek a vyslat novy pozadavek na novou adresu...
Prikladam se k Nipalove prosbe - mohli bychom videt pokus v praxi?
Ačkoliv se tady nezmínilo konkrétní řešení, tak přece jenom to posloužilo účelu. Napadlo mě, že to s největší pravděpodobností dělají frames. Využívám "triku", který jsem někde našel, na skryvání adresy (rozumněj, lze vidět pouze doménu a ne předávání parametrů, etc.)
Konkrétně:
//index.html
<frameset rows="*">
<frame src="index.php">
</frameset>
Už dlouho přemýšlím, že vypustím tento "trik" (nevalidní), ale nějak jsem se ještě pořád nerozhoupal (dělá to, co od toho čekám).
Kdybyste znali jiný, který řeší tuto věc, rád vyměním :)
K původnímu dotazu. Nikdy mě nějak nenapadlo, že header provede přesměrování pouze toho konkrétního framu, ale je to asi zřejmé. To by vysvětlovalo neměnící se původní adresu.
To mě vede k formulaci další otázky. Existuje tedy nějaký parametr pro header(), který by provedl kompletní redirect stránky?
A proč chceš skrývat adresu? Nemá to žádný význam a jenom to dělá problémy návštěvníkům.
=Jiří Janák=
>"Existuje tedy nějaký parametr pro header(), který by provedl kompletní redirect stránky?" Neexistuje. (nee v PHP, slo by to s pomoci JavaScriptu) Protoze stranka vlozena v ramci se chova jako uplne samostatna stranka. Server tedy netusi, jestli mas stranku v ramu nebo ne.
"Kdybyste znali jiný, který řeší tuto věc, rád vyměním :)"
Toto skrývání adresy do jisté míry můžes ovlivnit s mod_rewrite .. (ale zrejme ne tak, jak by sis asi predstavoval :))
Dale bych navazal na Kita - opravdu toto reseni potrebujes? Pripada ti, ze prinasi nejakou vyhodu? At uz pro tebe nebo pro navstevniky? IMHO Takoveto napul schovavani adresy muze jen zmast - protoze kdyz si pak navstevnik zobrazi stranku bez vrchniho ramce, dostane stejny obsah :)
K té metodě:
Význam to určitě nějaký má :) Ve zkratce:
(a) web nepotřebuje a nechce, aby uživatelé chodili na konkrétní stránky, ale proklikali se z první (samozřejmě toto řešení nefunguje absolutně).
(b) neuvádí "v pokušení" návštěvníky, aby si hráli s parametry. Neříkám, že by tím něco zmohli, ale ruku na srdce, kdo se je (v komplexním webu) jistý kontrolou všech parametrů. Samozřejmě ten, kdo si chce hrát a má základní znalost html, tak si načte rovnou ten vnitřní frame.
(c) kdysi mi takováto adresa připadala hezčí. Lol, totálně subjektivní a nepodstatné kritérium.
Závěrem:
Opravdu toto řešení považuju spíš za přežitý než aktuální. V původním postu mi taky nešlo vůbec o toto řešení, ale něco jiného. Na dvou ze svých subdomén už ho ani nepoužívám.
Každopádně díky za rady a tipy.
J.J.
http://www.matros.cz
Nemam rád, když autor webu ví nejlíp, jak se na něm mají návštěvníci chovat. A fakt nemám rád když si uložím záložku na podstránku a hodí mě to na homepage, to je dost otravný. Stejně pak zkoumám, jak to udělat abych se objevil na tý podstránce kde chci, takže mě to nezastaví, jen mě to zdržuje.
A největší skupina návštěvníků si s parametrama hrát nebude pač je to ani nenapadne. A z těch, který to napadne, většina pozná, že je to v rámu, a otevře si jen ten vnitřek toho rámu a bude si hrát. Takže je to podobně bezzubý jako zakazování pravýho myšítka, aby si lidi nemohli zobrazit zdrojovej kód.
Pro hezkou adresu se používá apache mod_rewrite, můžu jen doporučit. Ona adresa www.dfh.cz/cenik vypada mnohem lip nez www.dfh.cz/adffvlhbadfjk.php?url=cenik&sgbs=sbsgb
A úplně na závěr: je v javascriptu nějakej trik, jak na stránce zjistit, že si ji někdo otevřel v rámu, a vyskočit z něj. Ale tohle není ta nejlepší cesta kterou se ubírat. Rámy jsou pěkný, ale ne moc :-)