Assalamualaikum Wr.Wb...
dengan diberikan nikmat dan rezeki dari Allah SWT, saya Mr.Gagaltotal666 akan
berbagi kepada anda yaitu tentang Deploy Install dan Konfigurasi Codeigniter 4
dengan Webserver Nginx di Ubuntu Server GNU/Linux.
sebelum anda ingin mencoba Framework Codeigniter 4
persiapkan LAMP dan LEMP stack terlebih dahulu
anda bisa lihat artikel saya sebelum nya [Lemp stack]
oke lanjut ke tutorial cara deploy dan config Ci 4 di Nginx
back to terminal area
pertama membuat virtual hosts
didirectory /etc/hosts
$ sudo vim /etc/hosts$ sudo nano /etc/hosts
127.0.0.1 gagaltotal666.net192.168.100.85 gagaltotal666.net
selanjut nya install composer
$ sudo curl -s https://getcomposer.org/installer | php$ sudo mv composer.phar /usr/local/bin/composer
buat directory/folder Ci4 untuk mengunduh di composer
menginstal CI 4 dengan composer, silahkan ketik perintah berikut.
$ composer create-project codeigniter4/appstarter ci-news -vvv
Ada beberapa argumen yang kita berikan pada perintah ini:
1. create-project adalah perintah untuk membuat
proyek baru dengan composer;
2. codeigniter4/appstarter adalah file CI yang akan di-download;
3. ci-news adalah nama proyek yang akan kita buat;
4. -vvv berfungsi untuk melihat proses install lebih detail.
atau anda bisa mendownload manual di website resmi CI 4
contoh sebagai berikut unduh menggunakan wget
$ wget https://github.com/codeigniter4/framework/archive/v4.1.4.zip
selanjut nya, extract file tersebut menggunakan unzip
$ unzip -x file-ci4.zip
kemudian ubah nama env menjadi .env
masuk directory/folder CI4 tadi yang sudah di extract
contoh sebagai berikut
$ cd ci4-app$ mv env .env
kita harus mengubah environment
variabel CI_ENVIRONMENT menjadi development.
Silahkan buka file env, kemudian cari variabel CI_ENVIRONMENT
dan ubahlah nilainya menjadi development.
#beforeCI_ENVIRONMENT = production#afterCI_ENVIRONMENT = development
Nanti, setelah kita selesai mengembangkan aplikasi
atau aplikasi sudah jadi/fix. baru deh ubah kembali
CI_ENVIRONTMENT menjadi production.
jika kamu ada kendala error di CI4 nya
contoh installed and loaded: intl [silakan baca artikel ini]
langkah selanjut nya koneksikan DB ke Ci4
silakan anda buat DB anda masing-masing sesuai yang ada di aplikasi anda
$ sudo mysql -u user -p$ create database nama_db;
masuk ke config Database di CI4, berada di folder app/Config/
cari file Database.php
public $default = ['DSN' => '','hostname' => 'localhost','username' => 'root','password' => 'rahasia','database' => 'db_name','DBDriver' => 'MySQLi','DBPrefix' => '','pConnect' => false,'DBDebug' => (ENVIRONMENT !== 'production'),'charset' => 'utf8','DBCollat' => 'utf8_general_ci','swapPre' => '','encrypt' => false,'compress' => false,'strictOn' => false,'failover' => [],'port' => 3306,];
selanjut nya jangan lupa config baseurl nya
jika kamu sudah mempunyai domain,
tinggal kamu ubah ke nama domain kamu di baseurl
kalau menggunakan localhost:8080,
untuk port bisa kamu sesuaikan dengan config nya
contoh sebagai berikut
#port 8080public $baseURL = 'http://localhost:8080/';#port 80public $baseURL = 'http://localhost:80/';#menggunakan domainpublic $baseURL = 'http://ghostgtr666.app:80/';
atau anda bisa menggunakan file .env
untuk koneksi Database dan Baseurl
contoh sebagai berikut
#--------------------------------------------------------------------# DATABASE#--------------------------------------------------------------------database.default.hostname = localhostdatabase.default.database = ci4_appdatabase.default.username = rootdatabase.default.password = rahasiadatabase.default.DBDriver = MySQLi
untuk di baseurl nya .env, port 80, 8080 dan domain
#--------------------------------------------------------------------# APP#--------------------------------------------------------------------app.baseURL = 'http://localhost:80/'
#--------------------------------------------------------------------# APP#--------------------------------------------------------------------app.baseURL = 'http://localhost:8080/'
#--------------------------------------------------------------------# APP#--------------------------------------------------------------------app.baseURL = 'http://domain.com'
selanjut nya pergi ke directory system [referensi]
dan cari file CodeIgniter.php
kenapa harus mengedit file ini ?, karena jika di running
akan muncul error di bagian locale_set_default
jadi kita edit terlebih dahulu
contoh seperti ini
#beforelocale_set_default($this->config->defaultLocale ?? 'en');
#afterif( function_exists('locale_set_default' ) ) :locale_set_default($this->config->defaultLocale ?? 'en');endif;
kemudian save, nah sesudah itu copy folder CI4 ke root nya nginx
yang berada di directory /var/www/html
$ sudo cp -r folder-ci4 /var/www/html/ci4-app
ubah hak akses folder menjadi 777
$ sudo chmod -R 777 ci4-app
kalau sudah tinggal langkah terakhir buat conf di nginx
buat conf untuk aplikasi CI4 tadi
di directory /etc/nginx/conf.d/
$ sudo vim /etc/nginx/conf.d/ci4-app.conf$ sudo nano /etc/nginx/conf.d/ci4-app.conf
isi code conf simple sebagai berikut
server {listen 80;listen [::]:80;server_name example.com;root /var/www/html/example.com/public;index index.php index.html index.htm;location / {try_files $uri $uri/ /index.php$is_args$args;}location ~ \.php$ {include snippets/fastcgi-php.conf;# With php-fpm:fastcgi_pass unix:/run/php/php7.4-fpm.sock;# With php-cgi:# fastcgi_pass 127.0.0.1:9000;}error_page 404 /index.php;# deny access to hidden files such as .htaccesslocation ~ /\. {deny all;}}
varian IP local satu jaringan, dan localhost
server {listen 80;listen [::]:80;server_name ghostgtr666.net;root /var/www/html/ci4-app/public;index index.php index.html index.htm;location / {try_files $uri $uri/ /index.php$is_args$args;}location ~ \.php$ {include snippets/fastcgi-php.conf;# With php-fpm:fastcgi_pass unix:/run/php/php7.3-fpm.sock;# With php-cgi:# fastcgi_pass 127.0.0.1:9000;}error_page 404 /index.php;# deny access to hidden files such as .htaccesslocation ~ /\. {deny all;}}
karena saya menggunakan php 7.4 fpm nya
jika kamu menggunakan 7.3 tinggal ubah saja php7.3-fpm.sock
setelah itu reload atau restart nginx
$ sudo nginx -t$ systemctl restart nginx
buka di browser nama virtualhost tadi yang dibuat
atau domain anda
contoh
$ gagaltotal666.net
$ 192.168.100.85
jika anda masih kurang mengerti
silakan simak video tutorial dibawah ini
oke mungkin itu saja mengenai install dan konfigurasi CI4
jika ada kesalahan dan kekurangan nya
mohon berikan masukan nya ya
sekian dan semoga bermanfaat...
Wasalamualaikum Wr.Wb...
0 Comments