webForumDet fria alternativet

htaccess redirect funkar inte - tar med del av url

Webbservrar

6 svar · 2 096 visningar · startad av Sharkie

Medlem sedan okt. 20031 000 inlägg
Frågan#1

INGEN kan räkna ut vad rubriken betyder... :)

Jag försöker haxxa sönder min htaccess-fil men får inte mina försök att funka (ja, google har varit en vän, men vi är numera ovänner).

Det jag vill åstadkomma är:
www.domän.se/del1/del2/?en-kod

skall skickas till
www.domän.se/blaha/

När jag försöker så läggs alltid /del2/?en-kod till, så det blir:
www.domän.se/blaha/del2/?en-kod

/del2/ och ?en-kod kan vara olika varje gång, men jag vill allt A L L T som kör börjar på /del1/ ska skickas vidare, och jag är inte intresserad av resten av strängen - det ska bort.

Provat RedirectMatch, Redirect, RewriteCond och RewriteRule-varianter, men antingen failar det helt (404) eller så blir det fel adress som ovan.

Hjäääälp!? :)

Medlem sedan jan. 2005953 inlägg
#2

Detta fungerar för mig.

RedirectMatch 301 ^/del1/.*$ http://www.domän.se/blaha/

Edit: hmm... nej QueryString följde tydligen med iaf ...

Edit 2:
Om du kör på Apache 2.4 eller nyare kan du ange flaggan QSD i en RewriteRule

RewriteRule ^del1/.*$ http://www.domän.se/blaha/ [L,R=301,QSD]
Medlem sedan juni 2012581 inlägg
#3

http://www.wegtam.net/article/use-htaccess-rewritecond-and-rewriterule-redirect-your-urls-your-apache-webserver

Läs lite om RewriteCond. Där bör du ha din lösning. :)

Medlem sedan okt. 20031 000 inlägg
#4

metalboy: Ja, som du såg så funkade inte första koden :)
Ditt andra förslag är säkert bra, men Binero verkar inte ha senaste Apache, för jag fick error på servern :S

prplxr: Tack för förslaget. När jag blir arg och orkar läsa på om den där röran så gör jag nog det. Länken var kanske inte den matnyttigaste dock :)

Bråkar vidare efter nån bra lösning.

Medlem sedan juni 2012581 inlägg
#5

Uhu, ledsen, ögnade bara som hastigast igenom det första. Tyckte mig se lösningen på din fundering där, men jag hade fel.

Kanske kan något sådant här ge dig en knuff i rätt riktning:
http://stackoverflow.com/questions/16156301/htaccess-remove-query-string

Medlem sedan maj 20031 682 inlägg
#6

Kanske den här kan hjälpa dig?

http://www.htaccessredirect.net/

/red

Läste inte tråden riktigt... Testa denna kod?

RewriteRule ^dell1/(.*) http://www.domän.se/blaha/ [R=301,L]
Medlem sedan okt. 20031 000 inlägg
#7

Akerlundh skrev:

Läste inte tråden riktigt... Testa denna kod?

RewriteRule ^dell1/(.*) http://www.domän.se/blaha/ [R=301,L]

Här kommer jag, "Mr. Svarar snabbt som as"... :)
Jag har provat den koden också och det gör att ?en-kod=123 läggs på på adressen i alla fall.

Det är ju något bättre, för då kommer man i alla fall till rätt sida och inte 404, men jag vill ju rensa bort även ?en-kod= från URL :)

253 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
116 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)