Nginx Access-Control-Allow-Origin 不生效

发布于 2022-09-12 04:32:34 字数 1396 浏览 20 评论 0

这是我的nginx配置文件。nginx部署的server cname是test.com,然后我配置的是如果http访问会跳转到https端口,因为用了load balancer,443的请求会被转发到test.com的90端口。将代码部署到test.com后,本地开发环境会报CORS错误,不知道是哪里配置错误,有人可以帮忙看看吗,谢谢。

Access to XMLHttpRequest at 'http://test.com/api/test/test' from origin 'http://localhost:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;
    rewrite ^/(.+)$ https://test.com/$1 permanent;
}

server {
    listen       90;
    listen  [::]:90;
    server_name  localhost;

    access_log  /var/log/nginx/host.access.log  main;

    error_page   500 502 503 504  /50x.html;

    location / {
       rewrite / /angular;
      }

    location  /angular {
      add_header    Cache-Control no-store;
      root /etc/nginx/html;
      try_files $uri $uri/ /angular/index.html;
    }

    location ^~ /api/ {
        proxy_pass  http://proxy.com:1338;
        proxy_set_header Host                   $host;
        proxy_set_header X-Real-IP              $remote_addr;
        add_header 'Access-Control-Allow-Origin' '*' always;
        add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS';
        rewrite ^/api/(.*) /$1 break;
    }

    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

晨曦÷微暖 2022-09-19 04:32:34

你把nginx配置里面的server_name都改成test.com

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文