Panduan Lengkap Deploy Laravel 12 di Shared Hosting cPanel Tanpa Akses Root
Banyak developer berasumsi bahwa menjalankan aplikasi modern ini menuntut kehadiran peladen privat virtual yang mahal. Kenyataannya, layanan hosting standar masih sangat sanggup menangani proyek skala menengah hingga portofolio, asalkan kita menerapkan metode unggah yang tepat. Tantangan utamanya terletak pada ketiadaan akses terdalam dan struktur direktori utama yang berbeda dengan arsitektur kerangka kerja.
Persiapan Aset di Lingkungan Lokal Langkah awal yang wajib dilakukan sebelum mendorong kode ke repositori adalah memastikan seluruh aset antarmuka telah dikompilasi. Mayoritas hosting standar tidak menyediakan lingkungan Node.js untuk melakukan kompilasi di peladen. Lakukan proses kompilasi di perangkat lokal Anda terlebih dahulu. Pastikan folder hasil kompilasi tidak masuk ke dalam daftar abaian Git agar berkas gaya dan skrip ikut terbawa, sementara berkas pengaturan lingkungan harus selalu diabaikan demi keamanan data kredensial.
Pemanfaatan Git Version Control pada cPanel Meninggalkan kebiasaan lama mengekstrak berkas kompresi secara manual akan memangkas banyak waktu. Cara paling bersih adalah memanfaatkan fitur Git bawaan pada panel kontrol hosting. Buat integrasi repositori baru dan masukkan tautan repositori utama Anda. Setelah proses kloning selesai, setiap kali ada pembaruan kode, Anda hanya perlu menekan tombol pembaruan data dari repositori secara langsung di cPanel.
Pengaturan Rute dengan Berkas Konfigurasi Ketika direktori utama hosting terkunci, jangan memindahkan berkas indeks utama secara sembarangan. Solusi paling rapi adalah meletakkan berkas .htaccess di direktori terluar dengan aturan penulisan ulang rute. Aturan ini bertugas mengamankan berkas sensitif dari akses publik, mengarahkan permintaan media langsung ke folder penyimpanan publik, dan meneruskan seluruh sisa lalu lintas pengunjung ke subfolder secara tak kasat mata.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(app|bootstrap|config|database|resources|routes|tests)/.*$ - [F,L]
RewriteRule ^(\.env|composer\.json|package\.json|package-lock\.json)$ - [F,L]
RewriteRule ^storage/(.*)$ public/storage/$1 [L]
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>Penyesuaian Lingkungan dan Kendala Memori Hosting standar umumnya tidak menyediakan peladen memori mandiri. Buka berkas pengaturan lingkungan melalui pengelola berkas di panel kontrol, lalu ubah pengaturan memori sementara, sesi, dan antrean menjadi berbasis fail atau basis data. Langkah ini akan langsung mengatasi masalah penolakan koneksi yang sering muncul saat aplikasi mencoba menyambung ke porta memori yang tidak aktif.
Perbaikan Tautan Penyimpanan Media Terkadang, proses penautan penyimpanan media gagal menampilkan gambar karena sistem membaca tautan dari sistem operasi lokal yang terbawa ke peladen Linux. Buka fitur Terminal di cPanel, hapus direktori penyimpanan publik yang bermasalah secara paksa, lalu jalankan kembali perintah pembentukan tautan penyimpanan. Setelah tautan sistem Linux yang sah terbentuk, seluruh foto dan berkas media akan langsung tampil normal di peramban tanpa terblokir.