Server FreeBSD untuk Hosting Laravel - Instalasi dan Konfigurasi

· 2 min read

Saat mengembangkan situs web, salah satu hal penting yang harus diperhatikan adalah memilih framework yang tepat. Framework biasanya berisi beberapa t

Salah satu bahasa pemrograman yang populer digunakan dalam pengembangan web adalah PHP. PHP merupakan bahasa pemrograman yang banyak digunakan untuk membuat platform CMS paling populer di dunia, yaitu WordPress. PHP merupakan bahasa pemrograman back-end atau digunakan untuk pengembangan sisi server.

Saat mengembangkan situs web, salah satu hal penting yang harus diperhatikan adalah memilih framework yang tepat. Framework biasanya berisi beberapa template kode dan menyederhanakan proses pengembangan aplikasi dari yang sebelumnya harus membangun kode pemrograman dari awal menjadi sesuatu yang lebih sederhana dengan memanfaatkan fitur-fitur yang ada di dalam framework.

Dengan begitu, situs web yang dihasilkan akan optimal karena fitur-fiturnya disesuaikan dengan kebutuhan Anda. Salah satu framework yang direkomendasikan untuk membuat aplikasi atau situs web adalah framework Laravel.

Pada artikel ini saya akan menjelaskan tentang instalasi lingkungan aplikasi web menggunakan Laravel yang diinstal pada FreeBSD 13.2.


1. Persyaratan Sistem

  • OS: FreeBSD13.2 Stable.
  • IP LAN Server: 192.168.9.3.
  • Apache version: apache24 (We will not discuss this in this article, we will assume it is already installed).
  • Versi MySQL: mysql80-server (We will not discuss this in this article, we will assume it is already installed).
  • php version: php82.
  • php mod_fpm.
Dalam tutorial ini saya akan menggunakan alat pkg FreeBSD untuk menginstal paket, pkg mirip dengan alat manajemen paket yang Anda temukan di Ubuntu (aptitude) dan CentOS (yum) dan memungkinkan kita untuk menginstal paket-paket ini dan memutakhirkannya jauh lebih cepat daripada mengkompilasi dengan port FreeBSD.


Installation Laravel PHP on FreeBSD


2. Proses Instalasi PHP

Karena pada tutorial ini kita asumsikan server FreeBSD kita sudah terinstal apache24 dan mysql80-server maka kita akan langsung install PHP.


root@router2:~ # pkg install php82 mod_php82 php82-mysqli
Jika aplikasi diatas sudah terinstal, lanjutkan dengan instalasinya.


root@router2:~ # pkg install php82-gd php82-phar php82-ctype php82-filter php82-iconv php82-curl php82-mysqli php82-pdo php82-tokenizer php82-mbstring php82-session php82-simplexml php82-xml php82-zlib php82-zip php82-dom php82-pdo_mysql php82-ctype
Jika aplikasi diatas sudah terinstal, lanjutkan dengan instalasinya.


root@router2:~ # cd /usr/local/etc
root@router2:/usr/local/etc # cp php.ini-production php.ini
Untuk memastikan OpenSSL berfungsi (Composer memerlukan berkas ini saat mengakses berkas melalui web menggunakan SSL), kita akan membuat file cacert.pem.


root@router2:~ # cd /etc/ssl
root@router2:/etc/ssl # wget http://curl.haxx.se/ca/cacert.pem
Sekarang edit file php.ini di folder /usr/local/etc dan ikuti skrip berikut:


openssl.cafile=/etc/ssl/cacert.pem
cgi.fix_pathinfo=0
Lalu tambahkan script ini di atas script di dalam file php.ini, letakan tepat setelah kata [PHP] atau di bawah kata [PHP].


listen.owner = www
listen.group = www
listen.mode = 0660

3. Konfigurasi PHP-FPM

Sekarang kita perlu "menyatukan" apache24 dan PHP, PHP-FPM adalah singkatan dari PHP Fork Process Manager dan merupakan modul SAPI yang akan kita gunakan untuk instalasi ini. Langkah selanjutnya adalah mengedit file /usr/local/etc/php-fpm.d/www.conf dan mengaktifkan skrip berikut dalam file tersebut.


