【问题标题】:Nginx CORS headers lost onnon-200 responses [duplicate]Nginx CORS标头丢失了非200响应[重复]
【发布时间】:2023-04-01 02:00:01
【问题描述】:

我有这个配置:

server {
listen 8443 ssl http2;
listen [::]:8443 ssl http2;
server_name someserver;
ssl on;
ssl_certificate /etc/letsencrypt/live/someserver/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/someserver/privkey.pem;
ssl_session_cache   shared:SSL:20m;
ssl_session_timeout 10m;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers somehash!MD5;
ssl_stapling on;
ssl_trusted_certificate /etc/letsencrypt/live/someserver/fullchain.pem;
location / {
proxy_set_header    X-Forwarded-Proto https;
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
proxy_pass       http://127.0.0.1:8000/;
}
}

当来自 :8000 的响应是 200 OK 时,有 Access-Control-* 标头,但是当有另一个响应时,它就丢失了

【问题讨论】:

    标签: nginx cors


    【解决方案1】:

    需要在add_header末尾加上“always”

    add_header 'Access-Control-Allow-Origin' '*' always;
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
    add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always; 
    

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 1970-01-01
      • 2014-08-11
      • 2019-11-25
      • 1970-01-01
      • 2020-02-21
      • 2021-02-14
      • 2011-04-27
      • 1970-01-01
      相关资源
      最近更新 更多