2011-06-10 99 views
1

我已經爲此搜尋了很多,並嘗試了很多我在網上找到的東西,但是注意到它已經爲我工作了。Htaccess的幫助 - 動態子域名


我怎樣才能讓,當用戶訪問這個頁面:

http://subdomain.domain.com/ 

這表明了他此頁面(不定向):

http://www.domain.com/?x=subdomain 

,並在用戶訪問此頁:

http://subdomain.domain.com/number/ 

這表明了他此頁面(不定向):

http://www.domain.com/?x=subdomain&y=number 

而且當用戶訪問這個頁面:

http://subdomain.domain.com/string/number/ 

這表明了他此頁面(不定向):

http://www.domain.com/?x=subdomain&z=string&y=number 

此外,子域值的變化和數字值變化

更多信息:阿帕奇/ 2.2.16(UNIX)的mod_ssl/2.2.16的OpenSSL/0.9.8e-FIPS-RHEL5 mod_auth_passthrough/2.1 mod_bwlimited/1.4的FrontPage/5.0 .2.2635


請解釋一下,如果你可以將代碼...


謝謝:)

+0

我不知道問題出在哪裏,但我按照說明所述做的,沒有任何我嘗試過的爲我工作,幾乎所有的人都不適合我想做的事...... – Andy 2011-06-10 20:11:48

回答

0

這看起來很麗關於代碼請求,而不是一個問題,但我今天感覺很好。所以在這裏,你有它。

RewriteEngine On 
RewriteRule ^index2\.php - [L] 
RewriteCond %{HTTP_HOST} !^$ [NC] 
RewriteCond %{HTTP_HOST} !^(www\.)example\.com [NC] 
RewriteCond %{HTTP_HOST} ^(www\.)?([^.]+)\.example.com [NC] 
RewriteRule ^([^/]+/)?([^/]+/)? index2.php?x=%2&y$1&z=$2 [L,QSA] 

的index2.php是必要的,因爲重寫會在一個循環中被卡住,否則(你可以只包括index.php文件裏面,所以沒有必要複製代碼)。這是第2行的目的。如果它檢測到重寫已經完成,它將在那裏停止。第3行確保重寫不會發生在主域中。第4行使用子域名部分(www。可選)並將其放入%2。第5行選擇可選的第一個和第二個文件夾,並將這些與子域名結合使用來創建您期望的網址。請注意,「/」包含在y和z中,否則規則將需要很多圓括號才能輕鬆理解。

+0

謝謝,byt :(,它不工作,瀏覽器(safari for mac)說「Safari無法找到服務器。」,另外,我有cPanel,如果這改變了什麼...... – Andy 2011-06-10 21:09:59