Přesměrování URL

Počítače stolní, notebooky, tablety, tiskárny, scanery a vše, co nějak souvisí s PC

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

Přesměrování URL

#1 Příspěvek od jura80 »

Rád by jsem přesměroval některý starý, neexistující stránky ze svýho eshopu na nový stránky. Konkrétně např. tohle:

http://aesobchod.cz/product.php?id_product=121

Semhle:

http://aesobchod.cz/home/363-sada-rezis ... -kusu.html

A nemůžu s tím hnout. Dal jsem do .htaccess tohle:

RewriteEngine On

RewriteRule ^product.php?id_product=121$ http://aesobchod.cz/home/363-sada-rezis ... -kusu.html [QSA,R=301,L]

A nefunguje to. Nevíte někdo, kde by mohl bét problém?
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
Prochy
Příspěvky: 287
Registrován: 12 lis 2011, 01:00

#2 Příspěvek od Prochy »

S .htaccess nemám přímo zkušenosti, ale podle mě máš minimálně chybu, že speciální znaky, který se používají v regulárech, nemáš escapovaný.

product\.php\?id_product=121$

Ten znak ^ znamená začátek textu, takže bych ho taky vynechal. Ale nejsem si tím jistý, ale třeba to bude fungovat. :)

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#3 Příspěvek od jura80 »

Děkuju za radu, ale ani takhle to nefunguje.

Je ale zajímavým, že když dám např.:

RewriteRule ^a$ http://aesobchod.cz/home/363-sada-rezis ... -kusu.html [QSA,R=301,L]

Tak to funguje a přesměrovává to z adresy

aesobchod.cz/a

na adresu

aesobchod.cz/home/363-sada-rezistoru-yageo-0805-3400-kusu.html

Takže zakopané kocór a jádro kočky bude asi někde v té první adrese...
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

p32
Příspěvky: 15069
Registrován: 13 led 2007, 01:00
Bydliště: Olomouc

#4 Příspěvek od p32 »

Jen tak mimo, proč tam máš takové divné ceny?

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#5 Příspěvek od jura80 »

Jaký "divný ceny"? Co je "divná cena"?

____________________________

Teď jsem k tomu zase na chvilku sednul a zjistil jsem, že to nechce sežrat všechno, co je za otazníkem. Takže když to zapíšu takhle, ještě to normálně funguje a přesměrovává:

^product.php?$

Ale jak tam dám celou adresu, tj.:

^product.php?id_product=121$

Tak už to nejede.
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#6 Příspěvek od jura80 »

Pánové, no já jen čučím. Dal jsem tam dvojtý zápis (v rámci toho experimentování) a najednou to funguje:

RewriteRule ^product.php?id_product=121$ http://celá cílová adresa [QSA,R=301,L]

RewriteRule ^product.php?$ http:/celá cílová adresa [QSA,R=301,L]

Tohle fakt nechápu...
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
pocitujlasku
Příspěvky: 1757
Registrován: 12 pro 2005, 01:00

#7 Příspěvek od pocitujlasku »

Skus toto:

Kód: Vybrat vše

RewriteCond %{QUERY_STRING} ^http://aesobchod.cz/product.php?id_product=121
RewriteRule ^http://aesobchod.cz/home/363-sada-rezistoru-yageo-0805-3400-kusu.html [L,QSA]
Mozno to bude este potrebne doladit, pisem to z hlavy.
RewriteRule totiz pracuje len s tym co je pred ? ak chces celu adresu, tak to musis urobit cez rewritecond.
Lenze taketo veci sa robia dynamicky, kedy uz php pri generovani stranky prevadza odkazy na "pekne url"
No vidis, a tak si sa bal

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#8 Příspěvek od jura80 »

Díky. Pořád 404, stránka není dostupná, bez přesměrování...
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#9 Příspěvek od jura80 »

Já asi začínám tušit, kde je zakopané kocór.

