我要地圖
sub1.mydomain.com
到sub1.mydomain.com/index.php?sub1
sub1.mydomain.com/?aa=bb
到sub1.mydomain.com/index.php?sub1&aa=bb
sub1.mydomain.com/something
到sub1.mydomain.com/index.php?sub1/something
sub1.mydomain.com/something?aa=bb
到sub1.mydomain.com/index.php?sub1/somehting&aa=bb
這些與sub2.mydomain.com太匹配。子域到MVC URL映射 - 重寫針對多個規則
沒有任何重定向,就像SimpleMVCFramework一樣,它爲主域。 我之所以要使用sub1.mydomain.com作爲mydomain.com/sub1(它被重新編譯爲mydomain.com/index.php?sub1)的用戶調用的別名。我將兩個子目錄的根目錄設置爲與主域相同。
這裏是的.htaccess代碼(位於根目錄),但它與錯誤500
# Map subdomains to controller
RewriteCond %{HTTP_HOST} !^www # if the sub is not www
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.com
RewriteCond %{QUERY_STRING} !(sub1|sub2) # preventing loops
RewriteRule ^/?$ /index.php?%1 [NC,QSA,L]
# this meant to be match if url path is empty eg. sub1.mydomain.com/?aa=bb
RewriteRule ^(.+)$ /index.php?%1/$1 [NC,QSA,L]
# anytime else.
如果我的simpy使用第二個作用,(.*)
圖案化,結尾的斜線相匹配(SUB1下降?.mydomain.com來/ index.php文件SUB1 /),與(.+)
模式是這樣匹配:sub1.mydomain.com/index.php?sub1/index.php
由於提前,
b