Subdomain to folder htaccess

2019-04-18 01:49发布

问题:

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:

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.