CodeIgniter
CodeIgniter adalah framework PHP yang ringan dan cepat, dirancang untuk membantu pengembang membangun aplikasi web dengan arsitektur MVC (Model-View-Controller). CodeIgniter terkenal karena kemudahan penggunaannya, dokumentasi yang lengkap, dan performa yang tinggi. Framework ini sangat cocok untuk pengembang yang membutuhkan solusi cepat dalam membuat aplikasi web tanpa memerlukan konfigurasi yang rumit.
1. Persyaratan Sistem
System requirements untuk CodeIgniter v4:
- PHP 8.1+ dengan extension intl, mbstring, json
- Database MySQL/MariaDB, PostgreSQL, SQLite3, MS SQL, atau Oracle Database
- Apache atau Nginx web server
Sebelum memulai deploy, siapkan:
- VPS atau server dengan OS Ubuntu 24.04
- Akses SSH ke server
- Domain yang sudah diarahkan ke server
2. Persiapan Server
Update sistem
sudo apt update
sudo apt upgrade -y
Install Apache
sudo apt install apache2 -y
Install MariaDB
sudo apt install mariadb-server -y
Tambah repository PPA ondrej/php
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update
sudo apt upgrade -y
Install PHP 8.3 dan extension yang dibutuhkan
sudo apt install libapache2-mod-php8.3 php8.3 php8.3-cli php8.3-common \
php8.3-apcu php8.3-mbstring php8.3-gd php8.3-intl \
php8.3-xml php8.3-soap php8.3-bcmath php8.3-mysql php8.3-zip \
php8.3-curl php8.3-tidy php8.3-imagick -y
Install Composer
sudo wget https://getcomposer.org/download/latest-stable/composer.phar -O /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
3. Buat Database
Login ke MariaDB
sudo mysql
Buat database dan user
CREATE DATABASE codeigniter;
GRANT ALL PRIVILEGES ON codeigniter.* TO 'codeigniter'@'localhost' IDENTIFIED BY 'rahasia';
FLUSH PRIVILEGES;
exit
4. Install CodeIgniter
Install CodeIgniter sebagai sample aplikasi yang akan di-deploy.
Jika sudah ada aplikasi CodeIgniter yang siap deploy, lompat ke pengaturan konfigurasi .env
.
sudo apt install unzip -y
composer create-project codeigniter4/appstarter contoh.com
Masuk ke direktori dan copy file env
cd contoh.com
cp env .env
Buka file .env
nano .env
Atur konfigurasi URL dan database
CI_ENVIRONMENT = production
database.default.hostname = localhost
database.default.database = codeigniter
database.default.username = codeigniter
database.default.password = rahasia
database.default.DBDriver = MySQLi
database.default.DBPrefix =
database.default.port = 3306
Jalankan migrate
untuk pembuatan struktur database
php spark migrate
Jalankan seeding
jika menyiapkan seed data
php spark db:seed NamaSeeder
atau import dari file dump .sql
mysql -u codeigniter -p codeigniter < backup-db.sql
Untuk production, hapus paket development
composer install --no-dev
5. Konfigurasi Apache
Pindahkan direktori CodeIgniter ke /var/www
sudo mv contoh.com /var/www
Ubah user-group direktori
sudo chown -R www-data:www-data /var/www/contoh.com
Buat konfigurasi virtual host untuk contoh.com
sudo nano /etc/apache2/sites-available/contoh.com.conf
Masukkan konfigurasinya
<VirtualHost *:80>
ServerName contoh.com
DocumentRoot /var/www/contoh.com/public
<Directory /var/www/contoh.com/public>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/contoh.com_error.log
CustomLog /var/log/apache2/contoh.com_access.log combined
</VirtualHost>
Aktifkan modul rewrite
, virtual host, dan restart apache2
sudo a2enmod rewrite
sudo a2ensite contoh.com
sudo systemctl restart apache2
6. Install SSL
Install certbot
sudo apt install certbot python3-certbot-apache -y
Request sertifikat SSL
sudo certbot --non-interactive \
-m [email protected] \
--agree-tos \
--no-eff-email \
--apache -d contoh.com -d www.contoh.com \
--redirect
Deploy CodeIgniter telah selesai. Lakukan pengujian akses dan fungsi aplikasi.