Hai para programmer dan developer sekalian!
masa awal-awal kenal laravel ni dulu memang inilah soalan yang paling merayau dalam fikiran ni. Sebab apa? sebab kita dah biasa dengan cPanel dah tahu struktur hosting guna direktori public_html Laravel pulak guna public
Jadi macam mana nak selesaikan masalah ni?
ok senang je. First kite kena faham struktur laravel dahulu. Laravel struktur file dia public ada dekat dalam root project folder macam ni:
- app
- bootstrap
- database
- resources
- tests
- config
- public
- routes
- storage
- vendor
jadi, apa yang kita boleh buat dekat shared hosting adalah movekan public folder tu ke luar dan semua yang lain ni kita masukkan ke dalam satu folder baru bernama folderBaruLaravel
manakala, semua file dalam public folder (termasuk .htaccess, index.php dan yang sewaktu dengannya) kita akan pindahkan ke dalam public_html
folder tu hasil dia nampak macam ni dalam hosting kita:
- folderBaruLaravel
- public_html
Nota: dekat dalam hosting kita akan ade akses kepada User Folder kita. contoh /home/userFolder/
dalam userFolder ni lah ade public_html. So sebelah dia kita buat folder baru nama folderBaruLaravel
Hah! power. tapi tak siap lagi. kita kena edit file di public_html/index.php
dulu untuk detect folder baru laravel kita. ade dua line yang kita kena ubah. Macam ni:
require __DIR__.'/../vendor/autoload.php';
tukarkan kepada:
require __DIR__.'/../folderBaruLaravel/vendor/autoload.php'
satu lagi:
$app = require_once __DIR__.'/../bootstrap/app.php'
tukarkan kepada:
$app = require_once __DIR__.'/../folderbaruLaravel/bootstrap/app.php'
Siap! dah boleh tengok web kita jadi ke tak. hehe~
lepas ni boleh dah buat controller, buat view dan lain2.
Database macam mana?
untuk database, kita buat dulu database di local development. Buat semua migration dulu. then kita export database tu ke file export-data.sql, biasanye phpMyAdmin ade feature export ni. kita export dari local. then kita import dekat hosting kita. siap~~
okeh. Semoga sharing ini bermanfaat untuk anda