Apache-2.2

Apache mod-rewrite 規則將 subdomain.domain.tld 更改為 domain.tld/subdomain

  • August 3, 2010

重寫規則將更改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

不,您不需要設置虛擬伺服器,只需使用此規則:

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

引用自:https://serverfault.com/questions/166505