Rin icon indicating copy to clipboard operation
Rin copied to clipboard

[Help] R2 无法正常使用

Open AlexeiLeery opened this issue 1 year ago • 17 comments

问题

  • 在Cloudflare的Pages变量名AVATAR更改后浏览器标签页无法图片,本来应该和博客里的左上角图片是一样的但是却没办法显示 image image image image
  • 如何更改首页即文章页的每篇文章占用的画面大小,即改为类似于你这种。 image image
  • 关于友链为何会莫名其妙变灰色且描述变为403 image image

还请大佬解惑一二!

AlexeiLeery avatar Oct 07 '24 05:10 AlexeiLeery

  1. 设置中网站图标可设置浏览器标签页小图标 图片
  2. 首页文章卡片大小暂不支持修改,截图中是社区修改过的
  3. 403 无权限访问对应链接,可尝试将User Agent 修改为自己浏览器的 UA(每 20 分钟会刷新一次状态), 图片 或关闭友链健康监测后在 D1 控制台中输入以下 SQAL 语句清空 friends 表中的 health 字段:
update friends set health = "";

图片

OXeu avatar Oct 07 '24 05:10 OXeu

  1. 设置中网站图标可设置浏览器标签页小图标 图片
  2. 首页文章卡片大小暂不支持修改,截图中是社区修改过的
  3. 403 无权限访问对应链接,可尝试将User Agent 修改为自己浏览器的 UA(每 20 分钟会刷新一次状态),或关闭友链健康监测后重新手动保存每条友链 图片

但是关不掉啊,我每次博客里设置了之后刷新一下就又被重置为默认设置的了,这是什么原因造成的?

AlexeiLeery avatar Oct 07 '24 05:10 AlexeiLeery

  1. 设置中网站图标可设置浏览器标签页小图标 图片
  2. 首页文章卡片大小暂不支持修改,截图中是社区修改过的
  3. 403 无权限访问对应链接,可尝试将User Agent 修改为自己浏览器的 UA(每 20 分钟会刷新一次状态),或关闭友链健康监测后重新手动保存每条友链 图片

但是关不掉啊,我每次博客里设置了之后刷新一下就又被重置为默认设置的了

关闭需要等待开关左侧的加载图标消失才会生效,每次刷新都会重新加载配置,设置标题右侧的加载图标消失后才是真实的配置

OXeu avatar Oct 07 '24 06:10 OXeu

  1. 设置中网站图标可设置浏览器标签页小图标 图片
  2. 首页文章卡片大小暂不支持修改,截图中是社区修改过的
  3. 403 无权限访问对应链接,可尝试将User Agent 修改为自己浏览器的 UA(每 20 分钟会刷新一次状态),或关闭友链健康监测后重新手动保存每条友链 图片

但是关不掉啊,我每次博客里设置了之后刷新一下就又被重置为默认设置的了

关闭需要等待开关左侧的加载图标消失才会生效,每次刷新都会重新加载配置,设置标题右侧的加载图标消失后才是真实的配置

emmmm............不是太理解这句话,究竟如何才能做到即使刷新也和设置好了之后的一样而不会被重置到默认设置?设置标题右侧的加载图标一直没见到 image 然后这种加载图标刷新后又会重置 image

AlexeiLeery avatar Oct 07 '24 06:10 AlexeiLeery

然后这种加载图标刷新后又会重置

意思是等待这种加载图标消失后修改才被成功保存 图片

OXeu avatar Oct 07 '24 06:10 OXeu

然后这种加载图标刷新后又会重置

意思是等待这种加载图标消失后修改才被成功保存 图片

但是消失后还是刷新后就失效了,这是为啥,难道是我部署时候出现了问题?

AlexeiLeery avatar Oct 07 '24 06:10 AlexeiLeery

然后这种加载图标刷新后又会重置

意思是等待这种加载图标消失后修改才被成功保存 图片

但是消失后还是刷新后就失效了,这是为啥,难道是我部署时候出现了问题?

