Gameglimmer
  • Produktivitas
  • Website
  • AI
  • Hosting
  • Indonesia
  • Bisnis
No Result
View All Result
Gameglimmer
  • Produktivitas
  • Website
  • AI
  • Hosting
  • Indonesia
  • Bisnis
No Result
View All Result
Gameglimmer
No Result
View All Result
Home Aplikasi

Cara Deploy Aplikasi Laravel ke Shared Hosting cPanel: Panduan Step by Step

Atticus Thorne by Atticus Thorne
April 3, 2025
in Aplikasi, Development, Hosting, Panduan, PHP
0
Share on FacebookShare on Twitter

Aplikasi Laravel kamu sudah jadi dan siap digunakan? Keren! Sekarang, langkah selanjutnya adalah mendeploy aplikasi Laravel tersebut agar bisa diakses secara online. Nah, salah satu cara paling umum dan terjangkau adalah dengan menggunakan shared hosting cPanel.

Dalam panduan ini, kita akan membahas secara detail cara deploy aplikasi Laravel ke shared hosting cPanel: panduan step by step yang mudah diikuti, bahkan untuk pemula. Kita akan mengupas tuntas mulai dari persiapan hingga memastikan aplikasi Laravel kamu berjalan lancar di hosting. Yuk, simak selengkapnya!

1. Persiapan Sebelum Deploy: Langkah Awal yang Krusial

Sebelum kita mulai proses deploy, ada beberapa hal penting yang perlu kamu persiapkan terlebih dahulu. Persiapan yang matang akan mempermudah proses deploy dan meminimalisir potensi masalah di kemudian hari.

  • Backup Aplikasi Laravel: Ini adalah langkah paling penting! Selalu backup kode aplikasi Laravel kamu, database, dan semua file terkait. Kamu bisa menggunakan Git (jika kamu menggunakan version control) atau membuat backup manual.
  • Akses cPanel: Pastikan kamu memiliki akses ke cPanel hosting kamu. Username dan password cPanel biasanya diberikan oleh penyedia hosting kamu.
  • Akses FTP/File Manager: Kamu akan membutuhkan akses FTP atau File Manager untuk mengunggah file aplikasi Laravel kamu ke hosting.
  • Database: Pastikan kamu memiliki database yang siap digunakan di hosting. Catat nama database, username database, dan password database. Ini akan kita gunakan untuk konfigurasi aplikasi Laravel kita.
  • Domain/Subdomain: Pastikan kamu memiliki domain atau subdomain yang akan digunakan untuk mengakses aplikasi Laravel kamu. Jika kamu menggunakan domain utama, pastikan nameserver sudah diarahkan ke server hosting kamu.
  • Editor Teks/IDE: Kamu akan membutuhkan editor teks atau IDE untuk mengedit file konfigurasi dan beberapa file lainnya. Rekomendasi: VS Code, Sublime Text, atau PhpStorm.

2. Konfigurasi Aplikasi Laravel: Menyesuaikan dengan Lingkungan Hosting

Setelah semua persiapan selesai, saatnya kita konfigurasi aplikasi Laravel kita agar sesuai dengan lingkungan shared hosting cPanel.

Related Post

Rekomendasi Hosting Cloud Server Indonesia: Terbaik untuk Skalabilitas

May 14, 2025

Hosting cPanel: Performa Optimal untuk Website Anda

May 13, 2025

Hosting cPanel: Keamanan Terjamin untuk Data Website Anda

May 13, 2025

Hosting dengan cPanel: Mudah Digunakan untuk Semua Tingkat Keahlian

May 13, 2025
  • Ubah Konfigurasi Database: Buka file .env pada aplikasi Laravel kamu. Ubah nilai-nilai berikut sesuai dengan informasi database yang kamu miliki di cPanel:

    DB_CONNECTION=mysql
    DB_HOST=localhost
    DB_PORT=3306
    DB_DATABASE=nama_database_anda
    DB_USERNAME=username_database_anda
    DB_PASSWORD=password_database_anda

    Penting: Pastikan DB_HOST diatur ke localhost karena database biasanya berada di server yang sama dengan hosting.

  • Konfigurasi APP_URL: Pada file .env, ubah nilai APP_URL menjadi URL domain atau subdomain yang akan kamu gunakan.

    APP_URL=http://domain-anda.com atau http://subdomain.domain-anda.com
  • Konfigurasi APP_ENV: Atur APP_ENV ke production saat aplikasi sudah siap digunakan di lingkungan produksi. Ini akan mematikan beberapa fitur debugging dan meningkatkan performa.

    APP_ENV=production
  • Generate APP_KEY: Jalankan perintah berikut di terminal (pastikan kamu sudah berada di direktori aplikasi Laravel kamu):

    php artisan key:generate

    Perintah ini akan menghasilkan APP_KEY yang unik dan penting untuk keamanan aplikasi Laravel kamu.

  • Konfigurasi Debug Mode (Optional): Jika kamu ingin tetap melihat pesan error di lingkungan produksi (tidak direkomendasikan untuk aplikasi live), kamu bisa mengubah APP_DEBUG menjadi true di file .env. Namun, sebaiknya biarkan tetap false untuk alasan keamanan.

    APP_DEBUG=false

