一般都是在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;
        }
}

标签: none

已有 6 条评论

  1. 叼茂SEO.bfbikes.com

  2. 哈哈哈,写的太好了https://www.cscnn.com/

  3. 《大河之歌》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/6350.html

  4. 《冲天火国语》动作片高清在线免费观看:https://www.jgz518.com/xingkong/50159.html

  5. 新车上路,只带前10个人

  6. 快餐服务啥意思a0gy.cn

添加新评论