没有在PHP上设置CORS标头

时间:2015-08-31 17:36:42

标签: php ajax curl cors

我试图在PHP服务器上允许CORS 我有以下代码

<?php 
header('content-type: application/json; charset=utf-8');
header("access-control-allow-origin: *");
echo '<p>Hello World!!</p>';
?>

以及使用jquery

获取它的简单ajax请求

我在开发工具上一直收到此CORS错误

  

否&#39;访问控制 - 允许 - 来源&#39;标题出现在请求的上   资源。起源&#39; http://localhost:8080&#39;因此是不允许的   访问。

我还使用curl -i检查响应,我发现它没有标题...... 出了什么问题

curl -i

  

HTTP / 1.1 200 OK日期:星期一,2015年8月31日17:25:33 GMT
  内容类型:   text / html的
  内容长度:97
  连接:保持活力
  保持活跃:超时= 30
  服务器:Apache / 2
  X-Powered-By:PHP / 5.3.29
  缓存控制:   private,pre-check = 0,post-check = 0,max-age = 0
  到期:0
  附注:   无缓存

2 个答案:

答案 0 :(得分:0)

Charlotte Dunois所评论的方向给出了指示 我在.htaccess文件中添加了以下行

Header add Access-Control-Allow-Origin "*"

答案 1 :(得分:0)

我遇到了类似的问题,问题是请求的资源驻留在一个目录中,该目录通过驻留在所述目录中的 .htaccess 文件应用了目录隐私。删除目录隐私允许 php 标头按预期运行。