Vlasterx
Čuven
- Učlanjen(a)
- 23.01.2004
- Poruke
- 4,992
- Poena
- 740
Krenuo sam da razmišljam malo u smeru optimizacije linkova za pretraživače i cilj mi je da umesto linkova tipa
dobijem preko mod rewrite-a linkove koji su ovog tipa
Tu postoje 3 GET varijable (language, category i item) koje bi se generisale preko PHP-a iz MySQL baze.
E sad, mod rewrite lepo radi posao kada je ceo link popunjen kako treba. Evo primera .htaccess koda:
Međutim, ako nastane problem, pa posetilac sajta ukuca npr.
sajt se zakuca jer link nije kompletan. Fali mu treća varijabla "item".
Ono što mene zanima je kako da u slučaju takvog nekompletnog linka posetilac bude preusmeren na neku drugu stranu? Npr. na root sajta?
Pokušao sam sa
Međutim to ne radi kako treba jer se onda ne procesuira drugo pravilo u slučaju da se link unese kako treba.
Kako da sredim ovaj problem? Kako da kažem Apache serveru da ako posle drugog slasha ništa nije uneto da koristi prvo pravilo, a ako jeste uneto da koristi drugo?
Kod:
www.sajt.com/index.php?language=english&category=3&item=2
Kod:
www.sajt.com/english/software/photoshop/
Tu postoje 3 GET varijable (language, category i item) koje bi se generisale preko PHP-a iz MySQL baze.
E sad, mod rewrite lepo radi posao kada je ceo link popunjen kako treba. Evo primera .htaccess koda:
Kod:
RewriteEngine on
RewriteRule ^([^/\.]*)/([^/]*)/([^/]*)/$? index.php?language=$1&category=$2&item=$3 [L]
Međutim, ako nastane problem, pa posetilac sajta ukuca npr.
Kod:
www.sajt.com/english/software/
sajt se zakuca jer link nije kompletan. Fali mu treća varijabla "item".
Ono što mene zanima je kako da u slučaju takvog nekompletnog linka posetilac bude preusmeren na neku drugu stranu? Npr. na root sajta?
Pokušao sam sa
Kod:
RewriteEngine on
RewriteRule ^([^/\.]*)/([^/]*) index.php?language=$1
RewriteRule ^([^/\.]*)/([^/]*)/([^/]*)/$? index.php?language=$1&category=$2&item=$3 [L]
Međutim to ne radi kako treba jer se onda ne procesuira drugo pravilo u slučaju da se link unese kako treba.
Kako da sredim ovaj problem? Kako da kažem Apache serveru da ako posle drugog slasha ništa nije uneto da koristi prvo pravilo, a ako jeste uneto da koristi drugo?
Poslednja izmena: