Konfigurasi Dynamic Base URL Pada Codeigniter 3 dan 4
Dalam pengembangan aplikasi web kita dapat menentukan URL dasar atau lokasi dasar, yang membantu dalam mengonversi URL web relatif pada halaman tertentu menjadi URL web absolut. Elemen HTML <base> memungkinkan URL dasar atau Base URL digunakan untuk semua URL relatif dalam dokumen tertentu. URL dasar adalah salah satu komponen alamat web yang konsisten yang mereferensikan sebuah halaman web.
Pada codigniter kita juga mengenal base URL. Secara bawaan base url pada codeigniter 3 dan 4 bersifat statis. Artinya setiap kali kita menggunakan domain dan root website yang berbeda, maka kita perlu mengatur lagi base url. Konfigurasi base URL dapat kita temukan di :
Codeigniter 3 : application/config/config.php
$config['base_url'] = "http://localhost/akademik";Codeigniter 4 : app/Config/App.php
public $baseURL = 'http://localhost:8080/';Untuk meminimalisir setingan ketika kita menjalankan projek CI di directory dan domain lain, kita bisa menggunakan konfigurasi dynamic base url pada codeigniter. Jadi setelah kita menggunakan konfigurasi base url, kita tidak perlu melakukan setting base url setiap kali pindah domain atau ganti folder di htdocs.
Konfigurasi Dynamic Base URL Pada Codeigniter 3
Buka file application/config/config.php , hapus baris $config['base_url'] =''; dan ganti dengan kode berikut :$base_url = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http"); $base_url .= "://". @$_SERVER['HTTP_HOST']; $base_url .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']); $config['base_url'] = $base_url;
Konfigurasi Dynamic Base URL Pada Codeigniter 4
1. Buka file App.php di folder app/Config/App.php , hapus baris public $baseURL = 'http://localhost:8080/'; dan ganti dengan kode berikut :public $baseURL = BASE;2. Buka file Constants.php di folder app/Config/Constants.php, tambahkan kode berikut di baris terakhir.
$base = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME']) : 'http://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME']); defined('BASE') || define('BASE', $base);
Kelebihan menggunakan dynamic base URL
- Menentukan secara otomatis base_url() projek web yang dibuat dengan Codeigniter 4.
- Mendeteksi protocol web, entah itu http atau https, ini berfungsi ketika anda mengarahkan atau melakukan redirect ke protokol tertentu. Dengan ini pemanggilan asset seperti css, js, dan gambar tidak akan mengalami error atau mendapatkan warning dari browser.
- Meminimalisir konfigurasi saat upload ke hosting atau pada saat merubah nama folder dari projek.
Peringatan :
Khusus untuk Codeigniter 4, dynamic base url tidak bisa digunakan ketika anda menjalankan aplikasi melalui local development PHP Spark Serve. Karena akan terjadi error.
Khusus untuk Codeigniter 4, dynamic base url tidak bisa digunakan ketika anda menjalankan aplikasi melalui local development PHP Spark Serve. Karena akan terjadi error.
Demikian tutorial konfigurasi base URL secara dinamis di Codeigniter 4.x. Semoga artikel ini dapat membantu anda.