Назад | Перейти на главную страницу

Поддомены Nginx заблокированы политикой CORS

У меня есть 3 поддомена (sub1.domain.com, sub2.domain.com, sub3.domain.com).

sub1.domain.com вызывает sub2.domain.com для получения информации, и я продолжаю получать следующее: Доступ к XMLHttpRequest на https://sub2.domain.com из источника sub1.domain.com заблокирован политикой CORS : Ответ на предварительный запрос не проходит проверку контроля доступа: Заголовок «Access-Control-Allow-Origin» содержит несколько значений «https://sub1.domain.com, *», но разрешен только один.

Все 3 домена используют аналогичную конфигурацию nginx, как показано в примере ниже.


    server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name sub1.domain.com;
    access_log /var/www/sub1.domain.com/logs/access.log;
    error_log /var/www/sub1.domain.com/logs/error.log notice;
    ssl_certificate /etc/letsencrypt/live/sub1.domain.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/sub1.domain.com/privkey.pem; # managed by Certbot
    ssl_protocols TLSv1.3 TLSv1.2;# Requires nginx >= 1.13.0 else use TLSv1.2
    ssl_prefer_server_ciphers on;
    ssl_dhparam /etc/nginx/dhparam.pem; # openssl dhparam -out /etc/nginx/dhparam.pem 4096
    ssl_ciphers EECDH+AESGCM:EDH+AESGCM;
    ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0
    ssl_session_timeout  10m;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off; # Requires nginx >= 1.5.9
    ssl_stapling on; # Requires nginx >= 1.3.7
    ssl_stapling_verify on; # Requires nginx => 1.3.7
    resolver 1.1.1.1 1.0.0.1 valid=300s;
    resolver_timeout 5s;
    add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload";
    add_header X-Frame-Options SAMEORIGIN;
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";
    add_header 'Access-Control-Allow-Origin' '*';

  location / {
        proxy_pass http://127.0.0.1:80;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header SSL_OFFLOADED "1";
        proxy_set_header HTTPS "on";
        proxy_buffering off;
        port_in_redirect off;
        proxy_set_header      X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_headers_hash_max_size 512;
        proxy_headers_hash_bucket_size 128;
        proxy_set_header "Access-Control-Allow-Origin" "*";
        gzip on;
        gzip_proxied any;
        proxy_read_timeout 3600;
        client_max_body_size 128M;
        client_body_buffer_size 100M;
        proxy_buffer_size 128k;
        proxy_buffers 4 256k;
        proxy_busy_buffers_size 256k;
  }

}

Я добавил add_header 'Access-Control-Allow-Origin' '*'; и это до сих пор происходит. Как я могу предотвратить это?