Ten otazník, co je v původní adrese, tak za ním měla bét nějaká data pro skript ( https://www.jakpsatweb.cz/html/url.html )- no tož a ten asi pak ještě adresu dál přesměroval na konkrétní produktovou stránku. A páč se tohle může dít, tak to pak přesměrování v .htaccess nebere, páč to asi čeká na popovídání si s nějaký skriptem, co už ale dávno ani neexistuje. Takže mně to ani nemůže a nemohlo fungovat.

Řešení: Budu prostě přesměrovávat jen product.php?. Pak to bude přesměrovávat cokoli bez ohledu na to, co je za "?". Lepčí než nic...

Teda, pokud néni lepčích nápadů...
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
Prochy
Příspěvky: 287
Registrován: 12 lis 2011, 01:00

#10 Příspěvek od Prochy »

Ale já když najedu na tvůj odkaz:
http://aesobchod.cz/product.php?id_product=121
Tak mě to přesměruje http://aesobchod.cz/home/363-sada-rezis ... roduct=121

Tos přeci chtěl, ne? Doufám, že to testuješ v anonymním okno, jakmile změníš htaccess,ne? Pokud ne, tak prohlížeč si ten soubor načte jen jednou za čas, musel by si vymazat cookies. Na to je lepší využít anonymní mód.

Uživatelský avatar
Prochy
Příspěvky: 287
Registrován: 12 lis 2011, 01:00

#11 Příspěvek od Prochy »

A ano, cena 250,2400 Kč s DPH je opravdu divná. Nějak si pod tím neumím představit správnou cenu. Má to být 250,24 Kč? Asi by mě to trochu odrazovalo ten nestadartní zápis.

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#12 Příspěvek od jura80 »

Pořád nevím, co se vám na těch cenách nebo zápisech nezdá. Normální číslo, jak nás to učili ve školách. TME to má taky na hromadu desetinných míst a nikdo jste se tady nad tím (troufám si tvrdit) ještě nepozastavoval. Farnell myslím taky tak. Tak proč u mýho eshopu jo, krucinál?
Prochy píše:Ale já když najedu na tvůj odkaz:
http://aesobchod.cz/product.php?id_product=121
Tak mě to přesměruje http://aesobchod.cz/home/363-sada-rezis ... roduct=121

Tos přeci chtěl, ne? Doufám, že to testuješ v anonymním okno, jakmile změníš htaccess,ne? Pokud ne, tak prohlížeč si ten soubor načte jen jednou za čas, musel by si vymazat cookies. Na to je lepší využít anonymní mód.
Jo, chtěl i nechtěl. Radši by jsem byl, kdyby to product=121 přesměrovávalo jinam než třeba product=222 . Těch starých nefunkčních odkazů na můj web je totiž povícero. Ale takhle to taky stačí. Taky se mně trochu nezamlouvá ten konec výsledné adresy (pohleď co je za html). Ale jsu rád, že aspoň takhle to funguje.
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
rnbw
Příspěvky: 32312
Registrován: 21 bře 2006, 01:00
Bydliště: Bratislava

#13 Příspěvek od rnbw »

Tak si vytvor ten product.php a presmerovanie urob v nom.

Ja sa vyhybam pouzitiu mod_rewrite, ak je to aspon trochu mozne.

Uživatelský avatar
jura80
Příspěvky: 908
Registrován: 05 lis 2011, 01:00
Bydliště: Boskovice
Kontaktovat uživatele:

#14 Příspěvek od jura80 »

Myslíš, že kdyby jsem to uměl, tak se tady budu vyptávat na věci, co jsou pro jiný banalitou?
Nejsu žádným fóristem, ale když něco negómu, tož, přindu se zeptat. A když se nesnesitelně nudím, nebo když jsu na plech, někdy se může stát, že se i pokusím poradit. Zdraví Jura!

Uživatelský avatar
rnbw
Příspěvky: 32312
Registrován: 21 bře 2006, 01:00
Bydliště: Bratislava

#15 Příspěvek od rnbw »

Staci nieco trivialne ako:

Kód: Vybrat vše

<?php
switch ($_GET['id_product']) {
case 121: header('Location: http://aesobchod.cz/home/blabla');
case 222: header('Location: http://aesobchod.cz/home/zxcvb');
default: header('Location: http://aesobchod.cz/');
}
?>

Odpovědět

Zpět na „Výpočetní technika“