Coding

Cara Install Laravel di cPanel: Panduan Lengkap untuk Pemula

6 min read
Admin Admin

Daftar Isi

Laravel adalah framework PHP populer yang disukai developer karena sintaksnya yang elegan dan fitur-fitur canggihnya. Meskipun pengembangan lokal Laravel cukup straightforward, proses deployment ke hosting cPanel sering membuat bingung, terutama bagi pemula. Artikel ini akan memandu kamu cara install Laravel di cPanel dengan langkah-langkah yang jelas.

Persyaratan

Sebelum memulai, pastikan hosting cPanel kamu memenuhi persyaratan Laravel:

  • PHP 8.0 atau lebih tinggi
  • Ekstensi PHP: BCMath, Ctype, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML
  • Composer (opsional, bisa diinstall di server atau lokal)
  • Akses SSH (sangat membantu tapi tidak wajib)

Metode 1: Upload Proyek Laravel yang Sudah Jadi

Metode ini cocok jika kamu sudah memiliki proyek Laravel yang dikembangkan di lokal dan ingin mendeploynya ke server cPanel.

Langkah 1: Persiapkan Proyek Laravel

  1. Buka terminal/command prompt di komputer lokal
  2. Masuk ke direktori proyek Laravel kamu
  3. Jalankan perintah berikut untuk mengoptimalkan proyek:
    composer install --optimize-autoloader --no-dev
  4. Generate application key jika belum:
    php artisan key:generate
  5. Compile assets jika menggunakan Laravel Mix:
    npm run prod

Langkah 2: Zip dan Upload Proyek

  1. Kompres seluruh folder proyek Laravel menjadi file ZIP
  2. Login ke cPanel hosting kamu
  3. Buka File Manager
  4. Navigasi ke direktori public_html (atau subdirektori jika ingin menginstall di folder tertentu)
  5. Klik tombol "Upload" dan pilih file ZIP proyek Laravel
  6. Setelah upload selesai, klik kanan pada file ZIP dan pilih "Extract"
  7. Setelah ekstraksi selesai, kamu bisa menghapus file ZIP-nya
cPanel File Manager

Langkah 3: Atur Struktur Direktori

Untuk keamanan, sebaiknya file-file Laravel tidak langsung diakses dari public_html. Berikut cara mengaturnya:

  1. Buat folder baru di luar public_html, misalnya "laravel_app"
  2. Pindahkan semua file dan folder Laravel ke folder "laravel_app" kecuali folder "public"
  3. Pindahkan semua isi folder "public" ke folder public_html
  4. Edit file index.php di public_html, ubah path ke file autoload.php dan bootstrap/app.php:
    require __DIR__.'/../laravel_app/vendor/autoload.php';

    $app = require_once __DIR__.'/../laravel_app/bootstrap/app.php';

Perhatian

Jika hosting kamu tidak mengizinkan akses ke direktori di luar public_html, kamu bisa tetap menyimpan semua file di public_html, tapi ini kurang aman karena file-file sensitif seperti .env bisa diakses langsung.

Langkah 4: Konfigurasi Database

  1. Buka cPanel dan masuk ke bagian "MySQL Databases"
  2. Buat database baru dan user database
  3. Tambahkan user ke database dengan memberikan semua privileges
  4. Buka file .env di direktori laravel_app dan update konfigurasi database:
    DB_CONNECTION=mysql
    DB_HOST=localhost
    DB_PORT=3306
    DB_DATABASE=nama_database_kamu
    DB_USERNAME=username_database_kamu
    DB_PASSWORD=password_database_kamu
cPanel MySQL Database

Langkah 5: Atur Permission

  1. Di File Manager, navigasi ke folder laravel_app
  2. Buat folder "storage" bisa ditulis:
    1. Klik kanan folder "storage" dan pilih "Change Permissions"
    2. Set permission ke 755 untuk direktori
    3. Centang opsi "Recursive"
    4. Klik "Change Permissions"
  3. Lakukan hal yang sama untuk folder "bootstrap/cache"

Langkah 6: Migrasi Database

Jika kamu memiliki akses SSH, kamu bisa menjalankan migrasi langsung dari server:

cd /home/username/laravel_app
php artisan migrate

Jika tidak memiliki akses SSH, kamu bisa:

Tertarik baca Tutorial Lengkap Membuat Dashboard Analitik Real-time dengan React di sini.
  1. Export SQL dari database lokal yang sudah dimigrasi
  2. Import SQL tersebut ke database hosting melalui phpMyAdmin di cPanel

Metode 2: Install Laravel Baru di cPanel

Jika kamu ingin membuat proyek Laravel baru langsung di server cPanel, ikuti langkah-langkah berikut:

Langkah 1: Install Composer

Jika hosting kamu mendukung Softaculous, kamu bisa menginstall Composer melalui menu tersebut. Jika tidak:

  1. Login ke cPanel
  2. Buka Terminal atau SSH Terminal
  3. Jalankan perintah berikut:
    curl -sS https://getcomposer.org/installer | php
    mv composer.phar /usr/local/bin/composer
    chmod +x /usr/local/bin/composer

