.htaccess路径只能通过ip访问

时间:2016-08-17 16:37:20

标签: php .htaccess drupal-7

我想使用.htaccess配置阻止来自我网站的路径。我们的想法是,只有一组特定的IP可以从URL访问该特定路径。

注意:这是一条路径,而不是一个页面或目录。我们正试图屏蔽网络服务,因此只会对网址进行后期调用。

我希望根据IP阻止网址example.com/rest以及该网址后面的所有内容。因此应阻止example.com/rest/test_serviceexample.com/rest/test_service/read

应用程序中的所有其他路径应保持正常运行。

我尝试了以下内容,但它似乎无法奏效。没有一个页面可以像这样访问。

SetEnvIf Request_URI "/rest$" rest_uri

<RequireAll>
    Require env rest_uri
    <RequireAny>
        Require ip XXX.XXX.XXX.XXX
    </RequireAny>
</RequireAll>

我尝试了不同的东西,但似乎都没有。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:2)

您可以使用mod重写来允许空间IP地址

RewriteEngine on 
RewriteCond %{REMOTE_ADDR} !YourIP$
RewriteRule ^/?rest - [F]

如果访问/ rest或/ rest / foobar,这将返回所有其他IP地址的403禁止错误。

答案 1 :(得分:1)

您可以使用这样的指令来允许某个URL的IP范围:

MdIconModule