Mod_Rewrite:通配符到子域加载到404?

时间:2014-05-21 11:28:33

标签: .htaccess mod-rewrite

通常使用共享主机,主要(pirmary)域和插件域可以通过主域访问,例如:addon.main.com。这是Hostgator帮助页面的解决方案, 但它需要一个特定的子名称(对于插件):

#Prevent subdomain name loading.
#This goes in htaccess for the primary domain
RewriteCond %{HTTP_HOST} ^subname\.primary\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.subname\.primary\.com$
RewriteRule ^(.*)$ "http\:\/\/www\.addon\.com\/$1" [R=301,L]

我修改了第三行代码以给出404,它可以工作:

RewriteCond %{HTTP_HOST} ^subname\.primary\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.subname\.primary\.com$
RewriteRule ^(.*)$ - [R=404]

但是如何修改第一行,如果用户输入任何字符串作为子名称(IE:abcdefg.primary.com),它会给404? 我试过这个但没有运气:

RewriteCond %{HTTP_HOST} ^(.*)\.primary\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.subname\.primary\.com$
RewriteRule ^(.*)$ - [R=404]

使用什么是正确的通配符?感谢。

0 个答案:

没有答案