2011-09-19 5 views
0

Je cette htaccess:Mod_rewrite utilise seulement quelques règles

RewriteEngine On 
RewriteRule ^tuote\.php/([^/]+) tuote.php?data=$1 [L] 
RewriteRule ^ryhma\.php/([^/]+) ryhma.php?data=$1 [L] 

RewriteRule ostoskori ostoskori.php [L] 
RewriteRule ^lisaa\/([^/]+) ostoskori.php?a=4&data=$1 [L,NC] 
RewriteRule ^lisaa-ostoskoriin/([^/]+) ostoskori.php?a=1&data=$1 [L,NC] 
RewriteRule tyhjenna-ostoskori ostoskori.php?a=2 

RewriteRule ^vahenna\/([^/]+) ostoskori.php?a=3&data=$1 [L,NC] 
RewriteRule ^poista\/([^/]+) ostoskori.php?a=5&data=$1 [L,NC] 

Quand j'accéder lisaa-ostoskoriin, il semble doesnt travail et de se connecter ostoskori.php mais il doit se connecter ostoskori.php?a=1&data=$1. Lorsque j'accède tyhjenna-ostoskori, il ne fonctionne pas et semble se connecter ostoskori.php mais il devrait ostoskori.php?a=2.

Tous les autres fonctionneront, mais ceux-ci sont seulement cela ne fonctionne pas. Comment dois-je modifier le code pour le faire fonctionner mieux?

Exemples d'URL
http://somesite.com/tuote/1-Product-name ->tuote.php?data=1-Product-name http://somesite.com/ryhma/1-Category-name ->ryhma.php?data=1-Category-name http://somesite.com/ostoskori ->ostoskori.php
http://somesite.com/lisaa/1-Product-name ->ostoskori.php?a=4&data=1-Product-name http://somesite.com/lisaa-ostoskoriin/1-Product-name ->ostoskori.php?a=1&data=1-Product-name

+0

Il serait bon d'avoir quelques exemples d'URL avec lesquels travailler. Vos règles devraient-elles s'appliquer à la base de l'URL, par exemple? ^/lisaa /? – unNamed

+0

@unNamed J'ai ajouté quelques exemples, regardez s'ils sont meilleurs maintenant! – Olli

Répondre

1

Essayez ceci:

RewriteEngine On 
RewriteRule ^/(tuote|ryhma)\.php/([^/]+) $1.php?data=$2 [L] 

RewriteRule ^/lisaa-ostoskoriin/([^/]+) ostoskori.php?a=1&data=$1 [L,NC] 
RewriteRule ^/tyhjenna-ostoskori ostoskori.php?a=2 [L] 
RewriteRule ^/vahenna/([^/]+) ostoskori.php?a=3&data=$1 [L,NC] 
RewriteRule ^/lisaa/([^/]+) ostoskori.php?a=4&data=$1 [L,NC] 
RewriteRule ^/poista/([^/]+) ostoskori.php?a=5&data=$1 [L,NC] 

RewriteRule ^/ostoskori ostoskori.php [L] 

Je ne l'ai pas testé moi-même tho. Mais l'ordre et l'expression rationnelle sont assez importants ici, puisque chaque match suivant entraîne une substitution.

+0

Merci. Ça m'a aidé. Mais j'ai dû enlever le '/' avant les règles. – Olli

Questions connexes