2016-08-21 74 views
3

我打電話在我的網站從其他使用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方法嗎?除了您從您的域名打來的域名之外,還應該爲您的域名啓用核心功能。 –

回答

1

可能你沒有激活的SSL證書。您可以通過轉到實際的請求URL來測試。

此外,包括實際的HTTP響應可能會有所幫助(可以在chrome開發人員工具的網絡選項卡中找到)。

PS。我會回覆一條評論,但這是移動打破

+0

它有兩個活動ssl – pcoder

1

在/etc/apache2/sites-available/default-ssl.conf中添加此代碼爲我修復它。

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