3. Upload Aplikasi Laravel ke cPanel: Menggunakan FTP atau File Manager

Selanjutnya, kita akan mengunggah file aplikasi Laravel kita ke server hosting. Ada dua cara yang bisa kamu gunakan: FTP atau File Manager.

  • Menggunakan FTP:

    • Gunakan aplikasi FTP client seperti FileZilla, Cyberduck, atau Transmit.
    • Masukkan informasi FTP yang diberikan oleh penyedia hosting kamu (hostname, username, password, port).
    • Hubungkan ke server hosting.
    • Unggah isi dari folder aplikasi Laravel kamu (bukan folder aplikasi Laravel secara keseluruhan) ke direktori public_html atau direktori subdomain yang kamu gunakan. Pastikan file .htaccess juga ikut terupload. File .htaccess terkadang tersembunyi, jadi pastikan kamu mengaktifkan opsi untuk menampilkan file tersembunyi di FTP client kamu.
  • Menggunakan File Manager:

    • Login ke cPanel.
    • Cari dan klik ikon “File Manager”.
    • Navigasi ke direktori public_html atau direktori subdomain yang kamu gunakan.
    • Klik tombol “Upload”.
    • Pilih semua file dan folder di dalam folder aplikasi Laravel kamu (bukan folder aplikasi Laravel secara keseluruhan).
    • Tunggu hingga proses upload selesai.

Penting:

  • public_html vs. Subdomain: Jika kamu menggunakan domain utama, unggah file ke direktori public_html. Jika kamu menggunakan subdomain, unggah file ke direktori subdomain yang kamu buat (misalnya: public_html/subdomain).
  • Folder public: Isi dari folder public pada aplikasi Laravel kamu (misalnya: index.php, .htaccess, css, js, images) harus bisa diakses secara langsung melalui web browser.

4. Mengatur public Directory Laravel: Mengarahkan Web Server

Secara default, web server (seperti Apache) akan mencari file index.html atau index.php di direktori public_html sebagai titik awal website. Namun, aplikasi Laravel kita memiliki struktur direktori yang sedikit berbeda. Kita perlu mengarahkan web server agar mencari file index.php yang berada di dalam folder public.

Ada beberapa cara untuk melakukan ini:

  • Mengubah Document Root di cPanel: Beberapa penyedia hosting cPanel memungkinkan kamu mengubah document root untuk domain atau subdomain kamu. Caranya:

    • Login ke cPanel.
    • Cari bagian “Domains” atau “Domains Manager”.
    • Cari domain atau subdomain yang ingin kamu konfigurasi.
    • Ubah document root dari public_html menjadi public_html/public (atau public_html/subdomain/public).
  • Memodifikasi File .htaccess (Cara yang Paling Umum): Ini adalah cara yang paling umum dan direkomendasikan. Buat file .htaccess (jika belum ada) di direktori public_html atau direktori subdomain kamu dengan isi seperti berikut:

    <IfModule mod_rewrite.c>
        <IfModule mod_negotiation.c>
            Options -MultiViews -Indexes
        </IfModule>
    
        RewriteEngine On
    
        # Redirect Trailing Slashes If Not A Folder...
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)/$ /$1 [L,R=301]
    
        # Handle Front Controller...
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^ index.php [L]
    
        # Handle Authorization Header
        RewriteCond %{HTTP:Authorization} .
        RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    </IfModule>

    Perhatikan: File .htaccess berfungsi untuk mengkonfigurasi web server Apache. Pastikan modul mod_rewrite sudah aktif di server hosting kamu. Biasanya, modul ini sudah aktif secara default. Jika tidak, kamu perlu menghubungi penyedia hosting kamu untuk mengaktifkannya.

  • Memindahkan File index.php dan .htaccess (Tidak Direkomendasikan): Cara ini kurang direkomendasikan karena akan mengubah struktur direktori aplikasi Laravel kamu. Kamu bisa memindahkan file index.php dan .htaccess dari folder public ke direktori public_html atau direktori subdomain kamu. Setelah itu, kamu perlu mengedit file index.php dan mengubah path ke autoload.php dan app.php.

