首页 > 解决方案 > 请求在 WAMP 上被阻止,但在 XAMPP 上允许 CORS

问题描述

我尝试8012使用 WAMP 调用存储在 XAMPP 端口上的 jpg 文件,从端口发送 XHR 8080

htaccess在 XAMPP 服务器上有一个包含以下内容的文件,为了允许 CORS:

<IfModule mod_rewrite.c>
  Header add Access-Control-Allow-Origin: "*"
  Header add Access-Control-Allow-Methods: "GET,POST,OPTIONS,DELETE,PUT"
  Header add Access-Control-Allow-Headers: "Content-Type"

  RewriteEngine on
  RewriteBase /
</IfModule>

我什至尝试使用本指南httpd.conf编辑配置文件,但没有任何效果。WAMP 发送请求并收到以下错误:GET

跨域请求被阻止:同源策略不允许在http://localhost:8012/cdn_8080/video.jpg读取远程资源。(原因:CORS 预检通道的 CORS 标头“Access-Control-Allow-Headers”中缺少令牌“access-control-allow-origin”)。

我检查了,并mod_rewrite在 xampp 上启用:

LoadModule rewrite_module modules/mod_rewrite.so

我做错什么了?

标签: javascript.htaccessxamppcorswampserver

解决方案


我解决了我自己的问题。

我的 Javascript 文件包含以下几行:

xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
xhr.setRequestHeader('Access-Control-Allow-Methods', 'GET,POST,OPTIONS,DELETE,PUT');
xhr.setRequestHeader('Access-Control-Allow-Headers', 'Content-Type');
// xhr.withCredentials = true;
// will return an error

这是不必要的,所以我删除了它们,现在一切正常。


推荐阅读