Daftar Isi

Instalasi Laravel 8, PHP 7.3, MariaDB, Composer, Node.js 18 dan Apache2 Di Debian 11

Dalam menginstall Laravel 8, kebutuhan versi aplikasi yang disarankan(compatible) maupun minimal adalah:

  • Laravel 8
  • Php 7.3
  • MariaDB
  • Composer
  • Apache2
  • NodeJS 18

Install Apache2 Server:

1
2
sudo apt update
sudo apt install apache2

Install & configure php7.3:

1
sudo apt install -y lsb-release ca-certificates curl php7.3-cli php7.3-common php7.3-mysql php7.3-zip php7.3-gd php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath

enable PHP extensions

1
sudo nvim /etc/php/7.3/apache2/php.ini

Uncomment pada bagian extension untuk melakukan enable PHP extension fileinfo, openssl, dan mbstring.

1
2
3
extension=fileinfo
extension=mbstring
extension=openssl

Install & Configure MariaDB database server

Install MariaDB:

1
sudo apt install mariadb-server

Setelah instalasi, login ke MariaDB

1
sudo mysql -u root -p

Tambahkan user untuk database, kemudian database untuk aplikasi kita:

1
2
3
4
CREATE DATABASE laravelapp;
CREATE USER laravel@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravelapp.* TO laravel@localhost;
FLUSH PRIVILEGES;

Install composer 2.3.5:

1
2
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer --version=2.3.5
composer self-update 2.3.5

Install dan Konfigurasi Configure Laravel 8

Buat direktori untuk project anda, di direktori home user anda di Linux debian:

1
mkdir -p /home/$USER/{Projects/{Htdocs}}

Change ownership of the projects folder:

1
sudo chown -R www-data:www-data /home/$USER/{Projects/{Htdocs}}

Ubah hak akses direktori Htdocs menjadi 775 (rwxrwxr-x), agar user yang masuk dalam grup www-data mendapatkan akses penuh pada aplikasi yang ada di dalam direktori tersebut.

1
sudo chmod -R 775 /home/$USER/Projects/Htdocs

Tambahkan user anda ke grup www-data:

1
sudo usermod -a -G www-data $USER

Masuk ke direktori aplikasi anda:

1
cd /home/$USER/Projects/Htdocs

Kemudian anda sudah bisa mulai membuat aplikasi laravel 8 menggunakan composer:

1
composer create-project laravel/laravel=8.x /home/$USER/Projects/Htdocs/testing-app --prefer-dist

Setelah itu, aplikasi Laravel testing-app sudah bisa anda akses di /home/$USER/Projects/Htdocs/testing-app

Konfigurasi Virtual Host untuk Apache2

Buat file konfigurasi untuk modul Apache2, dalam hal ini dinamakan projects.conf (bisa juga dengan nama lain):

1
sudo nano /etc/apache2/sites-available/projects.conf

Tambahkan konfigurasi berikut di dalam file projects.conf yang anda buat:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
 <VirtualHost *:80>
    ServerAdmin admin@myserver.dev                                                     
    ServerName myserver.dev                                                            
    DocumentRoot /home/$USER/Projects/Htdocs                                           
  
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/$USER/Projects/Htdocs>
        AllowOverride All
    </Directory>
 
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
 </VirtualHost>

Catatan:

  • Ganti variabel $USER pada file projects.confdengan nama user linux anda
  • Pada ServerAdmin, admin@myserver.dev dapat diganti sesua alamat email yang anda inginkan
  • Pada ServerName, myserver.dev akan menjadi nama dari virtual host anda, saat dipanggil di browser secara lokal, akan menjadi _http://myserver.dev/_

Aktivasi modul rewrite Apache2 dan aktifkan modul projects.conf menggunakan perintah:

1
2
sudo a2enmod rewrite
sudo a2ensite projects.conf

Verifikasi konfigurasi Apache2 untuk memastikan tidak ada error:

1
sudo apachectl configtest

Restart servis Apache2 untuk mengaktifkan konfigurasi virtual host yang kita buat untuk project Laravel 8 kita. Restart the Apache2 service to apply a new virtual host configuration for the Laravel project using the below command.

1
sudo systemctl restart apache2

Sekarang anda telah selesai melakukan konfigurasi virtual host untuk Laravel.

Pada komputer anda, ubah file /etc/hosts menggunakan text editor nano/vim/dll.

1
sudo nano /etc/hosts

Tambahkan konfigurasi di bawah ini. Pastikan nama domain sesuai dengan nama yang anda kelola tadi, dalam hal ini myserver.dev, kemudian IP address sesuai dengan yang terdaftar pada komputer anda

1
192.168.10.15 myserver.dev

Simpan file /etc/hosts, dan aplikasi Laravel 8 yang anda bentuk sudah bisa diakses dari http://myserver.dev/testing-app/public

Package Manager Node.JS

Untuk instalasi package, di Laravel 8 menggunakan Nodejs 18 dengan menggunakan npm sebagai package manager. Untuk panduan selengkapnya klik Instalasi Node.js dan npm Versi tertentu Menggunakan NVM (Node Version Manager) di Debian 11.

Refference

StackOverflow tentang “How To Install Specified Version of Composer”

Techdiaries.com tentang “Install Laravel 8 with PHP 7.3 & Composer”

Tutsmake tentang memperbaiki error “laravel log could not be opened”

Laravel.com tentang minimum requirements Laravel 8