大家好!
s3 cdn url 设置对于照片效果很好,但对其他类型的文件无效。看起来 s3 cdn url 被上传文件的 endpoint url 替换了。
例如,我的 s3 cdn url 是 http://qiniu.pengfeima.cn,我的 s3 endpoint url 是 http://qiniu-s3.s3-ap-southeast-1.qiniucs.com。当我点击 discourse 上的短链接时,它链接到
http://qiniu-s3.s3-ap-southeast-1.qiniucs.com/original/2X/e/effbf521dc7f117e7d9b57ed41b2cac576bf39d5.txt,但正确的 url 应该使用 cdn url 而不是 endpoint url。
我该如何解决这个问题?
PS
在我的网站上,S3 参数是在面板上设置的,而不是在 app.yml 中。
pfaffman
(Jay Pfaffman)
2
你运行了 rake 任务来预编译资源并推送到 S3 了吗?
如 设置文件和图片上传到 S3 中所述
我在管理面板上配置了相关设置,但我需要修改 app.yml 然后重建应用吗?我知道该怎么做,但这似乎有风险。
pfaffman
(Jay Pfaffman)
4
您可以通过以下方式在不重新构建的情况下运行 rake 任务:
./launcher enter app
rake assets:precompile rake s3:upload_assets
非常感谢!
我按照您说的做了,但是我的网站坏了。上传的资源是*.gz.js,存在编码问题。
它被称为七牛,这是一家中国的云服务提供商。
https://www.qiniu.com
问题是 CDN 引起的吗?
这是我的设置:
## S3 存储
DISCOURSE_USE_S3: true
DISCOURSE_S3_REGION: whatever
DISCOURSE_S3_ENDPOINT: http://s3-ap-southeast-1.qiniucs.com
DISCOURSE_S3_ACCESS_KEY_ID: *************
DISCOURSE_S3_SECRET_ACCESS_KEY: *****************
DISCOURSE_S3_CDN_URL: http://qiniu.pengfeima.cn
DISCOURSE_S3_BUCKET: qiniu-s3
DISCOURSE_S3_BACKUP_BUCKET: qiniu-s3/backups
DISCOURSE_BACKUP_LOCATION: s3
pfaffman
(Jay Pfaffman)
8
如果您使用 CDN 获取资源,与直接从存储桶获取资源相比,是否会获得具有相同标头的相同文件?
上传资源时似乎遇到了一些问题(只有照片是正确的)。我将不再为资源使用 CDN。
再次感谢!
1 个赞