检查了一下发现部署没有问题,这是属于bug还是啥?

AlexeiLeery avatar Oct 07 '24 07:10 AlexeiLeery

检查你的 R2 存储桶中是否有文件,同时检查能否正常上传图片以及存储桶访问权限,目前的情况说明配置没有被成功保存到存储桶中或存储桶未打开公共访问权限

OXeu avatar Oct 07 '24 17:10 OXeu

检查你的 R2 存储桶中是否有文件,同时检查能否正常上传图片以及存储桶访问权限,目前的情况说明配置没有被成功保存到存储桶中或存储桶未打开公共访问权限

好像确实是这个出了问题,但是我仔仔细细检查了我的部署步骤,发现并没有出问题,跟着YouTube这位博主的视频手把手部署的。我试着写文章不用Markdown图片而是直接上传图片发现一直显示和加载上传中 image 然后打开Cloudflare的存储桶也是直接无法访问,但是我的公共访问实际上已经开启了 image image 这种情况该如何处理?

AlexeiLeery avatar Oct 08 '24 00:10 AlexeiLeery

检查你的 R2 存储桶中是否有文件,同时检查能否正常上传图片以及存储桶访问权限,目前的情况说明配置没有被成功保存到存储桶中或存储桶未打开公共访问权限

好像确实是这个出了问题,但是我仔仔细细检查了我的部署步骤,发现并没有出问题,跟着YouTube这位博主的视频手把手部署的。我试着写文章不用Markdown图片而是直接上传图片发现一直显示和加载上传中 image 然后打开Cloudflare的存储桶也是直接无法访问,但是我的公共访问实际上已经开启了 image image 这种情况该如何处理?

R2 对象存储 -> 管理 R2 API 令牌 -> 检查令牌权限是否为 对象读和写

OXeu avatar Oct 08 '24 10:10 OXeu

检查你的 R2 存储桶中是否有文件,同时检查能否正常上传图片以及存储桶访问权限,目前的情况说明配置没有被成功保存到存储桶中或存储桶未打开公共访问权限

好像确实是这个出了问题,但是我仔仔细细检查了我的部署步骤,发现并没有出问题,跟着YouTube这位博主的视频手把手部署的。我试着写文章不用Markdown图片而是直接上传图片发现一直显示和加载上传中 image 然后打开Cloudflare的存储桶也是直接无法访问,但是我的公共访问实际上已经开启了 image image 这种情况该如何处理?

R2 对象存储 -> 管理 R2 API 令牌 -> 检查令牌权限是否为 对象读和写

一开始设置的就是管理员读和写的权限,应该不是这个原因造成的。 为了进一步核查是否是这个的问题,我删除了之前创建的R2储存桶的API令牌然后重新生成了访问密钥ID机密访问密钥但是GitHub重新部署时却失败了。 image image image 我简直要疯了

AlexeiLeery avatar Oct 08 '24 10:10 AlexeiLeery

图片 这两个之值是分别填写在 S3_ACCESS_KEY_ID 和 S3_SECRET_ACCESS_KEY 即:

S3_ACCESS_KEY_ID=ad6bfe5c2**********9803c108ed8b3
S3_SECRET_ACCESS_KEY=fbb2ddd2c89bd7******************************7a195c0aa87a4cc87f30b

出现 Cloudflare API 错误说明你修改到 CLOUDFLARE_ACCOUNT_IDCLOUDFLARE_API_TOKEN 去了

现在的问题你应该重点检查所有 S3_ 开头的 Variables 和 Secrets,特别是 S3_BUCKET 的名称是否正确(包括大小写、中划线、是否有多余空格)

OXeu avatar Oct 08 '24 11:10 OXeu

我仔细检查了S3开头的 Variables 和 Secrets大小写、中划线和是否有多余空格,发现都没有问题,我是按照如下部署方式部署的,请问是部署方式有什么问题吗?

构建命令:bun b

构建输出目录:client/dist

环境变量:

