“Cara Install Laravel pada Ubuntu 20.04 / Debian 11”
Laravel diluncurkan sejak tahun 2011 dan mengalami pertumbuhan yang cukup eksponensial. Di tahun 2015, Laravel adalah framework yang paling banyak mendapatkan bintang di Github. Sekarang framework ini menjadi salah satu yang populer di dunia, tidak terkecuali di Indonesia.
Laravel fokus di bagian end-user, yang berarti fokus pada kejelasan dan kesederhanaan, baik penulisan maupun tampilan, serta menghasilkan fungsionalitas aplikasi web yang bekerja sebagaimana mestinya. Hal ini membuat developer maupun perusahaan menggunakan framework ini untuk membangun apa pun, mulai dari proyek kecil hingga skala perusahaan kelas atas.
Laravel mengubah pengembangan website menjadi lebih elegan, ekspresif, dan menyenangkan, sesuai dengan jargonnya “The PHP Framework For Web Artisans”. Selain itu, Laravel juga mempermudah proses pengembangan website dengan bantuan beberapa fitur unggulan, seperti Template Engine, Routing, dan Modularity.
Daftar Isi
Manfaat Laravel untuk Proses Pengembangan Website
Laravel menawarkan beberapa keuntungan ketika Anda mengembangkan website menggunakan dasar framework ini.
- Pertama, website menjadi lebih scalable (mudah dikembangkan).
- Kedua, terdapat namespace dan tampilan yang membantu Anda untuk mengorganisir dan mengatur sumber daya website.
- Ketiga, proses pengembangan menjadi lebih cepat sehingga menghemat waktu karena Laravel dapat dikombinasikan dengan beberapa komponen dari framework lain untuk mengembangkan website.
2 Tools Andalan Laravel
Selain itu, ada dua tools Laravel yang jarang dimiliki oleh framework lain (kecuali Symphony), yaitu Composer dan Artisan. Apa kegunaan masing-masing dari tool tersebut?
1. Composer
Composer merupakan tool yang di dalamnya terdapat dependencies dan kumpulan library. Seluruh dependencies disimpan menggunakan format file composer.json sehingga dapat ditempatkan di dalam folder utama website. Inilah mengapa composer terkadang dikenal dengan dependencies management.
Pertanyaannya lain, apa itu dependencies management?
Misalnya Anda mempunyai sebuah website yang membutuhkan sebuah library. Saya ambil contoh library untuk mengimplementasikan validasi dan proteksi untuk spamming,yaitu Google reCaptcha.
Tentu saja untuk menyediakan Google reCaptcha tidak bisa menggunakan satu library saja, tapi membutuhkan beberapa library. Anda tidak mungkin menginstall satu per satu library, kan?
Nah! Composer membantu Anda untuk menginstall library yang dibutuhkan oleh library Google reCaptcha. Jadi jika menggunakan composer Anda tinggal menginstall library Google reCaptcha dan secara otomatis library lain akan terinstall.
Begitu pun ketika ingin memperbarui library, Anda cukup menggunakan perintah “$ composer update” dan satu per satu library akan diperbarui secara otomatis.
2. Artisan
Sudah pernah mendengar ini? Artisan merupakan command line interface yang dimiliki oleh Laravel. Artisan mencakup sekumpulan perintah yang membantu Anda untuk membangun sebuah website atau aplikasi web.
Kumpulan perintah Artisan juga termasuk penggabungan dengan framework Symphony yang menghasilkan fitur add-on di Laravel 5.1 (sekarang sudah masuk ke versi Laravel 5.8). Dengan adanya fitur add-on, Anda bisa menambahkan berbagai macam fitur baru ke Laravel.
Installasi
sudo apt install zip unzip software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt install -y php7.4 php7.4-gd php7.4-mbstring php7.4-xml php-zip
Apache2
sudo apt install apache2 libapache2-mod-php7.4
Install MySQL
sudo apt install mysql-server php7.4-mysql
Atau bisa lihat tutorial lengkapnya di sini
2. Installing Composer
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer sudo chmod +x /usr/local/bin/composer
3. Download dan Install Laravel
cd /var/www git clone https://github.com/laravel/laravel.git - masuk ke folder laravel cd /var/www/laravel sudo composer install - ganti permission file chown -R www-data.www-data /var/www/laravel chmod -R 755 /var/www/laravel chmod -R 777 /var/www/laravel/storage
4. Create Environment Settings
mv .env.example .env - generate base64 php artisan key:generate - edit env vi .env APP_NAME=Laravel APP_ENV=local APP_KEY=base64:HFdS7c9rhDp+AeHu7kc2OLBPuxHqq2BQ/1gfFWEpoAk= APP_DEBUG=true APP_URL=http://localhost ...
5. Create MySQL User and Database
– login ke mysql
mysql -u root -p
– create DB
CREATE DATABASE laravel;
CREATE USER 'laravel'@'localhost' IDENTIFIED BY 'secret';
GRANT ALL ON laravel.* to 'laravel'@'localhost';
FLUSH PRIVILEGES;
quit
– edit envi
vi .env
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=laravel DB_PASSWORD=secret
6. Apache Configuration
vi /etc/apache2/sites-enabled/000-default.conf <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/laravel/public <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/laravel> AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
7. Restart apache service
systemctl restart apache2