5. Konfigurasi Simlink Storage: Mengakses File Upload

Aplikasi Laravel seringkali digunakan untuk mengunggah file (gambar, dokumen, dll.). Secara default, file-file ini disimpan di direktori storage/app/public. Agar file-file ini bisa diakses melalui web browser, kita perlu membuat simlink (symbolic link) dari direktori public/storage ke direktori storage/app/public.

Sayangnya, shared hosting cPanel seringkali membatasi pembuatan simlink melalui terminal. Oleh karena itu, kita perlu menggunakan cara alternatif:

  • Membuat Simlink Manual: Buat folder bernama storage di dalam direktori public. Kemudian, buat file .htaccess di dalam folder storage tersebut dengan isi seperti berikut:

    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^(.*)$ ../../storage/app/public/$1 [L]

    Cara ini akan mengarahkan semua permintaan ke public/storage ke direktori storage/app/public.

  • Menggunakan Artisan Command (Jika Diizinkan): Jika kamu memiliki akses SSH dan diizinkan menjalankan perintah Artisan, kamu bisa menggunakan perintah berikut:

    php artisan storage:link

    Perintah ini akan membuat simlink secara otomatis.

Penting: Pastikan kamu sudah mengkonfigurasi FILESYSTEM_DISK di file .env menjadi public.

FILESYSTEM_DISK=public

6. Migrasi Database Laravel: Mempersiapkan Struktur Data

Setelah aplikasi terupload dan konfigurasi web server selesai, saatnya kita migrasi database Laravel kita. Migrasi database berfungsi untuk membuat tabel-tabel yang dibutuhkan oleh aplikasi Laravel kita.

  • Upload Database Dump (SQL File): Login ke phpMyAdmin di cPanel. Pilih database yang kamu gunakan. Klik tab “Import”. Pilih file SQL (database dump) yang sudah kamu siapkan sebelumnya. Klik tombol “Go”.

  • Menjalankan Migrasi Melalui Artisan (Jika Diizinkan): Jika kamu memiliki akses SSH dan diizinkan menjalankan perintah Artisan, kamu bisa menjalankan perintah berikut:

    php artisan migrate

    Perintah ini akan menjalankan semua migrasi yang ada di direktori database/migrations.

  • Menggunakan Seeder (Optional): Jika kamu ingin mengisi database dengan data awal, kamu bisa menggunakan seeder. Jalankan perintah berikut (jika kamu memiliki akses SSH dan diizinkan menjalankan perintah Artisan):

    php artisan db:seed

7. Optimasi Aplikasi Laravel: Meningkatkan Performa Website

Setelah aplikasi Laravel berhasil dideploy, ada beberapa langkah optimasi yang bisa kamu lakukan untuk meningkatkan performa website.

  • Aktifkan Cache: Laravel menyediakan berbagai macam fitur caching yang bisa kamu manfaatkan untuk meningkatkan performa. Aktifkan cache konfigurasi, cache route, dan cache view.

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

    (Perintah ini hanya bisa dijalankan jika kamu memiliki akses SSH dan diizinkan menjalankan perintah Artisan.)

  • Gunakan CDN (Content Delivery Network): CDN dapat membantu mempercepat loading website dengan menyimpan file statis (gambar, CSS, JavaScript) di server-server yang tersebar di seluruh dunia.

  • Kompresi File: Kompresi file CSS, JavaScript, dan gambar dapat mengurangi ukuran file dan mempercepat loading website.

  • Aktifkan Gzip Compression: Gzip compression dapat mengurangi ukuran file yang dikirimkan dari server ke browser.

  • Monitor Performa: Gunakan tools seperti Google PageSpeed Insights atau GTmetrix untuk memonitor performa website dan mencari tahu area mana yang perlu dioptimasi.

8. Troubleshooting dan Solusi Umum: Mengatasi Masalah yang Mungkin Terjadi

