mod_rewrite hjälp ! snälla !

Tråden skapades och har fått 2 svar. Det senaste inlägget skrevs .
1

Hej !

Jag har kört fast och behöver hjälp .. snälla .. säkert enkelt för er som kan ..

jag håller på med mod_rewrite i apachce och önskar nå följande resultat

mindomän.com/bransch/namnpåbransch.php?id=2 - >
mindomän.com/data.php?name=namnpåbransch&id=2

men skall också fungera med

mindomän.com/bransch/namnpåbransch.php?sida=2&info=5 - >
mindomän.com/data.php?name=namnpåbransch&sida=2&info=5

eller

mindomän.com/bransch/namnpåbransch.php?vad=1&som=2&helst=889&här=42 - >
mindomän.com/data.php?name=namnpåbransch&vad=1&som=2&helst=889&här=42

hur ser en korrekt rewriterules ut för detta ?

har inte kommit lägnre än så här ..
RewriteRule ^bransch/(.*).php /data.php?name=$1

Senast redigerat 2007-02-22 10:10
  • Medlem
  • Varberg
  • 2007-02-22 22:04

Jag gissar hejvillt nu, men funkar följande:

RewriteRule ^bransch/(.*).php(.*) /data.php?name=$1&$2

  • Medlem
  • Piteå
  • 2007-03-14 18:15

Eftersom du har tänkt köra rewrites så tycker jag det är lika bra att du gör det ordentligt ur sökmotorsperspektivet. Querystrings är ju ett problem för dessa, så kör på en "fejkad" mappstruktur istället. Sen är inte .* optimalt ur bl.a. säkerhetssynpunkt.

jag skulle ha gjort /bransch/namnpåbransch/, sen /bransch/namnpåbransch/bla1/bla2/bla3/ osv.

Dock måste ju GET-variabelns namn vara bestämd i förväg, (t.ex. ?vad=xxx, där vad är bestämd). Hursomhelst:

RewriteRule ^bransch/([A-Za-z0-9]+)/$ data.php?name=$1 [QSA,L]

RewriteRule ^bransch/([A-Za-z0-9]+)/([A-Za-z0-8]+)/$ data.php?name=$1&bla=$1 [QSA,L]

osv. för varje undernivå som ska finnas. A-Za-z0-9 är vilka tecken som ska vara accepterade.

1
Bevaka tråden