我有一個調用http://myexamplefeed.com/feed/23213CORS頭「訪問控制允許來源」不匹配「(空)」,但它不是空
我剛搬到這個網站到新服務器的簡單AJAX請求和所有突然我得到這個錯誤:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://myexamplefeed.com/feed/23213 . (Reason: CORS header ‘Access-Control-Allow-Origin’ does not match ‘(null)’).
的事情是,在我的.htaccess文件我已經嘗試將與*:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin: *
</IfModule>
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin: "http://myexamplefeed.com"
</IfModule>
我仍然得到CORS header ‘Access-Control-Allow-Origin’ does not match ‘(null)’
錯誤。
是不是指的是Header set Access-Control-Allow-Origin
的值,我不應該能夠在我的.htaccess文件中改變它?
更新:那是在Firefox中。在Chrome中我得到這個消息:
The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed
本指南可能有所幫助。 https://enable-cors.org/server_apache.html –
如果你檢查響應頭,我想你可能會在響應中發現多個「Access-Control-Allow-Origin」響應頭。您可以使用curl在瀏覽器之外進行測試,如下所示:'curl -i -H「原點:http://sitethiserrorisoccurringon.com」http:// myexamplefeed.com/feed/23213「 – sideshowbarker
錯誤消息的區別只是因爲Chrome在嘗試使用它之前對Access-Control-Allow-Origin標頭值進行了驗證檢查,而Firefox目前不執行任何此類檢查,而只是試圖對標頭值進行文字匹配(如果它有多個令牌永遠不會匹配任何東西)。 – sideshowbarker