Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Struktur Objek CloudFront

Objek cloudfront mengonfigurasi pengiriman CloudFront untuk file yang disimpan di S3. Objek ini diperlukan jika fileStrategy atau entri fileStrategies mana pun menggunakan "cloudfront".

Contoh

fileStrategies:
  avatar: 'cloudfront'
  image: 'cloudfront'
  document: 's3'

cloudfront:
  domain: 'https://cdn.example.com'
  distributionId: 'E1234ABCD'
  invalidateOnDelete: false
  imageSigning: 'cookies'
  cookieDomain: '.example.com'
  cookieExpiry: 1800
  urlExpiry: 3600
  storageRegion: 'us-east-2'
  includeRegionInPath: false
  requireSignedAccess: true

Fields

KeyTypeDescriptionExample
domainStringDomain distribusi CloudFront atau CNAME. Wajib diisi.domain: "https://cdn.example.com"
distributionIdStringID distribusi CloudFront. Diperlukan saat `invalidateOnDelete` bernilai true.distributionId: "E1234ABCD"
invalidateOnDeleteBooleanMembuat invalidasi CloudFront setelah menghapus objek S3. Default: false.invalidateOnDelete: false
imageSigningStringMode penandatanganan media inline. Opsi: `"none"`, `"cookies"`, `"url"`. `"url"` dicadangkan dan belum diimplementasikan untuk gambar.imageSigning: "cookies"
urlExpiryNumberMasa berlaku URL unduhan CloudFront yang ditandatangani dalam detik. Default: 3600.urlExpiry: 3600
cookieExpiryNumberMasa berlaku cookie yang ditandatangani dalam detik. Default: 1800. Maksimum: 604800.cookieExpiry: 1800
cookieDomainStringDomain induk bersama untuk cookie yang ditandatangani. Diperlukan saat `imageSigning` bernilai `"cookies"`. Harus diawali dengan titik.cookieDomain: ".example.com"
storageRegionStringLabel wilayah opsional yang digunakan dalam kunci objek yang dihasilkan saat `includeRegionInPath` bernilai true.storageRegion: "us-east-2"
includeRegionInPathBooleanMenyertakan wilayah penyimpanan dalam kunci objek yang baru dibuat. Default: false.includeRegionInPath: false
requireSignedAccessBooleanMemerlukan akses CloudFront signed-cookie agar berhasil diinisialisasi saat startup. Default: false.requireSignedAccess: true

Aturan Validasi

  • distributionId diperlukan jika invalidateOnDelete bernilai true.
  • cookieDomain diperlukan saat imageSigning bernilai "cookies".
  • cookieDomain harus diawali dengan titik, contohnya .example.com.
  • requireSignedAccess: true memerlukan imageSigning: "cookies".
KeyTypeDescriptionExample
CLOUDFRONT_KEY_PAIR_IDStringID pasangan kunci publik CloudFront. Diperlukan untuk cookie bertanda tangan dan unduhan bertanda tangan.# CLOUDFRONT_KEY_PAIR_ID=K1234567890ABC
CLOUDFRONT_PRIVATE_KEYStringPEM kunci privat CloudFront. Diperlukan untuk cookie bertanda dan unduhan bertanda.# CLOUDFRONT_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----"

Untuk panduan penyebaran, lihat CloudFront with S3.

Bagaimana panduan ini?