從我的理解,你想從一個通配符子域重寫規則被路由到根文件夾。
所以,
*.example.com => example.com/*
步驟1.配置你的DNS
首先,你必須確保你的DNS主機配置是否正確。您必須確保您的域名接受指向您主機IP地址的通配符(*)。這應該是一個簡單的A記錄。
第2步:告知Apache治療子域不同的方式
做到這一點後,你必須告訴Apache區別對待子域。
在httpd.conf中,看的東西,看起來像這樣:
ServerAlias www.example.com example.com
它改成這樣:
ServerAlias www.example.com example.com *.example.com
example.com,當然,作爲您的網站的名稱。
步驟3.實際重寫規則
然後,這裏是你的.htaccess:
Options +FollowSymLinks
Options +Indexes
RewriteEngine On
RewriteBase/
RewriteCond %{HTTP_HOST} !www.example.com$ [NC]
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-]+).example.com [NC]
RewriteRule (.*) %2/$1 [L]
這應該工作。
看到這個http://stackoverflow.com/questions/1456956/redirect-subdomain-to-folder – 2012-03-27 07:56:44
感謝您的快速回復,但是當我包裝它時,它給了我這個錯誤:此外,遇到403禁止錯誤同時嘗試使用ErrorDocument來處理請求。 – jorveld 2012-03-27 08:20:34