我们在哪里放置HTTP响应标头的内容?

时间:2017-02-19 22:39:34

标签: html http cors

我正在尝试将Access-Control-Allow-Origin: *语句放入HTTP响应标头中,因为这就是为了克服CORs问题所做的一切(我正在尝试使用p5.js进行编码)。我的问题是:这个陈述到底在哪里,我该如何到达那里?

我无法在任何地方找到基本答案,没有它我就无法继续前进。


谢谢!

2 个答案:

答案 0 :(得分:0)

您将其放在名为.htaccess的文件中,并将其放在您网站的根文件夹中。

将以下内容保存到名为.htaccess的文件中,您已完成。

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>

答案 1 :(得分:0)

此语句/响应标头必须出现在您要连接的服务器的响应中。因此,它会根据您使用的服务器,框架和语言而有所不同。

如果要连接到PHP脚本,可以使用header(...)函数实际管理脚本中的CORS方向。有关详细信息,请参阅此问题:CORS with php headers许多其他语言也可以这样做;虽然,我现在不能举一个例子。

如果您使用的语言不允许在代码中定义CORS,或者您只是希望以其他方式管理CORS,那么您可能不得不依赖服务器框架。如果您使用的是Apache HTTP Server,那么您可以修改目录中的.htaccess文件(就像Simon在他的回答中指出的那样)。在Apache上可能有1或2种方法可以做到这一点,但是我必须查看我的apache配置以记住所有其他方法。无论如何,.htaccess通常是在Apache中执行此操作的最佳方式,因此您可以在每个文件或每个目录的基础上有选择地启用,而不是为整个服务器授权CORS,因为这可能是安全风险。大多数网站。如果您需要有关Apache的更多详细信息,请查看此AwesomeToast blog post about it。 NGINX也很受欢迎,但不幸的是,我从未与NGINX合作过,所以我无法在那里提供太多帮助。如果您正在使用NGINX,这里有一篇关于如何在NGINX环境中启用CORS的文章:Enable CORS on NGINX

当然有许多其他语言和服务器框架支持CORS,因此,如果上述任何一种语言和服务器框架都不符合您的情况,那么您可能会在www.Enable-CORS.org上找到针对特定环境/设置的一些说明。如果您似乎无法找到适合您情况的说明,或者您在服务器上启用CORS时遇到问题,请随时留下指定环境的注释,我将尝试帮助您完成CORS的工作。