listen = /var/run/php-fpm.sock
listen.owner = www
listen.group = www
listen.mode = 0660
Langkah selanjutnya adalah membuat skrip startup rc.d untuk proses booting sehingga php-fpm dapat dimuat secara otomatis. Tambahkan skrip php_fpm_enable="YES" ke berkas rc.conf.


root@router2:~ # ee /etc/rc.conf
php_fpm_enable="YES"
Langkah terakhir dalam konfigurasi php-fpm adalah memulai ulang aplikasi.


root@router2:~ # service php-fpm restart
Performing sanity check on php-fpm configuration:
[18-Jun-2023 20:19:39] NOTICE: configuration file /usr/local/etc/php-fpm.conf test is successful

Stopping php_fpm.
Waiting for PIDS: 2399.
Performing sanity check on php-fpm configuration:
[18-Jun-2023 20:19:39] NOTICE: configuration file /usr/local/etc/php-fpm.conf test is successful

Starting php_fpm.
root@router2:~ #

4. Konfigurasi Mod PHP

Perlu diingat sekali lagi, bahwa pada tutorial ini kita asumsikan aplikasi apache24 dan mysql80-server sudah terinstal di server FreeBSD kita, jadi file httpd.conf juga tersedia di folder /usr/local/etc/apache24. Untuk mengaktifkan modul PHP kita harus mengedit file httpd.conf dan menyertakan skrip modul PHP di file httpd.conf.

Skrip berikut ini untuk mengaktifkan modul php di apache24, letakkan skrip berikut di bagian paling bawah file /usr/local/etc/apache24/httpd.conf.


LoadModule php_module         libexec/apache24/libphp.so

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

AddType application/x-httpd-php .php
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps


5. Proses Instalasi Composer Laravel

Tahap selanjutnya adalah menginstal Composer dan Laravel. Composer adalah pengelola paket untuk PHP dan banyak digunakan oleh Laravel.


root@router2:~ # curl -sS https://getcomposer.org/installer -o composer-setup.php
root@router2:~ # php composer-setup.php --install-dir=/usr/local/bin --filename=composer
All settings correct for using Composer
Downloading...

Composer (version 2.5.8) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
root@router2:~ #
Uji Composer, apakah sedang BERJALAN atau belum.


root@router2:~ # composer --version
Composer version 2.5.8 2023-06-09 17:13:21
root@router2:~ #
Jika muncul tulisan Composer version, berarti Composer sedang BERJALAN.

Jika Composer sedang BERJALAN, kita lanjutkan dengan menginstal Laravel. Anda dapat mengunduh file Laravel dari situs web Gihub. Ikuti skrip di bawah ini untuk menginstal Laravel.


root@router2:~ # cd /usr/local/www
root@router2:/usr/local/www # git clone https://github.com/laravel/laravel.git
Cloning into 'laravel'...
remote: Enumerating objects: 34429, done.
remote: Counting objects: 100% (584/584), done.
remote: Compressing objects: 100% (293/293), done.
remote: Total 34429 (delta 325), reused 435 (delta 278), pack-reused 33845
Receiving objects: 100% (34429/34429), 10.43 MiB | 492.00 KiB/s, done.
Resolving deltas: 100% (20330/20330), done.
root@router2:/usr/local/www #
Jika sudah diunduh, lanjutkan dengan skrip berikut untuk memberikan hak akses dan kepemilikan file Laravel.


root@router2:~ # chown -R www:www /usr/local/www/laravel/
root@router2:~ # chmod -R g+w /usr/local/www/laravel/
Jika kita sudah melakukan semua langkah di atas, sekarang saatnya menginstal Laravel.


root@router2:~ # cd /usr/local/www/laravel
root@router2:/usr/local/www/laravel # composer install
Jika instalasi komposer di atas gagal, Anda dapat mencoba skrip di bawah ini.


root@router2:~ # cd /usr/local/www/laravel
root@router2:/usr/local/www/laravel # composer install --ignore-platform-req=ext-fileinfo
Aplikasi Laravel ini tidak hanya digunakan oleh Apache Web Server, jika Anda ingin menggabungkannya dengan NGINX Laravel juga dapat berjalan dengan baik.
Subscribe on LinkedIn Server FreeBSD untuk Hosting Laravel - Instalasi dan Konfigurasi

Enclosures Link: Server FreeBSD untuk Hosting Laravel - Instalasi dan Konfigurasi

Silahkan Berkomentar, Kakak...! Bunda...!

Posting Komentar