Nginx Cors включить для HTML-файлов не работает - PullRequest
0 голосов
/ 28 сентября 2019

Я настраиваю среду magento 2, используя AWS и CloudFront, и пытаюсь включить CORS для статических файлов, используя конфигурацию nginx, и заставить ее работать для всех необходимых расширений, кроме файлов ".html"!

Попыткадобавить заголовок «Access-Control-Allow-Origin» глобально, но все еще не работает для «.html» явно

Вот директива location в моем файле nginx.conf

location /static/ {
    # Uncomment the following line in production mode
    expires max;

    # Remove signature of the static files that is used to overcome the browser cache
    location ~ ^/static/version {
        rewrite ^/static/(version[^/]+/)?(.*)$ /static/$2 last;
    }

    location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2|json|html)$ {
        #add_header Cache-Control "public";
        #add_header X-Frame-Options "SAMEORIGIN";
        add_header Cache-Control "max-age=604800, public";
        add_header 'Access-Control-Allow-Origin' '*';
        add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
        add_header 'Access-Control-Max-Age' '604800';
        add_header 'Access-Control-Allow-Headers' 'Host, Content-Type, Origin, Accept';
        expires +1y;

        if (!-f $request_filename) {
            rewrite ^/static/?(.*)$ /static.php?resource=$1 last;
        }
    }

    location ~* \.(html)$ {
            add_header Cache-Control "max-age=604800, public";
            add_header 'Access-Control-Allow-Origin' '*';
            add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    }

    location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
        add_header Cache-Control "no-store";
        add_header X-Frame-Options "SAMEORIGIN";
        expires    off;

        if (!-f $request_filename) {
           rewrite ^/static/?(.*)$ /static.php?resource=$1 last;
        }
    }
    if (!-f $request_filename) {
        rewrite ^/static/?(.*)$ /static.php?resource=$1 last;
    }
    add_header X-Frame-Options "SAMEORIGIN";
}

Этоработает для всех упомянутых расширений, таких как jpg, png ... и т. д. Но все еще не работает только для файлов ".html"

...