nginx处理跨域 当status_code 不等于200时不添加头部

我的nginx配置如下,我发现在status_code 200的时候会返回add_header
如果是其他状态码就不会返回,请问是我哪里配置有问题么?

server{
    listen  80;
    server_name ppt.com;
    root    /public;
    index index.html index.php;

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
        
    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS,PUT,DELETE';
    add_header Access-Control-Allow-Headers '*';
 
    if ($request_method = 'OPTIONS') {
        return 204;
    }

    location / { 
        try_files $uri $uri/ /index.php?$query_string;
    } 

    access_log  ./nginx/ppt.server.log;
    error_log  ./nginx/ppt.server.error.log;
}
阅读 1.6k
1 个回答
add_header Access-Control-Allow-Origin * always;
    add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS,PUT,DELETE' always;
    add_header Access-Control-Allow-Headers '*' always;

在add_header最后添加 always

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