【问题标题】:How to solve Access-control-Allow_origin in codeigniter如何解决codeigniter中的Access-control-Allow Origin
【发布时间】:2019-11-06 18:57:58
【问题描述】:

我刚刚将一个 HTML 模板转换为 php。我已将 css、js 和 images 等文件夹放在 codeigniter 项目的根目录中。使用 base_url 函数,我已成功获取图像和样式,但仍然缺少一些图标,并且我在控制台中收到此错误

Access to font at 'http://[::1]/diz/fonts/themify.woff?-fvbane' from origin 'http://localhost' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

我也把这条线放在了加载索引页面视图的控制器中

header('Access-Control-Allow-Origin: *');

我希望它能解决问题,但它什么也没做。我也试过其他人here给出的答案,但没有帮助。

提前致谢

网络中的响应头是:

HTTP/1.1 200 正常 日期:格林威治标准时间 2019 年 11 月 6 日星期三 10:32:51 服务器:Apache/2.4.33 (Win32) OpenSSL/1.1.0h PHP/7.2.6 最后修改时间:2019 年 3 月 12 日星期二 09:38:36 GMT ETag:“db2c-583e27406bf00” 接受范围:字节 内容长度:56108 内容类型:字体/woff

【问题讨论】:

  • 如果它在两个地方都使用相同的主机名,这是一个你甚至不会遇到的问题......我会检查配置以找出为什么使用http://[::1]/ 引用字体文件,而不是http://localhost/
  • 是的,我也很困惑为什么会这样,我无法弄清楚我刚刚开始使用 codeigniter

标签: php codeigniter cors


【解决方案1】:

尝试使用

header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Methods: GET, OPTIONS");

如果不起作用,您可以尝试配置本地服务器 阿帕奇:

<FilesMatch ".(ttf|otf|eot|woff|woff2)$">
  <IfModule mod_headers.c>
    Allow from all
    Header set Access-Control-Allow-Origin "*"
  </IfModule>
</FilesMatch>

和 Nginx:

if ($filename ~* ^.*?\.(eot)|(ttf)|(woff)$){
    add_header Access-Control-Allow-Origin *;
}

【讨论】:

  • 你能发送一个响应头吗?
  • 我已经编辑了问题,看看我是否添加了您想要的内容还是不同
猜你喜欢
  • 2016-10-22
  • 2017-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-18
  • 2019-12-18
  • 2015-12-28
相关资源
最近更新 更多