htaccess要求主机域无法正常工作

时间:2016-08-31 19:12:49

标签: json ajax .htaccess cors

我有一个包含json文件的文件夹。我想将这些文件的AJAX请求限制到某些域。

我制作了一个htaccess文件来限制它,但它不起作用。我的htaccess如下:

<FilesMatch "\.json$">
    <RequireAny>
        Require host thedomain.com
        Require host thehurts.com
    </RequireAny>
</FilesMatch>

这阻止了所有人,包括我自己。

我读到Require local让我自己访问,但是当我添加它时它没有用。

如果我添加Require all granted我可以访问并且可以通过AJAX访问其他域中的文件,但这也可以访问互联网上的所有人,这是我不想要的。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您需要的是从源头限制它。

您应该能够为引用域设置环境变量,然后将其包含在规则中。然后,您可以通过IP地址来限制它来自服务器或您的IP地址。

    SetEnvIf Referer "example\.com" localreferer
    SetEnvIf Referer "example2\.com" localreferer2

    <FilesMatch "\.json$">
        Require env localreferer
        Require env localreferer2
        Require ip x.x.x.x #your ip address
        Require ip 127.0.0.1 #localhost
        Requite ip x.x.x.x #replace with your local server IP. 
    </FilesMatch>

看看是否有帮助。