Discourse 开启 S3/R2 存储后, JS 静态文件全部 404 了?
最近尝试搭建了个 Discourse 的论坛:[SySec](https://sysec.cc/),在静态资源的配置上遇到点问题。
原本是想接入 Cloudflare 的 R2 对象存储,专门用来存放用户上传的图片和附件。结果在 app.yml 里配完 S3 相关的环境变量并重建后,前端页面直接打不开了。
F12 看了一下网络请求,发现不仅是用户上传的附件,连系统自带的 JS 和 CSS 等核心静态资源,也全部被自动重定向到 R2 的域名下进行拉取,导致报 404 错误。
相关的报错信息如下:
```
Request URL: https://assets.sysec.cc/assets/br/plugins/chat_main.5dx2fo-1qjwks8b.digested.js
Request Method: GET
Status Code: 404 Not Found
Remote Address: [2606:4700:3037::ac43:c8ba]:443
Referrer Policy: strict-origin-when-cross-origin
```
比较疑惑的是,我并没有配置全局的 CDN(DISCOURSE_CDN_URL),本意只是分离用户附件,但 Discourse 默认把 Assets 静态资源也一并接管了😵💫……
所以这种情况是必须通过 `rake s3:upload_assets` 把系统的静态资源也全量同步到 R2 才能正常工作,还是说有参数可以实现“只存用户附件,本地保留 JS/CSS”的纯分离模式呐?
---
原文链接:[点击查看](https://www.v2ex.com/t/1234641)
原本是想接入 Cloudflare 的 R2 对象存储,专门用来存放用户上传的图片和附件。结果在 app.yml 里配完 S3 相关的环境变量并重建后,前端页面直接打不开了。
F12 看了一下网络请求,发现不仅是用户上传的附件,连系统自带的 JS 和 CSS 等核心静态资源,也全部被自动重定向到 R2 的域名下进行拉取,导致报 404 错误。
相关的报错信息如下:
```
Request URL: https://assets.sysec.cc/assets/br/plugins/chat_main.5dx2fo-1qjwks8b.digested.js
Request Method: GET
Status Code: 404 Not Found
Remote Address: [2606:4700:3037::ac43:c8ba]:443
Referrer Policy: strict-origin-when-cross-origin
```
比较疑惑的是,我并没有配置全局的 CDN(DISCOURSE_CDN_URL),本意只是分离用户附件,但 Discourse 默认把 Assets 静态资源也一并接管了😵💫……
所以这种情况是必须通过 `rake s3:upload_assets` 把系统的静态资源也全量同步到 R2 才能正常工作,还是说有参数可以实现“只存用户附件,本地保留 JS/CSS”的纯分离模式呐?
---
原文链接:[点击查看](https://www.v2ex.com/t/1234641)
· 0 个赞