面对本地服务器

时间:2017-12-12 07:18:48

标签: php http-headers cors

我已将XMLHttpRequest的帖子请求发送到我在本地的其他域名,但我收到以下CORS错误:

  

无法加载http://another.local/:' Access-Control-Allow-Origin'标头包含多个值' *,http://example.local',但只允许一个。起源' http://example.local'因此不允许访问。

我在PHP中设置了标题如下:

<?php
header("Access-Control-Allow-Origin: *",false); //header("Access-Control-Allow-Origin: *");
header('Access-Control-Allow-Methods: POST, GET');
header("Access-Control-Allow-Credentials: true");
header('Access-Control-Max-Age: 1000');
header("Content-type:application/json");
readfile('data.json');

尽管设置了标题,但我仍然收到CORS错误;我做错了什么,如何解决?

3 个答案:

答案 0 :(得分:1)

最后,我解决了这个问题 我使用Laragon进行PHP开发,我不知道它的Laragon配置或apache,默认情况下他们在配置文件中设置它:

Header always set Access-Control-Allow-Origin "*"

这会与我在PHP中设置的标头发生冲突。我评论它并且可以设置标题没有问题。

感谢@Thamaraiselvam&amp; @ rahul-mukherjee帮助我。

答案 1 :(得分:0)

你可以试试     header('Access-Control-Allow-Origin:http://example.local',false);

如果您尚未设置可以使用的http方法:

header("Access-Control-Allow-Credentials: true");
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header('Access-Control-Max-Age: 1000');
header("Access-Control-Allow-Headers: ACCEPT, CONTENT-TYPE, X-CSRF-TOKEN");

注意:请根据您的要求更改值:

答案 2 :(得分:0)

您可以尝试设置header('Access-Control-Allow-Origin: *');

并检查两次是否有相同的标题