我有一个CDN为我们的静态内容服务。从Internap来的。
为了使我的html中的CDN urls更容易接受,我在DNS设置中有一个"CNAME“条目:
cache.mysite.com => CNAME指向Internap
Internap服务器是源拉服务器。因此,我的域有一个指向CDN的"/public_html/cache“文件夹。
我这里有一些文件,我只想从我自己的领域服务。
同样重要的是,我的网站落后于Nginx。这是前端服务器,并为所有静态文件提供服务,如ttf/woff/eot/css/js/gif等等。只有PHP需要在Apache的后端进行代理。
我看到了“访问控制允许来源”指令。Nginx也有这样做的方法(useful ServerFault article和有用的StackOverFlow article ),但是我只想限制来自某些域的访问,这是我拥有的。
我有点困惑的原因是,我在提供字体和管理访问方面有三个层:
?)
我的问题:
位置~* (eot\ttf\woff)${ add_header访问-控制-允许-原产地*.domain1.com,*.domain2.com }
cache.mysite.com)中,还是在整个Nginx配置中?谢谢!
发布于 2012-01-15 20:16:46
如果浏览器从您的CDN下载字体,那么就无法检查标头。这是因为Internap缓存下载的文件,否则CDN会减慢速度,您的数据流量将保持不变。可能是Internap提供了只接受某些推荐人的选项。
Access-Control-Allow-Origin选项可能有效,但您必须检查CDN是否也转发此标头。
发布于 2012-01-14 23:05:25
您必须检查HTTP_REFERRER头,以确定文件是否是从您自己的域访问的。
如果没有,您可以始终重定向它们(也可能通过403个错误)。
https://stackoverflow.com/questions/8866105
复制相似问题