Gå til innhold

[Løst] komplekts htaccess redirect and rewrite loop problem


Anbefalte innlegg

Hei,

 

 

Har et htaccess problem jeg ikke klarer å fikse, så tyr nå til hjelp.

 

Har i dag en rewrite regel for å gjøre URL-en på sidene mer brukervennlige.

 

RewriteRule ^behandlere/([^/]+)/([0-9]+)$ ?content=behandlere&behandler=$2 [nc,L]

RewriteRule ^behandlere/$ /?content=behandlere [nc]

RewriteRule ^behandlere$ /?content=behandlere [nc]

 

 

Dette fungerer bra, men i tillegg ønsker jeg å redirecte de gamle linkene til siden til de nye linkene. Dette får jeg ikke til å fungere. Problemet er at jeg enten for "too many redirects" altså det går i loop, eller så får jeg 403 Forbidden "you don't have access to"

 

RewriteCond %{QUERY_STRING} ^content=behandlere&behandler=2$

RewriteRule ^(.*)$ /behandlere/anne-karin-gjørtz/2? [R=301]

 

 

I htaccess filen ser koden slik ut.

 

// Redirect gamle linker til nye

RewriteCond %{QUERY_STRING} ^content=behandlere&behandler=2$

RewriteRule ^(.*)$ /behandlere/anne-karin-gjørtz/2? [R=301]

 

// Rewrite for å få mer brukervennlige URL-er for brukeren og SEO grunner:

RewriteRule ^behandlere/([^/]+)/([0-9]+)$ ?content=behandlere&behandler=$2 [nc,L]

RewriteRule ^behandlere/$ /?content=behandlere [nc]

RewriteRule ^behandlere$ /?content=behandlere [nc]

 

Hvordan skriver jeg koden slik at de gamle linkene blir redirected til de nye og de nye blir omskrevet for å bli mer brukervennlige.

 

Håper noen kloke hoder kan hjelpe :) Takk

Endret av chris_83
Lenke til kommentar
Videoannonse
Annonse

Fikk det til til slutt:

 

## Ny rewrite rule for ny struktur

RewriteRule ^behandlere/([^/]+)/([0-9]+)$ index.php?content=behandlere&behandler=$2 [L]

RewriteRule ^behandlere/$ index.php?content=behandlere [L]

RewriteRule ^behandlere$ index.php?content=behandlere [L]

 

## Perminent redirect for gamle linker til ny - benyttet et skript for å lage en spesifikk RewriteRule for hver av de gamle linkene - PS!! Mange .htaccess filen er nå ca 4000 linjer

 

RewriteCond %{QUERY_STRING} ^content=behandlere$

RewriteRule ^$ /behandlere? [R=301,L]

RewriteCond %{QUERY_STRING} ^content=behandlere&behandler=2$

RewriteRule ^$ /behandlere/terapeut-navn/2? [R=301,L]

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...