javascript - 访问控制允许来源 OPENCART 无解决方案

标签 javascript .htaccess cors opencart

我的网站出现问题,正如您在 opencart 中所知,我们有 config.php 可以处理 HTTP 请求,下面是代码:

define('HTTP_SERVER', 'http://www.DOMAIN.com/');
define('HTTPS_SERVER', 'https://www.DOMAIN.com/');

如果我们输入网站 www. DOMAIN.com,网站就会正常运行 但如果没有www,它将无法工作。 例如:http://DOMAIN.com

如果我们从config.php中删除www.,那么网站将运行良好。

我相信问题是由Access-Control-Allow-Origin引起的

我尝试在.htaccess中使用以下代码

Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"

通过添加上述代码,网站可以运行,但功能不完整。 但问题仍然存在于jquery-2.1.1.min.js

catalog/view/javascript/jquery/jquery-2.1.1.min.js

那么,请指导我如何使其适用于他们两个?

例如:Domain.comwww.domain.com

最佳答案

请求的资源上不存在“Access-Control-Allow-Origin” header 。来源'https://sx.xyz.com ' 因此不允许访问。

我在 Ajax 响应中也遇到过类似的跨域数据交换问题,如错误未定义。但 header 中的响应是状态代码:200 OK

Failed to load https://www.Domain.in/index.php?route=api/synchronization/checkapikey: 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'https://sx.xyz.in' is therefore not allowed access.

解决方案:在我的例子中,我必须通过 Ajax 将函数 checkapikey() 调用到其他域,并获取调用位置的数据响应

if (($this->request->server['REQUEST_METHOD'] == 'POST') && isset($this->request->server['HTTP_ORIGIN'])) {

        $this->response->addHeader('Access-Control-Allow-Origin: ' . $this->request->server['HTTP_ORIGIN']);
        $this->response->addHeader('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
        $this->response->addHeader('Access-Control-Max-Age: 1000');
        $this->response->addHeader('Access-Control-Allow-Credentials: true');
        $this->response->addHeader('Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With');

        $headers = getallheaders();
...
}

关于javascript - 访问控制允许来源 OPENCART 无解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32869204/

相关文章:

javascript - Object.create 未运行构造函数

linux - 设置 htaccess 以便除一个 IP 之外的所有人都被拒绝,但它需要身份验证

.htaccess - 如何在共享主机上部署 Symfony2?

javascript - CORS 服务器端与客户端?为什么一个有效,而另一个却无效?

java - OAuth2.0 - 使用 GitHub 进行身份验证,前端和后端运行在不同的服务器上。 CORS错误

javascript - 尝试使用 AngularJS 将图像上传到 Cloudinary 时,Access-Control-Allow-Origin 不允许 Origin http ://localhost. com:8000

javascript - 通过正则表达式匹配 ahref 标签然后转换为字符串

javascript - 如何在断开连接的环境中使用 font-awesome?

javascript - "this"文字对象中的关键字

php - Apache URL 重写功能不正常