2010-06-24 122 views
0

我在下面的代码语句按预期工作时遇到了一些麻烦。代码的第一部分都很好。当用户点击不带“www”的example.com时,他将301重定向到www.example.com以保护ingoing链接。使用htaccess的通配符子域名

与此同时我正在尝试使用子域。如果用户点击candybar.example.com我想要加载页面test.php?subdomain = candybar。虽然这部分看起来不起作用,但我的用户却被服务于索引页面。

我希望有人有一个想法我做错了 - 在此先感谢!

Options +FollowSymLinks 
RewriteEngine on 

RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] 

RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^(.*)$ test.php?subdomain=$1 [L] 

回答

1

我找到了自己的解决方案:

RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] 

RewriteCond %{HTTP_HOST} !^(www\.)?example\.com$ [NC] 
RewriteRule ^$ test.php [L]