ZoRaC Skrevet 7. juli 2008 Del Skrevet 7. juli 2008 Kjører samme system på 2 domener. På den ene kjører den rett fra rot (http://side.no) og på den andre kjører den i submapper (http://side2.no/mappe1/mappe2). Jeg skal legge en .htaccess fil på rot på den ene og i mappe1/mappe2 på den andre. Kan noen fortelle meg hvordan jeg skal få denne rewrite_rulen til å funke? # Nyheter (http://side.no/<sideID>/nyhet/<nyhetID>/) RewriteRule ^([0-9]+)/nyhet/([0-9]+)/([^/]*)/$ /index.php?side=$1&nyhet=$2 [L] RewriteRule ^([0-9]+)/nyhet/([0-9]+)/([^/]*)$ /index.php?side=$1&nyhet=$2 [L] Lenke til kommentar
OISNOT Skrevet 7. juli 2008 Del Skrevet 7. juli 2008 Du bruker ikke 3dje argumentet i regexen for php filen. Ikke at det trengs, men du burde gi en eksempel url hvis du vil matche den... Ikke sikker, kanskje slik? RewriteRule /([0-9]+)/nyhet/([0-9]+)/?$ /index.php?side=$1&nyhet=$2 index.php?side=$1&nyhet=$2 Ikke sikker på regex i mod_rewrite... Lenke til kommentar
Lokaltog Skrevet 7. juli 2008 Del Skrevet 7. juli 2008 Du bruker ikke 3dje argumentet i regexen for php filen. Ikke at det trengs, men du burde gi en eksempel url hvis du vil matche den...Ikke sikker, kanskje slik? RewriteRule /([0-9]+)/nyhet/([0-9]+)/?$ /index.php?side=$1&nyhet=$2 index.php?side=$1&nyhet=$2 Ikke sikker på regex i mod_rewrite... Er du helt surrete? Det tredje argumentet for en RewriteRule er flags. PHP har ingenting med Apaches .htaccess-filer å gjøre. Ikke svar når du ikke vet om svaret ditt er riktig, fordi du ikke er kjent med det du prøver å svare på. Da kaster du bare bort alles tid. RewriteRule tar to argumenter for å fungere: RewriteRule Pattern Substitution Til trådstarter: Jeg skjønner ikke regexene dine helt. Hvis du ønsker at /[iD]/nyhet/[iD]/ skal redirectes til index.php?side=[iD]&nyhet=[iD], så legger du følgende regler i .htaccess i webroot: RewriteEngine on RewriteRule ^([0-9]+)/nyhet/([0-9]+)/?$ index.php?side=$1&nyhet=$2 Med mindre du har mange regexer og spesielle krav, trenger du ikke L-flagget i reglene dine. Jeg skjønner heller ikke helt hva du bruker denne til, siden du fanger den opp, men ikke bruker den i substitution-uttrykket: ([^/]*)/. Derfor har jeg fjernet den fra reglene ovenfor. Lenke til kommentar
OISNOT Skrevet 8. juli 2008 Del Skrevet 8. juli 2008 Er du helt surrete? Det tredje argumentet for en RewriteRule er flags. PHP har ingenting med Apaches .htaccess-filer å gjøre.Ikke svar når du ikke vet om svaret ditt er riktig, fordi du ikke er kjent med det du prøver å svare på. Da kaster du bare bort alles tid. RewriteRule tar to argumenter for å fungere: Hysj. Med det tredje argumentet mente eg ([^/]*) i regex. Så ikke eg postet index.php?side=$1&nyhet=$2 to ganger. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå