Contact your hosting provider (Hostinger/Rumahweb) and get:
✅ cPanel Login:
- URL:
https://your-server.com:2083 - Username:
____________ - Password:
____________
✅ Your Domain:
- Domain name:
https://____________
That's it! Everything else can be created in cPanel.
- Go to your cPanel URL
- Enter username and password
- You're in!
- Find "MySQL Databases" in cPanel
- Create new database:
- Name it:
santristem - cPanel will make it:
username_santristem
- Name it:
- Create database user:
- Username:
santristem_user - Generate strong password
- WRITE DOWN THIS PASSWORD!
- Username:
- Add user to database:
- Select user
- Select database
- Grant ALL PRIVILEGES
✅ Done! Write down:
Database: username_santristem
Username: username_santristem_user
Password: [the password you generated]
Option A: Using cPanel File Manager (Easier)
- In cPanel, go to "File Manager"
- Navigate to
public_htmlfolder - Click "Upload" button
- Select these files from your computer:
- All folders:
app,bootstrap,config,database,public,resources,routes,storage - Files:
artisan,composer.json,.env.example
- All folders:
- Wait for upload to complete
Option B: Using FileZilla (If you prefer FTP)
- Install FileZilla
- In cPanel → FTP Accounts → Create FTP account
- Connect with FileZilla
- Upload same files as above
.envfile (security risk!)node_modulesfolder (too big).gitfolder (not needed)
- In cPanel File Manager, go to your Laravel folder
- Find
.env.examplefile - Right-click → Copy → Rename to
.env - Right-click
.env→ Edit - Change these lines:
APP_ENV=production
APP_DEBUG=false
APP_URL=https://your-actual-domain.com
DB_DATABASE=username_santristem
DB_USERNAME=username_santristem_user
DB_PASSWORD=your_database_password_here- Save file
Option A: If cPanel has Terminal:
- Open Terminal in cPanel
- Run:
cd public_html(or wherever Laravel is) - Run:
php artisan key:generate
Option B: If no Terminal:
- On your local computer, run:
php artisan key:generate --show - Copy the output (starts with
base64:) - Add it to your
.envfile on server:APP_KEY=base64:paste_the_key_here
In cPanel Terminal (or via SSH):
cd public_html
composer install --no-dev --optimize-autoloaderIf no Terminal/SSH: The vendor folder is already in your upload, so skip this!
Option A: Via Terminal:
php artisan migrate --force
php artisan db:seed --forceOption B: Create a temporary file:
- Create file
setup.phpin your Laravel root:
<?php
require __DIR__.'/vendor/autoload.php';
$app = require_once __DIR__.'/bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);
echo "Running migrations...<br>";
$kernel->call('migrate', ['--force' => true]);
echo "✓ Migrations complete!<br><br>";
echo "Seeding database...<br>";
$kernel->call('db:seed', ['--force' => true]);
echo "✓ Database seeded!<br><br>";
echo "<strong>SUCCESS! Now DELETE this file immediately!</strong>";- Visit:
https://yourdomain.com/setup.php - Wait for "SUCCESS!" message
- DELETE
setup.phpimmediately!
In cPanel File Manager:
- Select
storagefolder → Right-click → Permissions → Set to775 - Select
bootstrap/cachefolder → Permissions → Set to775
If Laravel is in a subfolder (like public_html/santristem/):
Create .htaccess in public_html/:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ santristem/public/$1 [L]
</IfModule>- In cPanel → "SSL/TLS Status"
- Click "Run AutoSSL" (free Let's Encrypt)
- Wait 1-2 minutes
- Done! Your site now has HTTPS
To force HTTPS, add to public/.htaccess (at the top):
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]Visit these pages to confirm everything works:
https://yourdomain.com→ Homepage ✓https://yourdomain.com/programs→ Programs page ✓https://yourdomain.com/gallery→ Photo gallery ✓https://yourdomain.com/contact→ Contact form ✓
If all pages load correctly: 🎉 YOU'RE DONE!
Fix:
# Set correct permissions
chmod -R 775 storage bootstrap/cache
# Clear caches
php artisan cache:clear
php artisan config:clearFix:
- Double-check
.envfile database credentials - Make sure database user has ALL PRIVILEGES
Fix:
- Run
php artisan key:generate - Or manually add APP_KEY to
.env
Fix:
- Make sure
.htaccessexists inpublic/folder - Check mod_rewrite is enabled in cPanel
Hostinger Support:
- Live chat in dashboard (24/7)
- Very responsive!
Rumahweb Support:
- Phone: 0274-5305505
- Live chat available
- Email: support@rumahweb.com
What to ask: "I'm deploying a Laravel website. Can you help me:
- Access cPanel Terminal
- Enable mod_rewrite
- Set folder permissions to 775
- Install SSL certificate"
For detailed instructions, see:
DEPLOYMENT_GUIDE.md- Complete step-by-stepCREDENTIALS_CHECKLIST.md- Fill this out firstIMPLEMENTATION_COMPLETE.md- What was built
- ✅ Get credentials: 5 minutes
- ✅ Create database: 3 minutes
- ✅ Upload files: 10 minutes
- ✅ Configure .env: 5 minutes
- ✅ Setup database: 3 minutes
- ✅ Set permissions: 2 minutes
- ✅ Install SSL: 3 minutes
Total: ~30 minutes (if everything goes smoothly!)
- This file (
DEPLOYMENT_QUICKSTART.md) - Read this first! CREDENTIALS_CHECKLIST.md- Fill out your login infoDEPLOYMENT_GUIDE.md- Detailed instructions if you get stuck
- ✅ I have cPanel access
- ✅ I know my domain name
- ✅ I've read this document
- ✅ I'm ready to create the database
Let's go! Start with Step 1 above! 💪
Last Updated: November 4, 2025
Your Site: santriSTEM - Memberdayakan Santri Melalui STEM
Current Status: ✅ Development Complete, Ready to Deploy!