php跨域问题
一般都是在php文件加上下面的代码
允许所有的访问
header('Access-Control-Allow-Origin:*');
运行跨域响应类型
header('Access-Control-Allow-Methods:POST,GET,OPTIONS');
响应头设置
header('Access-Control-Allow-Headers:*');
ajax 异步
header('Access-Control-Allow-Headers: X-Requested-With,X_Requested_With,X-PINGOTHER,Content-Type');
但是在nginx发现复制上面的代码无效
需要在nginx里面配置
location / {
if ($request_method = 'OPTIONS') {
# 【必须】建议在发布环境用域名而不是“星”号
add_header Access-Control-Allow-Origin '*';
# Allow-Headers 指定允许的自定义请求头,如用户 Token,而且这些不用写那么多,只写自定义的参数就可以
add_header Access-Control-Allow-Headers 'token';
# 一般来说在 POST 请求时因为 Content-Type 的原因在本次 OPTIONS 预请求后,
# 会再发送的 POST 请求,而 POST 请求是可以正常接收的
# add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, PATCH, OPTIONS';
# 请求是否携带 Cookie,无需要可忽略。有说该设置为 true 时 Allow-Origin 不可为 '*'
# add_header Access-Control-Allow-Credentials true;
# 这个响应 Content-Type 也是根据需要设置(一般情况可以不用设置)
# add_header Content-Type 'application/json; charset=utf-8';
# 如下 Content-Length 可忽略,返回状态码根据个人习惯可设置为 200
add_header Content-Length 0;
return 204;
}
# 没错,为了方便你们对比,上面这些才是要添加的
# 而且你们可能发现了,我上面有好多注释掉的,因为这些是我在搜索出来的,而且经过我一步步的注释,发现只要一开始的两行和最下面的两行就可以了
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
叼茂SEO.bfbikes.com
哈哈哈,写的太好了https://www.cscnn.com/
《大河之歌》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/6350.html
《冲天火国语》动作片高清在线免费观看:https://www.jgz518.com/xingkong/50159.html
新车上路,只带前10个人
快餐服务啥意思a0gy.cn