Laravel adalah framework web PHP yang digdaya untuk membangun aplikasi web full-stack yang kokoh dan profesional. Ia mengikuti arsitektur MVC (model-view-controller) dan dibangun berdasarkan Symfony. Laravel mendukung berbagai database, termasuk MySQL, PostgreSQL, SQLite, dan SQL Server. Laravel juga menyediakan perancah untuk otentikasi yang aman.
Penasaran untuk membuat aplikasi web dengan Laravel di AlmaLinux 9? Artikel ini akan memandu Anda melalui proses instalasi Laravel dengan LAMP Stack (Linux, Apache/Httpd, MariaDB, dan PHP) dan Composer.
Sebelum Memulai
Pastikan Anda memiliki hal berikut ini sebelum memulai:
- Server AlmaLinux 9.
- Pengguna non-root dengan hak administrator.
- Nama domain lokal.
- SELinux dengan mode permisif.
Instalasi LAMP Stack dan Composer
Laravel merupakan salah satu kerangka web PHP terpopuler untuk membangun aplikasi web. Untuk menginstal Laravel, Anda perlu menginstal dependensi, termasuk LAMP Stack (Apache/Httpd, MariaDb, dan PHP) dan Composer. Saat ini, Laravel memerlukan PHP 8.3. Anda harus menginstal PHP 8.3 melalui repositori pihak ketiga.
Pertama, tambahkan repositori pihak ketiga EPEL dan Remi ke server Alma Linux Anda menggunakan perintah di bawah ini. Repositori EPEL akan digunakan untuk menginstal paket seperti Composer, sedangkan repositori Remi menyediakan beberapa versi PHP untuk Laravel.
sudo dnf install epel-release dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm
Sekarang aktifkan repositori PHP 8.3 melalui Remi menggunakan perintah di bawah ini.
sudo dnf reset php -y
sudo dnf module enable php:remi-8.3 -y
Selanjutnya, instal paket LAMP Stack (Apache/Httpd, MariaDB, dan PHP) dan Composer dengan perintah berikut. Ketik y
untuk konfirmasi instalasi.
sudo dnf install httpd mariadb-server composer php php-curl php-bcmath php-json php-mbstring php-xml php-tokenizer php-zip
Setelah instalasi selesai, jalankan dan aktifkan layanan httpd dengan perintah di bawah ini.
sudo systemctl start httpd
sudo systemctl enable httpd
Kemudian jalankan dan aktifkan server MariaDB dengan perintah berikut.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Sekarang, verifikasi versi PHP dan Composer menggunakan perintah di bawah ini. Anda seharusnya melihat bahwa PHP 8.3 dan Composer 2.7.1 terinstal.
php -v
sudo -u apache composer -v
Terakhir, jalankan perintah di bawah ini untuk memverifikasi modul PHP Anda. Pastikan fileInfo
, mbstring
, dan openssl
diaktifkan.
php -m
Konfigurasi MariaDB
Dengan PHP yang terkonfigurasi, Anda akan mengamankan server MariaDB dan membuat database serta pengguna baru untuk Laravel. Server MariaDB menyediakan utilitas mariadb-secure-installation
untuk mengamankan server MariaDB dan klien MariaDB untuk terhubung ke server MariaDB melalui baris perintah.
Untuk mengamankan server MariaDB, jalankan perintah di bawah ini dan Anda akan ditanya beberapa konfigurasi server MariaDB. Ketik Y
atau N
untuk setuju atau tidak setuju menerapkan perubahan MariaDB baru.
sudo mariadb-secure-installation
Berikut adalah beberapa konfigurasi server MariaDB yang akan Anda tanyakan:
- Switch to unix_socket authentication? (Beralih ke otentikasi unix_socket?) Masukkan
n
dan tekan ENTER. Pengguna root MariaDB default sudah dilindungi. Secara opsional, Anda juga dapat mengaktifkannya dengan mengetiky
untuk ya. - Change the root password? (Ubah kata sandi root?) Masukkan
y
untuk mengonfirmasi dan mengatur kata sandi root MariaDB baru Anda. - Remove anonymous user? (Hapus pengguna anonim?) Masukkan
y
untuk mengonfirmasi. - Disallow root login remotely? (Tidak mengizinkan login root dari jarak jauh?) Masukkan
y
untuk mengonfirmasi. Hanya koneksi lokal yang diizinkan jika Anda menggunakan pengguna root MariaDB. - Remove the test database and access to it? (Hapus database test dan akses ke sana?) Masukkan
y
untuk mengonfirmasi dan menghapus database default ‘test’. - Terakhir, masukkan
y
lagi untuk memuat ulang semua hak istimewa tabel di server MariaDB Anda dan menerapkan perubahan baru.
Setelah MariaDB
Setelah MariaDB diamankan, Anda akan membuat database dan pengguna baru untuk Laravel melalui klien mariadb
.
Masuk ke server MariaDB dengan perintah klien mariadb
di bawah ini. Masukkan kata sandi root MariaDB Anda saat diminta.
sudo mariadb -u root -p
Sekarang jalankan kueri berikut untuk membuat database dan pengguna baru untuk Laravel. Dalam contoh ini, Anda akan membuat database baru laravelapp
, pengguna laravel
, dengan kata sandi p4ssw0rd
. Sesuaikan detail database dan pengguna di bawah ini dengan informasi Anda.
SQL
CREATE DATABASE laravelapp;
CREATE USER laravel@localhost IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON laravelapp.* TO laravel@localhost;
FLUSH PRIVILEGES;
Selanjutnya, jalankan kueri di bawah ini untuk memverifikasi hak istimewa pengguna laravel
. Pastikan pengguna laravel
dapat mengakses database laravelapp
.
SQL
SHOW PRIVILEGES FOR laravel@localhost;
Terakhir, ketik quit
untuk keluar dari server MariaDB.
Menyambut Laravel
Sekarang Anda telah mengonfigurasi PHP dan MariaDB, mari unduh dan instal Laravel ke sistem Anda. Anda akan membuat dan mengatur direktori proyek, kemudian mengunduh dan menginstal proyek Laravel melalui Composer.
Buat direktori baru untuk proyek Laravel /var/www/laravelapp
dan direktori tambahan .cache
dan .config
untuk menyimpan cache dan konfigurasi Composer. Kemudian, ubah kepemilikan direktori tersebut ke pengguna apache
.
mkdir -p /var/www/laravelapp /usr/share/httpd/.composer/{.cache,.config}
sudo chown -R apache:apache /var/www/laravelapp /usr/share/httpd/.composer
Pergi ke direktori /var/www/laravelapp
dan jalankan perintah composer
di bawah ini untuk mengunduh dan menginstal Laravel.
cd /var/www/laravelapp/
sudo -u apache composer create-project laravel/laravel .
Proses pengunduhan akan terlihat seperti ini:
Output of composer create-project laravel/laravel .
Setelah Laravel diunduh, buka file .env
menggunakan editor nano
berikut.
nano .env
Ubah APP_URL
dengan nama domain lokal Anda, kemudian ubah detail database dengan informasi database MariaDB Anda.
APP_URL=http://dev.hwdomain.local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelapp
DB_USERNAME=laravel
DB_PASSWORD=password
Setelah selesai, simpan file dan keluar.
Sekarang jalankan perintah di bawah ini untuk memigrasikan database dan mengisi tabel Anda dengan data sampel baru.
sudo -u apache php artisan migrate
sudo -u apache php artisan db:seed
Mengatur Virtual Host Httpd
Setelah menginstal Laravel, Anda akan membuat konfigurasi virtual host Httpd baru yang akan digunakan Laravel. Untuk ini, pastikan Anda memiliki nama domain lokal atau domain apa pun/acak yang Anda inginkan. Anda dapat mengonfigurasi domain ini nanti.
Buat konfigurasi virtual host Httpd baru /etc/httpd/conf.d/laravel.conf
menggunakan editor nano
berikut.
sudo nano /etc/httpd/conf.d/laravel.conf
Masukkan konfigurasi berikut dan pastikan untuk mengubah opsi ServerName
dengan nama domain Laravel Anda.
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName dev.hwdomain.local
DocumentRoot /var/www/laravelapp/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/laravelapp>
AllowOverride All
</Directory>
ErrorLog /var/log/httpd/laravel-error.log
CustomLog /var/log/httpd/laravel-access.log combined
</VirtualHost>
Simpan file dan keluar dari editor.
Sekarang jalankan perintah di bawah ini untuk memverifikasi konfigurasi Httpd Anda. Jika Anda memiliki sintaks Httpd yang benar, Anda akan mendapatkan output Syntax OK
.
sudo apachectl configtest
Terakhir, restart layanan Httpd untuk menerapkan konfigurasi virtual host baru Anda untuk Laravel.
sudo systemctl restart httpd
Mengatur Firewalld
Sebelum mengakses instalasi Laravel Anda, Anda harus membuka port HTTP dan HTTPS di sistem Anda, yang dapat dilakukan melalui Firewalld.
Buka traffic HTTP dan HTTPS ke server Alma Linux Anda dengan perintah di bawah ini.
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
Sekarang muat ulang Firewalld untuk menerapkan perubahan.
sudo firewall-cmd --reload
Terakhir, verifikasi daftar aturan Firewalld menggunakan perintah berikut. Anda akan melihat layanan HTTP dan HTTPS ditambahkan ke Firewalld.
sudo firewall-cmd --list-all
Mengakses Laravel dari Komputer Lokal
Untuk mengatur nama domain lokal untuk instalasi Laravel Anda, gunakan yang berikut:
- Untuk pengguna Windows: Ubah file
C:\Windows\System32\drivers\etc\hosts
sebagai administrator. - Untuk pengguna Linux dan Mac: Buka file
/etc/hosts
dengan hak akses root.
Masukkan konfigurasi di bawah ini dan pastikan untuk mengubah alamat IP dan nama domain dengan informasi Anda.
192.168.5.60 dev.hwdomain.local
Simpan dan keluar dari file.
Sekarang buka browser web Anda dan kunjungi instalasi Laravel Anda di http://dev.hwdomain.local
. Jika instalasi Anda berhasil, Anda akan melihat halaman indeks Laravel berikut.
Kesimpulan
Selamat! Anda telah menyelesaikan instalasi Laravel di AlmaLinux 9 dengan LAMP Stack (Linux, Apache/Httpd, MariaDB, dan PHP) dan Composer. Anda juga telah mengonfigurasi Firewalld untuk membuka port HTTP dan HTTPS, dan kemudian mengonfigurasi nama domain lokal untuk pengembangan Laravel Anda melalui file /etc/hosts
atau file C:\Windows\System32\drivers\etc\hosts
.
Dengan mengikuti panduan ini, Anda telah membangun fondasi yang kuat untuk mengembangkan aplikasi web yang andal dan skalabel dengan Laravel di AlmaLinux 9.