Sebelumnya, penulis telah membuat tutorial cara membuat bucket storage S3 dan memberi hak akses khusus bucket storage AWS S3 dengan AWS IAM. Apabila kamu belum mendapat atau membaca tutorial ini yang sebelumnya, bisa kunjungi link disini.
Hal ini berguna untuk keperluan internal (tidak dapat diakses publik). Misalkan, memberikan ebook panduan aturan yang ada di sekolah atau di kampus atau memberikan ebook panduan etika dan profesi di perusahaan atau industri yang dimana itu bisa diakses oleh beberapa calon kandidat yang baru lulus untuk diterima kerja di perusahaan atau industri.
Artikel ini memberikan implementasi untuk upload file ke bucket S3 di dalam XAMPP Windows, khususnya server lokal (intranet) yang memungkinkan dapat menyimpan data secara langsung tanpa harus melakukan migrasi dari server lain.
Artikel ini memberikan tutorial cara upload file ke AWS S3 dengan bahasa pemrograman PHP di XAMPP Windows. Pada tutorial kali ini akan dibagikan 2 bagian yaitu :
1. Membuat S3 Bucket Storage Baru.
2. Membuat Program untuk Upload File ke S3 dengan PHP.
Daftar Isi
SEBELUM MULAI TUTORIAL INI :
Hal-hal yang harus perhatikan sebelum mulai tutorial ini yaitu :
♦ Pastikan telah install composer di PC atau laptop.
♦ Pastikan menggunakan XAMPP versi terbaru atau PHP versi 7 ke atas.
♦ Pastikan ada koneksi internet.
♦ Bagi AWS Personal Free Tier, pastikan kamu telah membaca aturan batasan Free Tier untuk layanan S3.
LANGKAH-LANGKAH
1. Aktifkan aplikasi XAMPP Control Panel.
2. Aktifkan layanan Apache dengan klik Start. Tunggu beberapa saat sampai tulisan Apache dilabeli warna hijau.
3. Buatlah folder baru dengan beri nama “aws-upload-file” di dalam htdocs pada XAMPP. (tidak pakai tanda kutip).
4. Aktifkan Command Line (CMD).
5. Ketikkan “cd /”, tekan Enter. (tidak pakai tanda kutip)
6. Ketikkan “lokasi partisi (a:, b:, c:, d:, atau huruf lain)”, tekan Enter. (tidak pakai tanda kutip)
6. Ketikkan “cd xampp/htdocs/aws-upload-file”, tekan Enter. (tidak pakai tanda kutip).
7. Ketikkan “composer require aws/aws-sdk-php”, tekan Enter. (tidak pakai tanda kutip).
8. Kembali lagi ke folder aws-upload-file tadi.
9. Aktifkan aplikasi teks editor untuk membuat program sederhana untuk upload file ke bucket storage S3 dengan PHP.
10. Ketikkan kode perintah untuk membuat form upload file :
<html> <head> <title> Upload File ke S3 </title> </head> <body> <h2 align="center">Tempat Upload File ke Bucket Storage S3</h2> <center> <form action="hasil.php" method="POST" enctype="multipart/form-data"> <input type="file" name="image" /> <input type="submit"/> </form> </center> </body> </html>
11. Simpanlah file dengan beri nama “upload.php”.
12. Ketikkan kode perintah untuk eksekusi program upload file ke S3 :
<?php if(isset($_FILES['image'])){ $file_name = $_FILES['image']['name']; $temp_file_location = $_FILES['image']['tmp_name']; require 'vendor/autoload.php'; // Konfigurasi untuk Pengaturan Bucket Storage S3. $s3 = new Aws\S3\S3Client([ 'region' => 'Masukkan region yang sesuai dengan bucket S3 kamu', 'version' => 'latest', 'credentials' => [ 'key' => "Masukkan kode Access key ID kamu.", 'secret' => "Masukkan kode Secret Access key kamu", ] ]); // Konfigurasi untuk pengaturan lokasi upload file ke Bucket Storage S3. $result = $s3->putObject([ 'Bucket' => 'Masukkan nama bucket storage S3 kamu', 'Key' => $file_name, 'SourceFile' => $temp_file_location ]); echo "Anda telah berhasil upload ke S3..."; } ?>
Untuk region, bisa diambil dari list bucket S3 di akun AWS kamu yang terdapat pada gambar di bawah ini.
Sedangkan, kode Access key ID dan Secret access key bisa diambil dari credential.csv.
13. Simpanlah file dengan beri nama “hasil.php”.
14. Aktifkan web browser yang ada di PC atau laptop.
15. Silahkan akses http://localhost/aws-upload-file/upload.php.
16. Klik Choose File.
17. Pilihlah file yang ingin menguji upload file ke bucket S3, klik Open.
18. Klik Submit.
19. Tampilan hasil upload file ke Bucket S3.
20. Kunjungi situs https://s3.console.aws.amazon.com/.
21. Pilihlah bucket storage yang ingin dilihat hasil upload file tadi.
22. Tada….. Kamu bisa melihat hasil upload / kiriman file yang ada di bucket kamu.
Selesai.
CATATAN :
Apabila kamu menemukan error yang bertulisan seperti “cURL error 60: SSL certificate: unable to get local issuer certificate” pada saat proses upload file ke bucket S3 di browser. Untuk mengatasi hal ini dengan membaca tutorial yang di bawah ini :
Tutorial Cara Menggunakan CA Certificate gratis di XAMPP.
Hal ini terjadi karena tidak ada file keamanan bagian CA Certification di dalam XAMPP sehingga website kamu tidak dapat mengakses layanan situs AWS S3 yang disebabkan tidak memiliki sertifikat SSL.
KESIMPULAN
Kamu bisa belajar membuat website yang untuk upload file ke bucket storage S3 dengan menggunakan XAMPP sebelum website kamu dikembangkan dan siap dipakai oleh siapapun baik itu secara intranet (server lokal) maupun internet (hosting atau VPS).
Sebaiknya, kamu harus jaga-jaga kode credential AWS IAM milik kamu seperti kode Access key, Secret access key, dan lain-lain.