Jika Anda memiliki project Laravel dan ingin menguploadnya ke hosting, menurut saya Serv00 adalah pilihan yang tepat dibanding hosting lain karena banyak fitur yang tersedia secara gratis dan tanpa iklan. Serv00 mendukung koneksi SSH, sehingga Anda bisa melakukan update komponen web dengan mudah. Selain itu, Serv00 juga memiliki server email yang bisa digunakan untuk mencoba fitur email.
Pada artikel ini, saya akan memberikan langkah-langkah dalam mengupload project
Laravel ke Serv00. Tetapi sebelum memulai, pastikan Anda sudah mendownload dan
menginstall program berikut:
- KiTTY atau program sejenis dengan auto login
- WinRAR atau program sejenis
- Password manager seperti BitWarden
Jika Anda sudah mendownload dan menginstall program di atas, langsung saja masuk
ke langkah-langkah upload project Laravel.
Catatan: Lewati langkah ke-7 dan 16 jika Anda menggunakan SQLite (seperti yang digunakan pada Laravel 11 secara default).
- Jika Anda belum memiliki akun Serv00, buka halaman utama Serv00, klik Register, dan klik Create account.
- Isi data-data yang ada. Pada kolom What is the cost of hosting on serv00.com, isi dengan $0, lalu klik Create account.Setelah membuat akun, buka email Anda untuk mendapatkan password dan nomor server akun Anda, lalu simpan username, password, dan link DevilWEB webpanel ke Password manager.
- Buka halaman WWW websites. Biasanya domain website sudah dibuat otomatis setelah membuat akun. Jika Anda ingin membuat domain website baru, klik tab Add new website. Masukkan nama domain dengan format <Nama subdomain tanpa spasi>.<USERNAME>.serv00.net, lalu klik Add. Setelah domain website berhasil dibuat, silakan Anda coba membuka website tersebut. Jika berhasil terbuka, maka tampilannya adalah sebagai berikut.
- Klik tab Manage SSL certificates. Pada daftar seperti gambar di bawah biasanya sudah ada dua alamat IP, satu untuk website dan satu lagi untuk Email. Untuk mencari tahu alamat IP yang tepat, buka halaman E-mail dan perhatikan pada Outgoing IP. Jadi, dari kedua gambar di atas menunjukkan 213.189.54.126 adalah alamat IP Email, berarti 31.186.83.254 adalah alamat IP website. Kembali ke halaman sebelumnya, lalu klik Manage pada alamat IP website.
- Klik tab Add certificate, pilih Generate Let's Encrypt certificate pada kolom Type. Pada kolom Domain, pilih domain yang akan digunakan dan klik Add.
- Kembali ke WWW websites. Klik Manage pada domain yang akan digunakan dan klik Details. Atur GZIP compression, Allow PHP eval() function, dan Allow PHP exec() function menjadi On. Jika Anda menyalakan Force SSL, pastikan Anda sudah membuat sertifikat SSL pada domain yang akan digunakan. Pada kolom Open Basedir directories, ganti menjadi /usr/home/<USER NAME>/domains/<Domain tujuan> dan klik Save.
- Buka halaman MySQL pada dashboard Serv00, lalu klik tab Add database. Isikan nama database, lalu pilih New user. Isikan username dan password database, lalu klik Add. Jika Anda menggunakan Random password, catat password yang dibuat untuk digunakan pada konfigurasi Laravel.
- Silakan buka folder yang berisi project Laravel yang akan Anda upload, lalu pilih semua file dan folder kecuali .git, .fleet, .idea, .vscode, dan node_modules. Compress file dan folder yang dipilih dengan cara klik kanan pada file atau folder yang dipilih lalu pilih Add to archive.
- Pada bagian Archive format, pilih ZIP atau RAR dan klik OK. Tunggu sampai prosesnya selesai.
- Kembali ke dashboard. Klik File Manager untuk membuka file manager Serv00. Masuk ke folder domains -> <Domain Tujuan>. Silakan upload file zip atau rar yang sudah dibuat tadi dan tunggu sampai proses upload selesai.
-
Pada panel Category, klik Data. Isikan username dan password akun Anda pada kolom Auto-login.Kembali ke Session, isikan nama sesi yang Anda inginkan pada kolom Saved Sessions/New Folder dan klik Save, kemudian klik Open. Jika muncul Security Alert, klik Accept. Setelahnya, akan muncul seperti pada gambar berikut.
-
Masukkan perintah cd domains/<Domain Tujuan> diikuti perintah unzip <Nama file zip>.zip (jika ZIP) atau unrar x <Nama file rar>.rar (Jika RAR). Tunggu sampai proses ekstrak selesai, lalu refresh File Manager.
-
Impor database dari komputer Anda ke Serv00 phpMyAdmin. Jika Anda tidak ingin mengimpor database, jalankan perintah php artisan migrate pada KiTTY.
-
Masuk ke folder app -> Providers. Edit AppServiceProvider.php dengan menambahkan baris berikut di dalam function register, lalu simpan.
$this->app->bind('path.public',function(){ return base_path('public_html'); });
Tambahan
Cara membuat link simbolik untuk upload file atau foto (Penting)
Jika project Laravel Anda menggunakan upload file atau foto, Anda perlu
membuat link simbolik ke folder storage dengan perintah
php artisan storage:link. Sayangnya perintah ini tidak bisa
berjalan karena link simbolik yang akan dibuat mengarah ke folder public,
bukan public_html sehingga muncul pesan error
symlink(): No such file or directory. Cara
yang bisa dilakukan adalah membuat routing khusus untuk membuat link simbolik.
-
Buka file web.php di dalam folder routes pada
hosting, lalu tambahkan routing berikut dan simpan.
Route::get('/linkstorage', function() { $target = base_path().'/storage/app/public'; $link = $_SERVER['DOCUMENT_ROOT'].'/storage'; symlink($target, $link); echo "Berhasil membuat link simbolik"; });
- Pada browser, buka <Nama Domain Anda>/linkstorage. Jika muncul tulisan "Berhasil membuat link simbolik", berarti pembuatan link berhasil dan upload file atau foto sudah bisa digunakan.
- Hapus routing di atas setelah berhasil.
Cara connect FTP dengan FileZilla
Jika Anda ingin menggunakan FileZilla, ikuti langkah-langkah berikut untuk
menyambungkan koneksi FTP:
- Buka halaman FTP pada dashboard Serv00 dan klik tab Add account.
- Isikan kolom Login dengan nama yang Anda inginkan tanpa spasi dan isi password. Pada kolom Directory, silakan pilih mau ke domain tujuan atau Home directory (Root folder) atau lainnya, kalau saya Home directory supaya bisa memanajemen semua domain yang ada. Klik Add setelahnya.
- Buka FileZilla, dan klik menu File -> Site Manager untuk membuka Site Manager.
- Isikan Host dengan sX.serv00.com, lalu isi Username dan Password yang sudah dibuat tadi dan klik Connect.
Cara connect ke server email Serv00
Serv00 memiliki email server sendiri. Jika Anda ingin menggunakan fitur
Email pada project Laravel, Anda bisa mengikuti langkah-langkah berikut.
- Buka halaman Email pada Dashboard. Pada daftar biasanya sudah ada nama domain yang dibuat sejak akun dibuat.
- Jika menggunakan domain yang ada, klik Details lalu klik tab Add new mailbox. Jika menggunakan domain lain, klik tab Add new e-mail. Isikan alamat email dan password, lalu klik Add.
- Buka file .env pada project Laravel yang diupload. Atur MAIL_MAILER menjadi smtp, MAIL_HOST menjadi mailX.serv00.com, dan MAIL_PORT menjadi 25. Atur juga MAIL_USERNAME dan MAIL_PASSWORD berdasarkan akun email yang sudah dibuat tadi. Samakan MAIL_FROM_ADDRESS dengan MAIL_USERNAME (Gunakan tanda kutip).
- Silakan Anda mencoba fitur email pada project Laravel. Usahakan gunakan email Anda sebagai email tujuan dan cek folder spam pada email tujuan karena email yang dikirim melalui project Laravel yang diupload tidak terlihat pada Serv00.com Webmail.
Cara reset password MySQL
Jika Anda lupa password MySQL, ikuti langkah berikut untuk mereset password
MySQL:
Penyelesaian Masalah
Website tidak terbuka dan muncul banyak pesan Warning: open_basedir() restiction in effect diikuti Fatal Error
Pastikan username dan domain tujuan pada
Open basedir directories sudah benar. Jika project Laravel
dideploy dari GitHub, konfigurasi
Open basedir directories tetap usr/home/<USER NAME>/domains/<Domain tujuan>.
Muncul pesan Composer detected issues in your platform: Your Composer dependencies require a PHP version... saat membuka website atau menjalankan composer atau php artisan
Serv00 menggunakan PHP 8.1, biasanya terjadi jika Laravel yang
digunakan adalah versi paling baru dan tidak support PHP lama, terutama Laravel 11. Ada dua cara yang bisa dilakukan, yaitu mengganti versi PHP atau mengedit file composer.json.
Cara 1: Mengganti versi PHP
Cara 2: Mengedit file composer.json
Buka file
composer.json pada folder project Laravel, dan tambahkan "platform-check": false di dalam "config" seperti gambar di bawah, lalu simpan.
Jalankan perintah composer dump-autoload pada KiTTY. Jika masih error,
hapus folder vendor dan file composer.lock, lalu jalankan
perintah composer install.
Komentar
Posting Komentar