最后从文档和 Rackspace 工作人员的一些帮助中解决了这个问题。
重要的是,对于仅包含 CDN 文件的启用 CDN 的容器,没有必要调整容器的元标头。这些仅由不在 CDN 上的文件继承。
我不得不调整字体文件本身的响应头。不幸的是,目前仅通过 API 支持这一点,我在 Windows 7 的命令行中使用了 curl。
认证
机架空间文档
第一步是认证:
curl -d "{\"auth\":{\"RAX-KSKEY:apiKeyCredentials\":{\"username\":\"my_username\",\"apiKey\":\"my_api_key\"}}}" -H "Content-Type: application/json" "https://identity.api.rackspacecloud.com/v2.0/tokens"
然后从响应中提取id
的和相关的。我将响应复制到 Notepad++ 并分别搜索和。token
publicURL
endpoint
cloudFiles
token
cloudfiles
调整文件响应标头
机架空间文档
我尝试使用以下命令调整标题:
curl -i -XPOST -H "x-auth-token: my-auth-token" -H "Access-Control-Expose-Headers: Access-Control-Allow-Origin" -H "Access-Control-Allow-Origin: *" https://storage101.lon3.clouddrive.com/v1/MossoCloudFS_my-end-point/container/pseudo-dir1/psuedo-dir2/my-site-icons.ttf
它奏效了吗?
我收到了HTTP/1.1 2xx
回复并检查了它是否适用:
curl -i -XGET -H "X-Auth-Token: my-auth-token" https://storage101.lon3.clouddrive.com/v1/MossoCloudFS_my-end-point/container/pseudo-dir1/psuedo-dir2/my-site-icons.ttf
不幸的是,您必须等待文件的 TTL 过期,或者清除它才能看到实时结果。当我这样做时,它需要一天多的时间来进行边缘清除。我检查了现场版本:
curl -i -XGET https://live-version-container-hash.ssl.cf3.rackcdn.com/pseudo-dir1/psuedo-dir2/my-site-icons.ttf
在上传时设置文件响应标头
我决定在我的文件中添加一个版本并在上传期间添加标题:
curl -i -XPUT -H "x-auth-token: my-auth-token" -H "Access-Control-Expose-Headers: Access-Control-Allow-Origin" -H "Access-Control-Allow-Origin: *" https://storage101.lon3.clouddrive.com/v1/MossoCloudFS_my-end-point/container/pseudo-dir1/psuedo-dir2/my-site-icons1.0.0.ttf -T my-site-icons.tff
my-site-icons.tff
从文件所在的本地目录执行