【发布时间】:2016-05-12 12:06:31
【问题描述】:
我创建了一个文件夹,用于提供静态文件(CSS、图像、字体和 JS 等),我最终会将文件夹 CNAME 到一个子域中,以便在 CDN 上使用我的 Magento 2 设置。
我想允许所有域通过 CORS - 跨域策略进行所有访问,并且我也想缓存数据。这就是我所拥有的。 (我不是在询问有关 JSONP 问题的安全建议或提示 - 我希望全局访问文件目录)
location /cdn-directory/ {
location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2|zip|gz|gzip|bz2|csv|xml)$ {
add_header Cache-Control "public";
add_header X-Frame-Options "ALLOW-FROM *";
expires +1y;
}
}
根据documentation,它说X-Frame-Options 支持ALLOW-FROM uri,但看不到使用*(所有域)或在此ALLOW-FROM 中添加某些多个域的示例。我需要允许所有域访问我的静态文件夹。
【问题讨论】:
-
您的配置是正确的,它按照定义(我测试过)将标头添加到请求中,我不确定您在这里问什么:如何在 nginx 中全局定义响应标头? X-Frame-Options 的用法?请记住,Google Chrome 和 Safari 不支持 X-Frame-Options
ALLOW FROM,因此可能没有太多示例 -
您是否尝试过使用
Content-Security-Policy: frame-ancestors *?我相信 CSP 标头取代了 X-Frame-Options,因此可能是一个很好的补充。 -
我想知道我是否可以让多个域使用我的内容,因为似乎 ALLOW-FROM uri 仅限于一次调用
标签: magento nginx cors jsonp font-face