Saat mendeploy aplikasi Laravel ke shared hosting cPanel, kamu mungkin akan menemui beberapa masalah. Berikut beberapa masalah umum dan solusinya:

  • 500 Internal Server Error: Kesalahan ini biasanya disebabkan oleh kesalahan konfigurasi server, seperti masalah dengan file .htaccess atau izin file yang salah. Pastikan file .htaccess kamu sudah benar dan periksa log error server untuk mengetahui penyebab pasti kesalahan.
  • Blank Page: Halaman kosong biasanya disebabkan oleh kesalahan konfigurasi database atau kesalahan kode. Periksa koneksi database kamu dan pastikan tidak ada error di kode aplikasi kamu.
  • Error terkait Permission: Pastikan semua file dan folder memiliki izin yang tepat. Direktori harus memiliki izin 755 dan file harus memiliki izin 644.
  • Simlink Error: Jika kamu mengalami masalah dengan simlink, coba cara alternatif yang sudah dijelaskan di atas (membuat simlink manual).
  • Error terkait PHP Version: Pastikan versi PHP yang digunakan di hosting kamu sesuai dengan versi PHP yang didukung oleh aplikasi Laravel kamu. Kamu bisa mengubah versi PHP di cPanel.

9. Keamanan Aplikasi Laravel: Melindungi Website dari Ancaman

Keamanan adalah aspek penting yang tidak boleh diabaikan. Berikut beberapa tips untuk meningkatkan keamanan aplikasi Laravel kamu:

  • Gunakan HTTPS: Pastikan website kamu menggunakan HTTPS untuk mengenkripsi komunikasi antara server dan browser.
  • Validasi Input: Validasi semua input yang diterima dari user untuk mencegah serangan SQL injection dan XSS.
  • Lindungi dari CSRF: Laravel secara otomatis melindungi dari serangan CSRF (Cross-Site Request Forgery). Pastikan kamu menggunakan middleware VerifyCsrfToken.
  • Update Laravel secara Rutin: Update Laravel secara rutin untuk mendapatkan perbaikan bug dan celah keamanan terbaru.
  • Gunakan Firewall: Gunakan firewall untuk melindungi server kamu dari serangan DDoS dan ancaman lainnya.
  • Monitor Log: Monitor log server secara rutin untuk mendeteksi aktivitas mencurigakan.

10. Upgrade Aplikasi Laravel di Shared Hosting: Update Versi Laravel dengan Aman

Suatu saat, kamu mungkin perlu mengupgrade versi Laravel aplikasi kamu. Berikut langkah-langkahnya:

  1. Backup: Lakukan backup lengkap aplikasi dan database.
  2. Uji Lokal: Upgrade aplikasi Laravel secara lokal terlebih dahulu untuk memastikan tidak ada masalah.
  3. Maintenance Mode: Aktifkan maintenance mode di aplikasi live kamu.
  4. Upload File: Upload file-file Laravel yang sudah diupgrade ke server hosting, menimpa file yang lama.
  5. Migrasi Database: Jalankan migrasi database.
  6. Cache Clear: Bersihkan cache aplikasi.
  7. Nonaktifkan Maintenance Mode: Nonaktifkan maintenance mode.
  8. Uji: Uji aplikasi live kamu untuk memastikan semuanya berfungsi dengan baik.

11. Alternatif Deploy Laravel: Pilihan Selain Shared Hosting

Shared hosting cPanel memang pilihan yang terjangkau, tetapi ada alternatif lain yang bisa kamu pertimbangkan:

  • VPS (Virtual Private Server): Memberikan kontrol lebih besar atas server.
  • Cloud Hosting: Lebih scalable dan fleksibel.
  • Platform as a Service (PaaS): Mempermudah proses deploy dan manajemen aplikasi. Contoh: Heroku, AWS Elastic Beanstalk, Google App Engine.
  • Dedicated Server: Memberikan sumber daya server eksklusif untuk aplikasi kamu.

12. Kesimpulan: Aplikasi Laravel Berhasil Dideploy!

Selamat! Sekarang kamu sudah tahu cara deploy aplikasi Laravel ke shared hosting cPanel: panduan step by step yang lengkap. Ikuti langkah-langkah di atas dengan seksama, dan aplikasi Laravel kamu akan segera online dan bisa diakses oleh semua orang. Ingat, selalu lakukan backup sebelum melakukan perubahan apapun dan jangan ragu untuk mencari bantuan jika kamu menemui masalah. Semoga berhasil!

