Logo

dev-resources.site

for different kinds of informations.

Deploy Laravel to cPanel v.1

Published at
7/25/2024
Categories
beginners
laravel
cpanel
tutorial
Author
sumberweb
Categories
4 categories in total
beginners
open
laravel
open
cpanel
open
tutorial
open
Author
9 person written this
sumberweb
open
Deploy Laravel to cPanel v.1

Thanks to GitHub Repository [laravel-todo-list](https://github.com/benzuri/laravel-todo-list)

Simple Todo List app with Api-Rest made with Laravel.

Tech Stack : Laravel 10.25.1, MySql, User registration ( Jetstream ), Dynamic interface ( Livewire, Alpine Js, Token based API ( Sanctum ), Design ( Tailwind )

Bisa menggunakan link tutorial ini jika aplikasi laravel tidak menggunakan library node_modules
https://dev.to/sumberweb/deploy-laravel-to-cpanel-v2-5c7a


1. Setup Struktur Folder Pada Hosting

Berikut ini adalah struktur folder project aplikasi laravel yang masih di lokal komputer / leptop. lakukan compress pada files yang sudah di pilih kecuali module node_modules karena nantinya untuk library tersbut kita intallasi / setup pada cPanel.

Image description

silahkan akses hosting / cPanel kemudian arahkan ke menu file manager. buat folder laravel-todoapp di luar folder subdomain atau public_html yang nantinya menjadi entry point folder aplikasinya.

Image description

  • pertama buat folder name laravel-todoapp
  • kedua pastikan path folder sudah empty ( kosong ) yang artinya folder baru akan terbuat di home direktory
  • ketiga create new folder

Upload hasil compress files yang dipilih sebelumnya ke folder yang baru saja di buat laravel-todoapp

Image description

setelah di compress files berhasil diupload ke hosting pada folder laravel-todoapp, bisa dilanjutkan dengan mengekstract file .zip tersebut sehingga hasil nya akan seperti berikut :

files project aplikasi sudah berada di direktory laravel-todoapp

Image description

langkah selanjutnya adalah pindahkan semua isi files yang ada di dalam folder public ke folder subdomain laravel-todoapp.codesync.id kemudian jika files sudah berhasil di pindahkan isinya akan seperti berikut :

Image description

  • pilih semua files yang ada di laravel-todoapp/public
  • move ke folder tujuan yaitu subomain laravel-todoapp.codesync.id
  • move files

2. Setup Node Js

[ skip step ini jika tidak diperlukan / tidak menggunakan library node_module pada project laravel ]

Dibutuhkan untuk mengakses NPM ( node package manager ) sehingga bisa installasi package javascript nantinya. Terutama tailwindcss dan package lainnya yang dibutuhkan pada environtment project aplikasi ini.

Image description

  • Pertama silahkan pilih NodeJs Version dan Application mode nya di Production atau Development.
  • Kedua adalah Application root yang mana ini adalah root dari folder project aplikasinya. sebagai catatan : Nama Application rootnya harus sama dengan folder yang sudah di buat sebelumnya. silahkan periksa kembali pada step pertama sebelum melakukan Setup Node Js nya.
  • Ketiga adalah Application URL ini adalah URL dimana aplikasi nantinya bisa diakses atau alamat website aplikasinya.
  • Keempat adalah Application startup file ini adalah path file dimana file project aplikasi nya menjadi entry point. untuk laravel sendiri biasanya di routes/web.php

Image description

3. Create Database, Import, configurasi file .env dan configurasi file index.php

Dimulai dengan pembuatan database pada menu cPanel > MySQL® Databases / Manage My Database kemudian dilanjutkan dengan Add User To Database sehingga tampilan akan seperti berikut.

Image description

Dilanjutkan dengan import database pada menu cPanel > PhpMyAdmin dan tampilan akan seperti gambar berikut :

Image description

Jika import database sudah berhasil bisa dilanjutkan dengan configurasi file .env untuk mengkoneksikan database yang baru saja telah di setup, dimana kita bisa akses pada menu cPanel > File Manager > Folder laravel-todoapp > .env [ edit ]

Image description

setelah koneksi database pada file .env telah selesai di konfigurasi bisa di lanjutkan penyesuaian pada file index.php yang berada di folder subdomain laravel-todoapp.codesync.id dan arahkan path folder ke folder dimana project aplikasi di dimpan yaitu laravel-todoapp yang sebelumnya sudah di buat dan diinputkan file project aplikasinya.

Image description

4. NPM Install dan Composser Install

Silahkan ke menu cPanel > Setup NodeJs App > pilih setup yang sudah di buat sebelumnya dan copy link env nya.

Image description

pastekan link yang sudah dicopy tersebut dan jalankan command berikut :

  • npm install
  • composer install
  • php artisan key:gen

Image description

Notes : setiap perubahan yang sudah dilakukan selalu refresh halaman setup nodejs app nya kemudian restart.

Berikut adalah error yang mungkin muncul :

1. php artisan migrate:fresh --seed

jika ingin memulai database dari 0 jalankan command ini
Syntax error or access violation: 1071 Specified key was too long : error terselesaikan ketika menambahkan script berikut pada : laravel-todoapp/app/Providers/AppServiceProvider.php

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;

class AppServiceProvider extends ServiceProvider
{
/**
   * Register any application services.
*/
public function register(): void
{
//
}

/**
  * Bootstrap any application services.
 */
public function boot(): void
{
    Schema::defaultStringLength(191);
}
}
Enter fullscreen mode Exit fullscreen mode

2. Error npm run build

pastikan pada isi file .gitignore path folder /public/build sudah di comment seperti berikut # /public/build jika masih terdapat error npm run build pada tampilan website silahkan lanjutkan step di bawah ini.

3. npm run build - Fail 0r Error timeout or Out of memory

pastikan untuk menjalankan command ini sudah menggunakan ssh dari lokal komputer jika masih belum berhasil, silahkan jalankan command npm run build pada environment lokal komputer. Kemudian hasil build, yang biasanya dalam bentuk folder dengan nama dist atau build folder tersebut di upload pada direktori project aplikasi pada hosting / cPanel ( laravel-todoapp/public )

Selesai sudah tutorial ini.
Semoga bisa membantu :)

cpanel Article's
30 articles in total
Favicon
Run NextJS App in shared-hosting cPanel domain!
Favicon
How to deploy laravel project on cpanel or shared hosting
Favicon
Host Nextjs 14 Application on cPanel
Favicon
VPS vs. Shared Hosting: Understanding the Key Differences
Favicon
How I Deployed Next.js to cPanel on Shared Hosting
Favicon
Error yang sering di jumpai ketika Setup NodeJS App pada cPanel.
Favicon
Deploy NextJs to cPanel
Favicon
Deploy Laravel to cPanel v.2
Favicon
Need Help! php server
Favicon
cPanel Hosting vs NGINX Hosting: A Comparison for Linux Hosting
Favicon
How to Import MBOX to cPanel?
Favicon
next js app on cPanel
Favicon
Deploy Laravel to cPanel v.1
Favicon
Deploy Frontend Web Application with React to cPanel.
Favicon
Deploy Backend API with Express Js to cPanel
Favicon
Web Hosting on cPanel WHM - What and How of cPanel and cPanel Terminal Commands- A Beginner Guide
Favicon
How to create a Node.js web server with cPanel
Favicon
How to install Node on cPanel shared hosting (without root access)
Favicon
The best FREE hosting control panel & alternative to CPanel: CyberPanel!
Favicon
Unlocking Economical Potential: Low-Cost cPanel Hosting Options
Favicon
cPanel UAPI Operations for Creating Subdomains, MySQL Databases, and File Operations
Favicon
My webhosting business journey
Favicon
How to Migrate Email from G Suite to cPanel?
Favicon
Steps To Remove/Delete Domain Name from cPanel?
Favicon
Resolving cPanel Git Error Code 128: ‘Permission Denied’ Issue
Favicon
How to Deploy your Django Web App and connect a MySQL Database in cPanel
Favicon
Plesk vs. cPanel: A Comprehensive Comparison
Favicon
How to deploy django app on cpanel
Favicon
Simple Guide to Deploying Your Vite React App on Cpanel for Beginners
Favicon
How To Set Up Auto Deploy For Laravel Applications On Cpanel

Featured ones: