跨域问题,当mode为include时,Access-Control-Allow-Origin不能为*,

The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'.


配合前端写Vue项目时,浏览器遇到这种错误,按道理来说http response 的 header 中 Access-Control-Allow-Origin参数 为* 时,可以满足一切域名情况。

看样子 看了半天也不行,修改nginx的配置 Access-Control-Allow-Origin 改为 http://xxx.xxx.com时候,可以了。最后查找跨域文档才发现

跨域请求发送cookie的时候,需要判断是否包含了请求源的origin,不然不发送cookie,然后,OPTIONS请求发送成功后,并没有新的请求发出。

解决方法是:
nginx配置修改一下

add_header Access-Control-Allow-Origin *;

改成

add_header Access-Control-Allow-Origin "$http_origin";


这样满足任何情况

composer版本符号

* : 最新版 


>=1.0: 大于等于1.0的最高版本 


>=1.0 <2.0:大于等于1.0且小于2.0的最高版本


1.0 – 2.0:1.0至2.0之间的最高版本 


1.0.*:>=1.0且<1.1的最高版本 


~1.2:>=1.2且<2.0的最高版本 


~1.2.3:>=1.2.3且<1.3.0最高版本 


^1.2.3:>=1.2.3且<2.0.0的最高版本

https://blog.csdn.net/hwhsong/article/details/79079197

PHP curl模拟form表单上传文件

关键代码如下:

$ch = curl_init('https://www.baidu.com/uploadImage');
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, ['file' => new \CURLFile($fileRealPath)]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);

备忘