Tags: application deploymentcPanelDeploymentLaravelphpShared HostingStep-by-StepTutorialWeb Developmentweb hosting
Atticus Thorne

Atticus Thorne

Related Posts

Cloud

Rekomendasi Hosting Cloud Server Indonesia: Terbaik untuk Skalabilitas

by Seraphina Rivers
May 14, 2025
AI

Hosting cPanel: Performa Optimal untuk Website Anda

by Atticus Thorne
May 13, 2025
AI

Hosting cPanel: Keamanan Terjamin untuk Data Website Anda

by venus
May 13, 2025
Next Post

Laravel Livewire: Membuat Aplikasi Interaktif dengan Mudah

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recommended

Hosting Domain Gratis untuk Pelajar Indonesia: Syarat & Cara Mendapatkan

March 23, 2025

Biaya Pembuatan Website E-commerce Profesional Indonesia: Investasi Toko Online Sukses

March 15, 2025

Hosting Dedicated Server Murah Jakarta: Performa Tinggi untuk Website Kompleks

March 13, 2025

Software CRM Terbaik untuk Bisnis Kecil di Indonesia: Panduan Lengkap 2024

April 14, 2025

Rekomendasi Hosting Cloud Server Indonesia: Terbaik untuk Skalabilitas

May 14, 2025

Hosting cPanel: Performa Optimal untuk Website Anda

May 13, 2025

Hosting cPanel: Keamanan Terjamin untuk Data Website Anda

May 13, 2025

Hosting dengan cPanel: Mudah Digunakan untuk Semua Tingkat Keahlian

May 13, 2025

Gameglimmer

Our media platform offers reliable news and insightful articles. Stay informed with our comprehensive coverage and in-depth analysis on various topics.
Read more »

Recent Posts

  • Rekomendasi Hosting Cloud Server Indonesia: Terbaik untuk Skalabilitas
  • Hosting cPanel: Performa Optimal untuk Website Anda
  • Hosting cPanel: Keamanan Terjamin untuk Data Website Anda

Categories

  • AI
  • Analisis
  • Android
  • API
  • Aplikasi
  • Bahasa
  • Bandwidth
  • based on the article title "Cara Menggunakan AI untuk Meningkatkan Produktivitas Kerja: Lebih Cerdas
  • Biaya
  • Bisnis
  • Branding
  • Cerdas
  • Cloud
  • Community
  • CRM
  • CSS
  • Customer
  • Data
  • Database
  • Desain
  • Development
  • Domain
  • Download
  • E-commerce
  • Efektif
  • Efisien
  • Efisiensi
  • Email
  • Error generating categories
  • Estimasi
  • Fitur
  • Framework
  • Freelance
  • Garansi
  • Gratis
  • Hemat
  • Here are 5 categories
  • Here's a categorization based on the article titles and provided keywords: CRM
  • Here's a categorization based on the article titles and provided keywords: Pendidikan
  • Here's a possible categorization based on the article titles and provided keywords: Produktivitas
  • Hosting
  • Indonesia
  • Inspirasi
  • Integrasi
  • iOS
  • Jakarta
  • JavaScript
  • Karir
  • Keamanan
  • Kecepatan
  • Kerja
  • Kolaborasi
  • Konten
  • Laravel
  • Layanan
  • Lebih Cepat": AI
  • Lokal
  • Marketing
  • Mobile
  • Murah
  • one word per category
  • Online
  • Optimasi
  • Otentikasi
  • Otomatisasi
  • Panduan
  • Pelanggan
  • Pelaporan
  • Pemasaran
  • Pembayaran
  • Pemula
  • Pendidikan
  • Pengembangan
  • Penjualan
  • Performance
  • Pertumbuhan
  • PHP
  • Pilihan
  • Portfolio
  • Prima
  • Privasi
  • Produktifitas
  • Produktivitas
  • Profesional
  • Responsif
  • SEO
  • Server
  • Sistem
  • Skalabilitas
  • Software
  • Solusi
  • Startup
  • Streaming
  • Teknologi
  • Template
  • Terbaik
  • Terpercaya
  • Tutorial
  • UKM
  • UMKM
  • Unlimited
  • VPS
  • Website
  • Windows
  • WordPress
  • XAMPP

Resource

  • About us
  • Contact Us
  • Privacy Policy

© 2024 Gameglimmer.

No Result
View All Result
  • Produktivitas
  • Website
  • AI
  • Hosting
  • Indonesia
  • Bisnis

© 2024 Gameglimmer.