Я настраиваю среду 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"