Layanan penyimpanan objek kompatibel S3 terbaru dari Hetzner membawa kemungkinan menarik bagi para pengembang, namun mengkonfigurasinya untuk upload langsung oleh pengguna memerlukan beberapa langkah tambahan. Panduan ini mengeksplorasi cara menyiapkan kebijakan CORS untuk mengaktifkan URL yang telah ditandatangani sebelumnya (presigned URLs) untuk upload file yang mulus dalam aplikasi web menggunakan layanan Hetzner.
Potensi Penyimpanan Kompatibel S3
Hetzner telah bergabung dengan jajaran penyedia cloud yang menawarkan penyimpanan objek kompatibel S3, mengikuti jejak raksasa industri seperti Cloudflare dan Backblaze. Langkah ini penting bagi pengembang, karena memungkinkan mereka memanfaatkan AWS SDK yang sudah familiar tanpa terikat pada ekosistem penyedia tunggal.
Tantangan Konfigurasi CORS
Meskipun Hetzner menyediakan kunci akses untuk operasi bucket dasar, saat ini tidak ada cara bawaan untuk mengkonfigurasi kebijakan CORS (Cross-Origin Resource Sharing). Keterbatasan ini dapat memblokir upload dari URL yang telah ditandatangani sebelumnya, memaksa pengembang untuk mengarahkan upload file pengguna melalui server API mereka alih-alih mengizinkan akses bucket secara langsung.
Solusi Alternatif Menggunakan AWS CLI
Untungnya, implementasi Hetzner mendukung cukup banyak API S3 untuk memungkinkan penggunaan Command Line Interface (CLI) AWS untuk konfigurasi lanjutan. Berikut adalah proses langkah demi langkah untuk menyiapkan CORS untuk bucket Hetzner Anda:
-
Konfigurasi AWS CLI: Siapkan profil di file
~/.aws/config
dan~/.aws/credentials
Anda untuk bekerja dengan endpoint Hetzner. -
Buat Kebijakan CORS: Tentukan file JSON (
cors.json
) yang menentukan asal yang diizinkan, metode, header, dan pengaturan CORS lainnya. -
Terapkan Kebijakan: Gunakan perintah
aws s3api put-bucket-cors
untuk mengunggah dan menerapkan konfigurasi CORS ke bucket Hetzner.
Pertimbangan Penting
- URL Endpoint: Anda mungkin perlu secara eksplisit menentukan URL endpoint dalam perintah AWS CLI Anda.
- Keamanan: Pertimbangkan dengan cermat asal dan metode mana yang akan diizinkan dalam kebijakan CORS Anda untuk menjaga keamanan yang tepat.
- Pengujian: Verifikasi konfigurasi Anda dengan mencoba upload langsung dari aplikasi web Anda.
Dengan mengikuti langkah-langkah ini, pengembang dapat membuka potensi penuh penyimpanan kompatibel S3 dari Hetzner, memungkinkan upload pengguna langsung yang efisien dalam aplikasi web mereka. Pendekatan ini menggabungkan efektivitas biaya dari layanan Hetzner dengan fleksibilitas dan keakraban ekosistem S3.
Seiring evolusi pilihan penyimpanan cloud, memahami cara mengkonfigurasi dan mengoptimalkan layanan ini menjadi semakin berharga bagi pengembang yang ingin membangun aplikasi yang dapat diskalakan dan efisien.