Mod_rewrite匹配子域和查询字符串

时间:2011-01-19 21:00:38

标签: php .htaccess apache

我目前正在domain.com/a/123/abcpage.php?this=123&that=abc mod_rewriting:

RewriteRule ^a/([^/]+)/([^/]+)/?$ page.php?this=$1&that=$2 [L]

此外,我现在想要mod_rewrite a.domain.com/123/abcpage.php?this=123&that=abc

因此,a.domain.com/123/abcdomain.com/a/123/abc都会重定向到page.php?this=123&that=abc

我的问题是匹配子域和查询字符串。这就是我一直在努力的,但它仍然没有正确重写。

RewriteCond %{HTTP_HOST} ^a\.domain\.com/ [NC]
RewriteCond %{QUERY_STRING} /([^/]+)/([^/]+)/?$ [NC]
RewriteRule ^(.*) /a/$1/$2 [L]

请注意,已设置通配符域(* .domain.com)。只是htaccess mod_rewriting失败了。

1 个答案:

答案 0 :(得分:1)

/的结尾RewriteCond吗?

RewriteCond %{HTTP_HOST} ^a\.domain\.com/

应该是

RewriteCond %{HTTP_HOST} ^a\.domain\.com