Alternatif

Jika kamu tidak memiliki akses SSH, kamu bisa menginstall Laravel di komputer lokal, lalu menguploadnya ke server menggunakan Metode 1.

Langkah 2: Buat Proyek Laravel Baru

  1. Di Terminal SSH, navigasi ke direktori di luar public_html:
    cd ~
  2. Buat proyek Laravel baru:
    composer create-project --prefer-dist laravel/laravel laravel_app
  3. Tunggu hingga proses instalasi selesai

Langkah 3: Konfigurasi Web Root

  1. Pindahkan isi folder public ke public_html:
    cp -r ~/laravel_app/public/* ~/public_html/
  2. Edit file index.php di public_html untuk mengarahkan ke folder laravel_app:
    // Ganti baris ini require __DIR__.'/../vendor/autoload.php';
    $app = require_once __DIR__.'/../bootstrap/app.php';

    // Menjadi require __DIR__.'/../laravel_app/vendor/autoload.php';
    $app = require_once __DIR__.'/../laravel_app/bootstrap/app.php';

Langkah 4: Atur Permission dan Konfigurasi Database

Ikuti langkah 4 dan 5 dari Metode 1 untuk mengatur permission dan konfigurasi database.

Baca juga: Hasilkan Uang dengan HTML dan CSS! 5 Cara Mudah Menghasilkan Penghasilan Tambahan Sambil Belajar Coding

Metode 3: Install Laravel via Softaculous

Beberapa hosting cPanel menyediakan Softaculous yang memungkinkan instalasi Laravel dengan sekali klik:

  1. Login ke cPanel
  2. Cari dan klik "Softaculous Apps Installer"
  3. Di kategori "Frameworks", cari "Laravel"
  4. Klik "Install Now" dan ikuti petunjuk instalasi:
    1. Pilih versi Laravel
    2. Tentukan direktori instalasi
    3. Isi informasi database
    4. Klik "Install"
Softaculous Laravel Installation

Konfigurasi .htaccess untuk Pretty URL

Untuk memastikan routing Laravel berfungsi dengan baik, pastikan file .htaccess di public_html sudah benar:

<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>

RewriteEngine On

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]

# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>

Konfigurasi Lanjutan

1. Menggunakan Subdomain

Jika kamu ingin menginstall Laravel di subdomain:

Baca juga: Integrasi SSO di Multiple Aplikasi Dalam 15 Menit! Begini Cara Mudahnya
  1. Buat subdomain melalui cPanel (misalnya app.domain.com)
  2. Upload Laravel ke direktori subdomain tersebut
  3. Ikuti langkah-langkah yang sama seperti di atas, tapi ganti public_html dengan direktori subdomain

2. Mengaktifkan Cache

Untuk meningkatkan performa Laravel di production:

php artisan config:cache
php artisan route:cache
php artisan view:cache

3. Konfigurasi Environment

Pastikan file .env sudah dikonfigurasi dengan benar untuk environment production:

APP_ENV=production
APP_DEBUG=false
APP_URL=https://domain.com

Penting!

Jangan lupa untuk mengubah APP_DEBUG menjadi false di environment production untuk mencegah informasi sensitif terekspos saat terjadi error.

Troubleshooting

1. 500 Internal Server Error

  • Periksa permission folder storage dan bootstrap/cache
  • Pastikan .env file ada dan terkonfigurasi dengan benar
  • Cek error log di cPanel (Error Log di bagian Metrics)

2. Halaman Blank

  • Aktifkan APP_DEBUG=true sementara untuk melihat error
  • Periksa path ke autoload.php dan bootstrap/app.php di index.php
  • Pastikan mod_rewrite Apache diaktifkan

3. Database Connection Error

  • Verifikasi kredensial database di file .env
  • Pastikan user database memiliki izin yang cukup
  • Cek apakah remote MySQL diaktifkan jika menggunakan host selain localhost

Tips Keamanan

  1. Simpan file Laravel di luar public_html jika memungkinkan
  2. Gunakan HTTPS untuk website kamu
  3. Batasi akses ke file .env dengan menambahkan aturan di .htaccess:
    <Files .env>
    Order allow,deny
    Deny from all
    </Files>
  4. Update Laravel dan dependensi secara berkala
  5. Gunakan Laravel Sanctum atau Passport untuk API authentication

Kesimpulan

Menginstall Laravel di cPanel memang membutuhkan beberapa langkah teknis, tapi dengan mengikuti panduan di atas, kamu bisa melakukannya dengan lancar. Ingat untuk selalu memperhatikan aspek keamanan dan performa saat men-deploy aplikasi Laravel ke environment production.

Jika kamu mengalami kesulitan atau memiliki pertanyaan spesifik, jangan ragu untuk berkonsultasi dengan penyedia hosting kamu atau komunitas Laravel Indonesia yang selalu siap membantu.

Selamat mencoba dan semoga sukses dengan proyek Laravel kamu!