Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Htaccess hulp gevraagd om situatie om te keren

Pagina: 1
Acties:

Vraag


  • sdk1985
  • Registratie: Januari 2005
  • Laatst online: 15:09
Ik heb recentelijk een migratie gedaan van www.domain.com/nl naar nl.domain.com. Dat ging met de htacces goed, alleen niet met de Google indexering. Dus ik wil helaas weer terug naar de oude situatie.

De code die ik voor de verhuizing gebruik is de volgende:
code:
1
2
3
4
5
RewriteEngine On
RewriteBase / 
#if not already blog.website.com
RewriteCond %{HTTP_HOST} !^nl\.pcinside\.info$ [NC] 
RewriteRule ^(nl)/(.*)$ http://$1.pcinside.info/$2 [L,R=301]

Deze zet stript /nl/ uit de url en verwijst naar subdomein nl in plaats van www.

Nu moet ik de zaak omkeren. Dus het subdomein wordt weer www. Vervolgens moet er na de domeinextensie /nl/ tussen gekomen.

Voorbeeld: nl.domain.com/category/article-name-12345 >>> www.domain.com/nl/category/article-name-12345

Nu doe ik mijn best om htaccess te begrijpen (vandaar dat de comments er nog in staan, aangepast code example) maar het symbool gebruik in dit voorbeeld ging eigenlijk mijn pet al te boven. Ik snap dat $1 nl is en $2 de rest van de string is. Maar hoe ik nu de syntax correct krijg voor de nieuwe situatie, geen idee!

Is er iemand met wat meer programmeer ervaring die hierbij wil helpen?

Mijn beste gok is:
code:
1
2
3
4
5
RewriteEngine On
RewriteBase / 
#if not already blog.website.com
RewriteCond %{HTTP_HOST} !^www\.pcinside\.info$ [NC] 
RewriteRule ^(nl)/(.*)$ http://www.pcinside.info/$1/$2 [L,R=301

[ Voor 15% gewijzigd door sdk1985 op 13-01-2016 23:56 ]

Hostdeko webhosting: Sneller dan de concurrentie, CO2 neutraal en klantgericht.

Alle reacties


  • GlowMouse
  • Registratie: November 2002
  • Niet online
RewriteRule ^(nl)/(.*)$ http://$1.pcinside.info/$2 [L,R=301]
Deze regel is een beetje raar. Waarom zou je haakjes zetten om een vooraf bekende string om er daarna met $1 naar te verwijzen?
RewriteRule matcht de URL, niet de hostnaam. Je RewriteRule zal dus geen 'nl' meer moeten bevatten.

  • sdk1985
  • Registratie: Januari 2005
  • Laatst online: 15:09
Thanks. Ik snap maar de helft wat er überhaupt gebeurd :P. Geloof dat ik hem nu door heb:

code:
1
2
3
4
5
RewriteEngine On
RewriteBase / 
#if not already blog.website.com
RewriteCond %{HTTP_HOST} !^www\.pcinside\.info$ [NC] 
RewriteRule ^(.*)$ http://www.pcinside.info/nl/$1 [L,R=301]

Kan de rewritecondition weg omdat de het subdomain in zijn eigen hosting account staat waar alleen nl users komen?

[ Voor 46% gewijzigd door sdk1985 op 14-01-2016 00:44 ]

Hostdeko webhosting: Sneller dan de concurrentie, CO2 neutraal en klantgericht.


  • GlowMouse
  • Registratie: November 2002
  • Niet online
Dan kan die RewriteCond weg ja.

  • sdk1985
  • Registratie: Januari 2005
  • Laatst online: 15:09
Ik kreeg eerst een een "the page is not redirecting properly". In de tester ging het wel goed: http://htaccess.mwl.be/. Blijkt dat ik per ongeluk de redirect van www naar nl weer aangezet |:( . Dus dat werd een eeuwige loop. Ik probeer het even opnieuw.

edit: Als het goed is werkt het nu: http://goo.gl/qjkMTt *O* .



Als we hier dan toch bezig zijn...

Iets anders waar ik niet uit kwam zijn de hoofd categorieën. Het "probleem" is dat wordpress graag het woord /category/ voor overzichtspagina's zet. Terwijl individuele posts het woord category weglaten.

Geen probleem tot je gaat herschrijven met 301 redirects. Immers als ik deze rewrite maak

code:
1
2
3
4
5
#redirect 301 /tips /category/tips/
#redirect 301 /tips/processor /category/tips/processor/ 
redirect 301 /tips/processor/87-prestatie-overzicht-mobiele-processor-2014 /beste-koop/prestatie-overzicht-mobiele-processor-2014/
redirect 301 /tips/processor/86-welke-processor-zit-er-in-mijn-pc /tips/processor/welke-processor-zit-er-in-mijn-pc/
redirect 301 /tips/processor/90-intel-haswell-20-keer-zuiniger-in-idle-en-grafisch-twee-keer-sneller /tips/processor/intel-haswell-20-keer-zuiniger-in-idle-en-grafisch-twee-keer-sneller/


Dan werkt dat prima voor de categorie. Tot je een artikel bekijkt... Want ook die worden dan "aangetast" en krijgen /category/ ertussen gepropt en dat wordt een 404 error. Daarom staat er nu maar een hekje voor.

Ik heb dus een redirect nodig die alleen triggered voor de exacte url "/tips /category/tips/" en verder alles met rust laat op het moment dat er meer tekens volgen. Is dat mogelijk???

[ Voor 136% gewijzigd door sdk1985 op 14-01-2016 00:45 ]

Hostdeko webhosting: Sneller dan de concurrentie, CO2 neutraal en klantgericht.


  • GlowMouse
  • Registratie: November 2002
  • Niet online
Dat is mogelijk, maar niet met redirect. RedirectMatch en RewriteRule werken wel, dan dan moet je eens opzoeken wat een $ betekent.

  • sdk1985
  • Registratie: Januari 2005
  • Laatst online: 15:09
Oké $ (end of string) :P.

code:
1
RewriteRule    ^nl/tips$    /nl/category/tips/    [L,R=301]

Gaat dit werken? Of heb ik de . nodig om de hostname mee te pakken?

[ Voor 0% gewijzigd door sdk1985 op 14-01-2016 01:42 . Reden: /nl>nl ]

Hostdeko webhosting: Sneller dan de concurrentie, CO2 neutraal en klantgericht.


  • GlowMouse
  • Registratie: November 2002
  • Niet online
Dat werkt.

  • sdk1985
  • Registratie: Januari 2005
  • Laatst online: 15:09
Hij pakt nu semi-willekeurige artikelen (!).

Probeer deze maar eens (/nl/tips/moederbord/):
http://goo.gl/5uuF31
Resultaat is het eerste artikel uit die categorie, in plaats van mijn regel.

Dit is overigens de hele .htaccess: http://pastebin.com/KcdZqBvP

[ Voor 28% gewijzigd door sdk1985 op 14-01-2016 01:43 ]

Hostdeko webhosting: Sneller dan de concurrentie, CO2 neutraal en klantgericht.


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • sdk1985
  • Registratie: Januari 2005
  • Laatst online: 15:09

Hostdeko webhosting: Sneller dan de concurrentie, CO2 neutraal en klantgericht.

Pagina: 1