Cara Membuat Base URL Dinamis di CodeIgniter

Cara Membuat Base URL Dinamis di CodeIgniter

Diperbaharui 5 Agustus 2020 12:54 AM

Pada artikel kali ini kita akan belajar bagaimana cara membuat base url dinamis di codeigniter dan cara menghilangkan index.php di codeigniter. Mungkin bagi para pengguna baru framework yang satu ini akan sedikit risih seperti kurang enak dipandang dengan adanya index.php yang wajib ada ketika akan pindah ke controller lain, ternyata itu bisa dihilangkan jika kamu tahu caranya, youman. Kemudian kamu akan terasa ribet ketika haarus mengganti base_url setiap mengganti nama folder yang akan digunakan, karena harus mengganti juga base_url sesuai dengan nama folder yang digunakan. Berikut adalah solusi untuk mengatasi kedua masalah tersebut, langsung saja disimak tutorialnya dari awal sampai akhir.

Cara Membuat base_url Dinamis di CodeIgniter

Jika kamu membaca artikel CodeIgniter #1 : Tutorial Dasar Menggunakan CodeIgniter dan kamu ganti nama folder yang awalnya ci-3 menjadi belajarci maka ketika mengaksesnya di browser tidak akan terbaca.

Kenapa project codeigniter itu tidak terbaca saat diakses? Karena e karena pada konfigurasi base_url dideklarasikan dengan link yang statis seperti pada code di bawah :

$config['base_url'] = 'http://ci-3.test/';

Bagaimana agar base_url menjadi dinamis alias ketika kamu mengganti nama folder maka link akan tetap bisa diakses, berikut adalah cara membuat baseurl menjadi dinamis.

Buka application/config/config.php dan ubah baris $config[‘base_url’] menjadi code di bawah ini :

$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://".$_SERVER['HTTP_HOST'];
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']), "", $_SERVER['SCRIPT_NAME']);

Maka secara otomatis ketika kamu mengganti nama folder akan tetap terbaca.

Cara Menghilangkan index.php di CodeIgniter

Jika kamu mengikuti tutorial sebelumnya ketika ingin mengakses halaman login link yang digunakan adalah http://ci-3.test/index.php/home/login, terdapat index.php yang membuat tidak enak untuk dipandang. Bagaimana cara menghilangkan index.php di codeignier? Apakah bisa? O tentu saja, berikut adalah cara menghilangkah index.php.

Buka application/config/config.php dan hapus index.php pada $config[‘index_page’] sehingga menjadi seperti code berikut :

$config['index_page'] = '';

Buat file baru dengan nama .htaccess di folder awal dan masukkan code berikut :

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine on

    # Send request via index.php (again, not if its a real file or folder)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    <IfModule mod_php5.c>
            RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>                                     

    <IfModule !mod_php5.c>
            RewriteRule ^(.*)$ index.php?/$1 [L]
    </IfModule>
</IfModule> 

Maka tidak perlu menyertakan index.php lagi untuk mengakses halaman login dan halaman lainnya.

Itulah artikel cara membuat base url dinamis di codeigniter dan menghilangkan index.php di codeigniter yang dapat saya sampaikan, semoga bermanfaat.

susantokun avatar
susantokun
Lahir di Bumi ini atas perjuangan Ayah dan Ibu yang senantiasa membuat dan mengeluarkan sehingga lahirlah Susanto pada tanggal 27 Maret 1996 di Cianjur - Jawa Barat.
Kebijakan Berkomentar :
  • Dilarang berkomentar yang mengandung SPAM, SARA, HOAX, PORNO.
  • Mohon sertakan informasi detail saat terjadi error (pesan error, sreenshoot, code, logs, dsb.).
Silakan baca terlebih dahulu kebijakan berkomentar sebelum berkomentar.
KOMENTAR TERBARU