Khoảng 5 phút

Cách tải tệp lên Cloudflare R2 và chia sẻ liên kết

Cloudflare R2 rất hợp với Aktar: không tính phí băng thông ra (egress), có gói miễn phí đủ cho hầu hết nhu cầu chia sẻ ảnh chụp màn hình, và tên miền riêng được phục vụ qua mạng lưới của Cloudflare. Aktar có thiết lập sẵn dành riêng cho R2, nên bạn chỉ cần ID tài khoản, một API token và một bucket.

Bạn cần gì

  • Một tài khoản Cloudflare đã bật R2
  • Một tên miền trên Cloudflare nếu bạn muốn liên kết dùng tên miền riêng (không bắt buộc)
  • Aktar đã được cài trên máy Mac

Từng bước

  1. 1

    Tạo bucket

    Trong bảng điều khiển Cloudflare, mở R2 Object Storage và nhấp Create bucket. Chọn một tên ngắn như screenshots và giữ vị trí tự động.

  2. 2

    Cấp cho bucket một địa chỉ công khai

    Mở Settings của bucket. Trong Custom Domains, kết nối một tên miền hoặc tên miền phụ bạn quản lý trên Cloudflare, ví dụ files.example.com. Đây là lựa chọn tốt nhất khi dùng thật.

    Để thử nhanh, bạn có thể bật Public Development URL (pub-….r2.dev). Cloudflare giới hạn tốc độ URL này và không khuyến nghị dùng cho môi trường production.

  3. 3

    Tạo API token

    Quay lại trang tổng quan R2, mở Manage API tokens và tạo một token có quyền Object Read & Write, giới hạn cho bucket của bạn. Sao chép Access Key ID và Secret Access Key: secret chỉ hiển thị một lần.

    Account ID của bạn hiển thị trên cùng trang đó, và cũng là phần đầu của endpoint S3 https://<ACCOUNT_ID>.r2.cloudflarestorage.com.

  4. 4

    Thêm đích trong Aktar

    Mở Cài đặt của Aktar → Đích → Thêm đích, chọn Cloudflare R2 và điền các trường theo bảng bên dưới. Aktar tự suy ra endpoint từ ID tài khoản của bạn.

  5. 5

    Kiểm tra và lưu

    Nhấp Kiểm tra kết nối. Aktar tải lên một tệp thử rất nhỏ, kiểm tra xem nó có truy cập được qua địa chỉ công khai không rồi xóa đi. Khi mọi thứ đều xanh, nhấp Lưu và thả tệp đầu tiên lên biểu tượng trên thanh menu.

Cài đặt trong Aktar

Nhập các giá trị này trong Cài đặt → Đích → Thêm đích. Tên trường giống hệt trong ứng dụng.

TrườngGiá trị ví dụ
Nhà cung cấpCloudflare R2
Tên hồ sơPersonalTên bất kỳ bạn thích.
ID tài khoản3f9a71c0e2b8…Lấy từ trang tổng quan R2.
VùngautoGiữ mặc định.
Access Key IDa1b2c3d4…Lấy từ R2 API token.
Secret Access Key••••••••Được lưu trong Chuỗi khóa của macOS.
Bucketscreenshots
URL cơ sở công khaifiles.example.comTên miền riêng của bạn hoặc URL r2.dev.
Đường dẫn đối tượng{year}/{month}/{uuid}.{ext}Không bắt buộc, xem phần tên tệp và thư mục.

Mẹo

  • Giới hạn API token chỉ cho một bucket mà Aktar dùng. Nếu token bị lộ, không có gì khác bị ảnh hưởng.
  • Tên miền riêng được Cloudflare lưu đệm, nên các liên kết nhiều lượt xem vẫn tải nhanh trên toàn cầu mà không tốn thêm chi phí.
  • Muốn thư mục gọn gàng? Đổi đường dẫn đối tượng, ví dụ thành shots/{date}/{filename}-{random}.{ext}. Xem tên tệp và thư mục.
  • Muốn tệp tải lên tự xóa sau 1 đến 30 ngày? Với token Admin Read & Write, Aktar sẽ thêm quy tắc vòng đời cho bucket giúp bạn. Với token Object Read & Write, hãy tự thêm chúng trong Object Lifecycle Rules ở Settings của bucket. Xem tệp tải lên tự xóa.

Khắc phục sự cố

Liên kết trả về Access Denied hoặc 403

Đảm bảo URL cơ sở công khai là tên miền riêng hoặc URL r2.dev của bạn. Endpoint …r2.cloudflarestorage.com chỉ dành cho API và không bao giờ phục vụ tệp công khai. Xem thêm tại lỗi Access Denied.

Kiểm tra kết nối báo thông tin xác thực không hợp lệ

Dùng Access Key ID và Secret Access Key của R2 API token, không phải Cloudflare API token thông thường hay Global API Key. Kiểm tra ID tài khoản không có khoảng trắng thừa.

Tải lên được nhưng liên kết chậm hoặc bị giới hạn tốc độ

Có lẽ bạn đang dùng URL phát triển r2.dev. Hãy kết nối tên miền riêng khi dùng thật.

Vẫn chưa được?Xem phần Hỏi đáp hoặc hỏi trên GitHub.