Autor | Zpráva | ||
---|---|---|---|
jindrakuba Profil |
#1 · Zasláno: 31. 10. 2014, 00:06:21
Zdravím,
potřeboval bych poradit s přesměrováním pomocí .htaccess souboru. Mám adresu : /cokoliv/novinky/stranka Potřebuji dostat adresu : /novinky/stranka cokoliv a stranka jsou proměnné (berte jako náhodné slovo) Zkoušel jsem toho už hodně, ale vůbec si nevím rady jak na to... Neví někdo, jak by vypadal zápis? |
||
juriad Profil |
Toto vezme jakoukoli adresu, která obsahuje tři části oddělené lomítky a tu první část zahodí. Toto je obecnější než chceš:
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /$2/$3 Chceš-li to aplikovat jen na novinky: RewriteRule ^([^/]*)/(novinky)/([^/]*)$ /$2/$3 RewriteRule ^([^/]*)/novinky/([^/]*)$ /novinky/$2 # bez zapamatováni novinek RewriteRule ^[^/]*/novinky/([^/]*)$ /novinky/$1 # bez zapamatování první části Význam těch znaků: (...) - závorka je část, kterou si má uložit do proměnné $n, kde n je pořádové číslo závorky [...] - je seznam povolených znaků [^/] - povolí vše kromě (vyjádřeno ^) lomítka (týká se jednoho znaku) ...* - libovolný počet opakování vzoru ... ^, $ na začátku a na konci říká, že je to začátek a konec Tedy ten úplně první výraz čti jako: začátek, lomítko, libovolný počet nelomítek zapamatovaný, lomítko, libovolný počet nelomítek zapamatovaný, lomítko, libovolný počet nelomítek zapamatovaný, konec |
||
jindrakuba Profil |
#3 · Zasláno: 31. 10. 2014, 10:19:07
juriad, moc děkuji. Povedlo se ti vyřešit celý problém + jsi mi dovedl podat informaci tak, že jsem vše pochopil :) Díky moc!
|
||
Časová prodleva: 4 měsíce
|
|||
Jackill Profil |
Dobrý den,
mám podobný problém, ale trochu se liší: Mám stránky kategorií, které systém nedovolí jednoduše upravit, proto si musím poradit přes .htaccess. Příklad kategorie: http://www.pokeria.cz/6-5-karty-na-poker potřebuji vždy odstranit první číslici (nebo číslo) a pomlčku, tedy aby tvar byl: http://www.pokeria.cz/5-karty-na-poker nebo jiný příklad: http://www.pokeria.cz/47-46-08-sport-a-volny-cas změnit na http://www.pokeria.cz/46-08-sport-a-volny-cas Zároveň jsou tam ale stránky typu: http://www.pokeria.cz/content/1-obchodni-podminky u kterých naopak musí celá URL zůstat, tedy něco jako dát tam podmínku, že v té sekvenci nesmí být "content". Půjde to vůbec? |
||
Keeehi Profil |
RewriteRule ^\d+-(.*)$ $1 |
||
Kajman Profil |
#6 · Zasláno: 26. 2. 2015, 23:14:25
Jackill:
Moc nechápu, jak by měl server poznat, že 46-08-sport-a-volny-cas je už konečná varianta a nemá se přesměrovat pro ostranění čísla 46 podobně, jak při odstranění čísla 6 v prvním příkladě. |
||
Davex Profil |
#7 · Zasláno: 26. 2. 2015, 23:25:23
Jackill:
„Mám stránky kategorií, které systém nedovolí jednoduše upravit, proto si musím poradit přes .htaccess.“ Změnit strukturu adres bez úpravy systému mi nedává smysl. Ten systém by se měl minimálně upravit, aby vytvářel odkazy v požadované podobě a dokázal nové adresy správně zpracovat. Řešit něco podobného v konfiguraci webserveru je špatná cesta. |
||
Časová prodleva: 9 let
|
0