NAME=Xeu # 昵称,显示在左上角 DESCRIPTION=杂食动物 # 个人描述,显示在左上角昵称下方 AVATAR=https://avatars.githubusercontent.com/u/36541432# 头像地址,显示在左上角 API_URL=https://rin.xeu.life# 服务端域名,可以先使用默认值查看效果,后续部署服务端随后修改 PAGE_SIZE=5 # 默认分页大小,推荐5 SKIP_DEPENDENCY_INSTALL=true UNSTABLE_PRE_BUILD=asdf install Bunlatest && asdf global Bunlatelate && Bun i

存储桶设置交叉策略设置:

[
  {
    "AllowedOrigins": [
      "https://r2blog.********.xyz"
    ],
    "AllowedMethods": [
      "GET",
      "DELETE",
      "HEAD",
      "POST",
      "PUT"
    ],
    "AllowedHeaders": [
      "Content-Type"
    ]
  }
]

接入github:

首页URL填写上面的前端地址 授权回调URL填写https://<你的前端地址>/user/github/callback

仓库变量:

FRONTEND_URL=前端地址,填写前端所绑定的域名,如https://blog.obdo.cc S3_BUCKET=R2 存储桶名称,如下面示例中的 rin-storage S3_REGION=auto S3_ENDPOINT=R2 的 S3 API,去掉域名后面的路径,如https://1234567890abcdef1234567890abcd.r2.cloudflarestorage.com S3_ACCESS_HOST=R2 公开访问域名,如下文中的示例https://rin-storage.obdo.cc

仓库secret:

CLOUDFLARE_ACCOUNT_ID=Cloudflare 的账户ID CLOUDFLARE_API_TOKEN=Cloudflare 的用户API令牌值 RIN_GITHUB_CLIENT_ID=哈希生成的Github客户端ID RIN_GITHUB_CLIENT_SECRET=邻居生成的Github客户端密钥 JWT_SECRET=加密用的密钥,可以使用密码生成器随机生成一个 S3_ACCESS_KEY_ID=存储桶API的访问密钥ID S3_SECRET_ACCESS_KEY=存储桶API的机密访问密钥

添加路由:

cloudflare的rin-server的workers里点击添加域名,绑定自己的域名, cloudflare的rin-server的workers里点击添加路由,依次加入接口添加域名/sub/* 接口域名/seo/*

回到前面创建的前端页面

将制作与预览的APL_URL均修改为上面rin-server里绑定的域名

最后重新部署页面

AlexeiLeery avatar Oct 08 '24 12:10 AlexeiLeery

提一个小小的建议,能否把设置里的友链监测、友链健康监测 User-Agent、网站图标、站点底部内容等功能通过环境变量来进行操作控制啊?被整麻了......

AlexeiLeery avatar Oct 08 '24 12:10 AlexeiLeery

提一个小小的建议,能否把设置里的友链监测、友链健康监测 User-Agent、网站图标、站点底部内容等功能通过环境变量来进行操作控制啊?被整麻了......

如果实在不行也可以尝试其他兼容 S3 协议的对象存储,或者等待后续的更新

OXeu avatar Oct 08 '24 13:10 OXeu

提一个小小的建议,能否把设置里的友链监测、友链健康监测 User-Agent、网站图标、站点底部内容等功能通过环境变量来进行操作控制啊?被整麻了......

如果实在不行也可以尝试其他兼容 S3 协议的对象存储,或者等待后续的更新

望早日更新!


我在别的论坛问了一下坛友,也有类似情况 image

AlexeiLeery avatar Oct 08 '24 16:10 AlexeiLeery

经过我的反反复复试探测试,发现在点击更新按钮后直接退出账号,然后就会保留部分更新后的内容,比如:浏览器标签页内容、开启RSS。但是友链健康检测、站点底部内容依旧无法显示。同时重新登陆刷新页面和cloudflare pages重新部署都会全部回到默认设置

AlexeiLeery avatar Oct 11 '24 15:10 AlexeiLeery