如果多个域指向同一个webroot,则为某个域的IP限制(.htaccess)

时间:2015-03-25 20:23:34

标签: .htaccess

通常我会在.htaccess中添加以下代码段来创建IP限制:

 <Limit GET POST>
 order deny,allow
 deny from all
 allow from 23.98.431.9
 allow from 123.456.78.9
 allow from 9.876.54.32
 allow from 555.333.2.33
</Limit>

如果只有一个域指向webroot,则上面的代码段工作正常。但是,如果多个域指向同一个webroot,如何只为一个域添加IP限制?例如:

  

www.example.com

     

wwww.examplewebsite.com

     

wwww.exampleawesome.com

以上所有域名都指向同一个webroot。但现在我只需要限制访问www.example.com(允许某些IP访问该网站)。我怎样才能做到这一点?

非常感谢你!

1 个答案:

答案 0 :(得分:1)

您可以在root .htaccess中使用mod_rewrute规则,如下所示:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_METHOD} ^(GET|POST)$ [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?example\.com$ [NC]
RewriteCond %{REMOTE_ADDR} !^(23\.98\.431\.9|123\.456\.78\.9|9\.876\.54\.32|555\.333\.2\.33)$
RewriteRule ^ - [F]