views:

31

answers:

1

I am trying to point sub.domain.com to domain.com/app/*sub, but the farthest I can get is making it a redirection and I do not want it to redirect. Here is what I have, it works but it redirects it instead of staying on the subdomain, which is what I want.

RewriteCond %{HTTP_HOST} ^(.*).example.com
RewriteCond %{HTTP_HOST} !^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com/app/%1/$1 [L]
+1  A: 

You must either redirect or force proxy behavior. See also ProxyPass and ProxyPassReverse. To use mod_rewrite to proxy the request, use the P flag:

RewriteCond %{HTTP_HOST} ^(.*).example.com
RewriteCond %{HTTP_HOST} !^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com/app/%1/$1 [P]

You could also rewrite to /app/%1/$1 instead of http://example.com/app/%1/$1, but then the VirtualHost configuration of the subdomain would not be applied.

Artefacto
Looks like it worked but is this good practice? Does it put any unneeded strain on the server? Thanks!
mikelbring
If performance becomes a problem. I'd advise you to use a redirect instead.
Artefacto