Apache mod-rewrite 规则将 subdomain.domain.tld 更改为 domain.tld/subdomain

Apache mod-rewrite 规则将 subdomain.domain.tld 更改为 domain.tld/subdomain

重写规则应该改变subdomain.domain.tld为何domain.tld/subdomain

或者我应该查看 VirtualServer 指令,以便subdomain.domain.tld从恰好也在 中找到的 DocRoot 中获取并提供它domain.tld/subdomain

如果使用重写更合适,那么重写规则应该放在哪里呢?

更新-在此处找到链接:http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html

答案1

不,您不需要设置虚拟服务器,只需使用此规则:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.]+)\.domain\.tld$
RewriteRule ^/(.*)$ http://domain.tld/%1/$1 [L,R]

相关内容