阿帕奇:CORS头“访问控制允许来源”失踪

问题描述:

我打电话在我的网站从其他使用jQuery后一些SVG图像,我得到以下错误控制台阿帕奇:CORS头“访问控制允许来源”失踪

跨来源请求阻止:将同源策略不允许在https://abc/svgpaths/sample.svg处读取远程资源。 (原因:缺少CORS头'Access-Control-Allow-Origin')。

我有以下放慢参数在我的.htaccess文件设置

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

我也腻子测试a2enmod头这表明我模块头已经启用

但是,当我使用IP而不是域名

为如:https://1.2.3.5/svgpaths/sample.svg

我得到以下错误控制台net :: ERR_INSECURE_RESPONSE

我找不出解决办法,请指导我解决问题。

JS代码到其他服务器调用SVG

案例1 与IP(不同的充SSL上主,子域)

fabric.loadSVGFromURL("https://1.2.3.4/svgpaths/sample.svg", function(objects, options){ 
      var object = new fabric.util.groupSVGElements(objects, options); 
      object.set({ 
       fill: '#000000', 
       selectable:false 
      }); 

错误:ERR_INSECURE_RESPONSE

案例2 当与目前存在的子域称为:(子域解析为相同的IP如上壳体1,我最近指出子域所以有在我错过CONFI文件somesetting)

fabric.loadSVGFromURL("https://abd.maindomain.com/svgpaths/sample.svg", function(objects, options){ 
      var object = new fabric.util.groupSVGElements(objects, options); 
      object.set({ 
       fill: '#000000', 
       selectable:false 
      }); 

错误:阿帕奇:CORS头“访问控制-Allow-Origin'missing

+0

如果您使用的是chrome,那么关闭chrome,它是后台进程,然后重新开始。有时chrome通过缓存域名而不是ip地址来显示这个错误。 –

+0

不,它没有工作,问题是,我只是在ip之前添加了域名 – pcoder

+0

为什么你只是从另一个网站/域调用图像时使用post方法,它不应该是一个get方法吗?除了您从您的域名打来的域名之外,还应该为您的域名启用核心功能。 –

可能你没有激活的SSL证书。您可以通过转到实际的请求URL来测试。

此外,包括实际的HTTP响应可能会有所帮助(可以在chrome开发人员工具的网络选项卡中找到)。

PS。我会回复一条评论,但这是移动打破

+0

它有两个活动ssl – pcoder

在/etc/apache2/sites-available/default-ssl.conf中添加此代码为我修复它。

Header set Access-Control-Allow-Origin "https://example.com"