访问控制允许来源语法

Posted

技术标签:

【中文标题】访问控制允许来源语法【英文标题】:Access-Control-Allow-Origin syntax 【发布时间】:2012-09-26 11:50:26 【问题描述】:

我希望允许来自 from.example.com 的所有子域的跨域资源共享。 因此,我在 subdomain1.to.example.com 的页面中添加了如下所示的跨域资源共享标头。

<?php header('Access-Control-Allow-Origin: *.from.example.com');

我尝试使用 ajax 访问页面表单 subdomain1.from.example.com。 我没有得到回应。所以我只是更改了上面的标题,如下所示。

<?php header('Access-Control-Allow-Origin: http://subdomain1.from.example.com');

它仅适用于 subdomain1.from.example.com

第一个标题有什么问题?

【问题讨论】:

***.com/questions/12744278/… 【参考方案1】:

Access-Control-Allow-Origin 标头中不允许使用通配符。它必须是完全匹配的。您可以通过将值设置为 * 来允许所有域,或者如果 Origin 请求标头的值与您允许的域之一匹配,则有条件地回显它。

请注意,Origin spec allows 用于多个来源,以空格分隔。但是我不确定这是否适用于 Access-Control-Allow-Origin 标头。可能值得一试。

【讨论】:

以上是关于访问控制允许来源语法的主要内容,如果未能解决你的问题,请参考以下文章

具有多个域的访问控制允许来源

为啥我得到“没有访问控制允许来源”

捕获“访问控制允许来源不允许来源”错误

访问控制允许来源多个来源域?

访问控制允许来源多个来源域?

访问控制允许来源多个来源域?