[apache] mod_rewrite subdomein

Pagina: 1
Acties:

  • Sosabowski
  • Registratie: Juni 2003
  • Laatst online: 18-12-2025
Ik heb een site met een subdomijn. Op de server zit het subdomein in een subfolder.
http://domein.com = /home/user/public_html
http://sub.domein.com = /home/user/public_html/sub
http://domein.com/sub = /home/user/public_html/sub

Dus alles wat in sub staat is te bereiken via zowel sub.domein.com als domein.com/sub. Graag wil ik request die vragen naar domein.com/sub/* verwijzen naar sub.domein.com/*

Ik ben tot hier gekomen:
code:
1
2
RewriteCond %{REQUEST_URI} ^/sub/(.*)$
RewriteRule ^(.*)$  http://sub.domein.com/%1 [L,R=301]

Als de url begint met "sub" dan naar rewriterule. "(.*)$" Alles herschrijven naar http://sub.domein.com/%1
Waar %1 verwijst naar de (.*) in rewritecond.

Maar het werkt niet. Wie ziet de fout?

The whole problem with the world is that fools and fanatics are always so certain of themselves, and wiser people so full of doubts. -- Bertrand Russell


  • orillion
  • Registratie: April 2006
  • Nu online
Laat die eerste slash in de eerste regel eens weg, denk dat dat het oplost. En anders: wat staat erin je log, zet eventueel rewrite logging aan.

  • silentsnake
  • Registratie: September 2003
  • Laatst online: 15-01 11:20
Volgens mij moet je ook $1 gebruiken en geen %1, maar ik kan me vergissen.

  • orillion
  • Registratie: April 2006
  • Nu online
silentsnake schreef op maandag 12 oktober 2009 @ 17:29:
Volgens mij moet je ook $1 gebruiken en geen %1, maar ik kan me vergissen.
Nee, dat klopt wel, want je wil de regexp van de rewritecond gebruiken, niet van de rewriterule, zie ook:
RewriteCond backreferences: These are backreferences of the form %N (1 <= N <= 9), which provide access to the grouped parts (again, in parentheses) of the pattern, from the last matched RewriteCond in the current set of conditions.
http://httpd.apache.org/d..._rewrite.html#rewritecond