我正在尝试基于子域进行mod-rewrite。如何获取子域并将其附加到我的新域的末尾?
示例:
RewriteCond %{HTTP_HOST} ^users\.example\.com$
RewriteRule ^(.*)$ http://www.example.com/?subdomain=[variable for sub] [L]
如何将'用户'变为[变量为sub]?
答案 0 :(得分:5)
上一个RewriteCond
的匹配项存储为%N,因此您可以执行此操作:
RewriteCond %{HTTP_HOST} ^(users)\.example\.com$
RewriteRule ^(.*)$ http://www.example.com/?subdomain=%1 [L]
答案 1 :(得分:0)
Greg的答案只有一个子域名(用户),我需要一个WildCard重写规则(所有子域名),所以我使用了以下内容:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([\w\d]+)\.example\.com$
RewriteRule ^(.*)$ http://example.com/?subdomain=%1&path=$1 [NC,L,QSA]
或作为反向代理:
RewriteCond %{HTTP_HOST} ^([\w\d]+)\.example\.com$
RewriteRule ^(.*)$ http://%1.backendserver.com:3001/$1 [L,P,QSA]