问题 OpenList 链接 RustFS s3 端点后无法通过 OpenList 上传文件

控制台出现 cors 或者 403 等导致无法通过 OpenList 上传文件

记一次借助 ai 帮朋友机器排查 openlist 对接 rustfs 无法上传问题 403、cors 错误1

环境信息: (问 ai 前最好提前说明相关服务环境信息)

  • RustFS 服务运行在 localhost:9000 (HTTP)
  • Nginx 反向代理在 9002 端口提供 HTTPS 访问
  • 端点地址:https://RustFS.example.com:9002
  • OpenList 在别的机器:https://alist.example.com

省流总结:

Nginx 对 RustFS 的反代缺少一个关键配置 proxy_redirect off
反代实现 https 的时候端口冲突导致 301 重定向循环

Tip

问 ai 前最好提前说明相关服务环境信息,复盘流程会发现,如果知道 Nginx 做了反代可以提前让 ai 检查 Nginx 加快问题排查流程。本次排查时间主要消耗在梳理朋友机器网络环境上,ai debug 还是很快的

附上问题排查流程 (省略了一部分内容 + 信息脱敏)

Note

本次排查在 Antigravity + Claude Opus 4.5 (Thinking) 工具下

1. 先直接通过 RustFS 页面上传,确认 RustFS 服务正常。 –确认服务正常

2. 接下来让 ai 编写 s3 端点上传,验证 s3 端点上传是否正常。 –问题初显

  • 初始尝试:使用 boto3 默认配置连接,返回 301 错误

    ~/…/github/rustf $ uv run test_upload.py
    
    Installed 7 packages in 52ms                      
    ==================================================
    🚀 RustFS S3 上传测试                                                                                    
    ==================================================                                                  
    ⚠️  未指定文件,将创建测试文件...
    📝 已创建测试文件: /tmp/RustFS_test.txt
    📦 正在上传: /tmp/RustFS_test.txt
    📍 目标: s3://ccc/RustFS_test.txt
    🔗 端点: https://RustFS.example.com:9002
    ❌ 上传失败: Failed to upload /tmp/RustFS_test.txt to ccc/RustFS_test.txt: An error occurred (301) when calling the PutObject operation: Moved Permanently
    
  • 尝试添加路径风格访问:仍然失败 301

config=Config(
    signature_version="s3v4",
    s3={"addressing_style": "path"}
)
  • 添加 region 配置:仍然失败 301
region_name="us-east-1" 
  • 禁用 ssl:上传成功,但后面又失败了,上传成功后的 ListObjectsV2 操作也出现 301

继续 curl 检查端点响应信息

记一次借助 ai 帮朋友机器排查 openlist 对接 rustfs 无法上传问题 403、cors 错误4

  • 得出问题在 Nginx
    接下来把 Nginx 完整信息发送并解析,得出关键信息,缺少 proxy_buffering off;

记一次借助 ai 帮朋友机器排查 openlist 对接 rustfs 无法上传问题 403、cors 错误2

  • 重载 Nginx 配置后,上传 100% 成功,但 ListObjectsV2 操作出现 301

    继续让 ai 检查 Nginx 配置,发现一处端口冲突导致的重定向循环。。。

    删除后重载 Nginx 配置,ListObjectsV2 也正常了。OpenList 端也恢复正常使用了。

记一次借助 ai 帮朋友机器排查 openlist 对接 rustfs 无法上传问题 403、cors 错误3


📌 转载信息
原作者:
wwzccccc
转载时间:
2025/12/25 11:16:25

标签: ChatGPT, 人工智能, 原创, 软件开发, 公益推广, 作品集

添加新评论