HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
Blog

Cara Menggunakan .htaccess di CodeIgniter Dengan Mudah

Dalam pengembangan aplikasi web menggunakan CodeIgniter, pengaturan URL yang bersih dan keamanan server adalah hal yang penting. Salah satu cara untuk mencapai ini adalah dengan menggunakan file .htaccess. File ini adalah konfigurasi berbasis Apache yang dapat mengatur perilaku server di direktori tertentu, tanpa mengubah pengaturan utama Apache. Dengan .htaccess, developer dapat menghapus index.php dari URL, membuat URL lebih SEO-friendly, mengatur redirect, serta meningkatkan keamanan aplikasi.

Apa Itu .htaccess?

.htaccess adalah file konfigurasi yang ditempatkan di server web Apache. Fungsinya meliputi:

  • Mengatur redirect URL

  • Menghapus index.php dari URL CodeIgniter

  • Melindungi folder dengan password

  • Mengaktifkan caching dan kompresi file

  • Membatasi akses berdasarkan IP

Dalam konteks CodeIgniter, .htaccess biasanya digunakan untuk membuat URL lebih bersih dan mempermudah routing, sehingga aplikasi lebih profesional dan mudah diindeks mesin pencari.

Default .htaccess CodeIgniter

1. CodeIgniter 3

Pada CI3, file .htaccess biasanya diletakkan di root folder. Contoh default .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# Hilangkan index.php dari URL
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>

Penjelasan:

  • RewriteEngine On → Mengaktifkan modul rewrite.

  • RewriteBase / → Menentukan base URL.

  • RewriteCond %{REQUEST_FILENAME} !-f → Melewatkan file yang ada.

  • RewriteCond %{REQUEST_FILENAME} !-d → Melewatkan folder yang ada.

  • RewriteRule ^(.*)$ index.php/$1 [L] → Semua request diarahkan ke index.php.

2. CodeIgniter 4

CI4 menggunakan struktur folder baru, sehingga .htaccess diletakkan di folder public/.

<IfModule mod_rewrite.c>
Options -Indexes
RewriteEngine On
RewriteBase /

# Pastikan file dan folder tetap dapat diakses
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

# Arahkan semua request ke index.php
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

Perbedaan utama:

  • CI4 menekankan folder public sebagai entry point.

  • Options -Indexes mencegah listing direktori.

  • Struktur routing lebih fleksibel sesuai standar CI4.

Manfaat Menggunakan .htaccess di CodeIgniter

  1. Menghilangkan index.php
    URL lebih bersih dan profesional. Contoh:

    https://domain.com/blog → lebih baik daripada → https://domain.com/index.php/blog
  2. Meningkatkan SEO
    URL bersih lebih mudah diindeks oleh mesin pencari.

  3. Keamanan

    • Memblokir akses folder tertentu.

    • Mencegah directory listing.

    • Bisa membatasi akses IP tertentu.

  4. Redirect dan Rewrite
    Bisa mengarahkan URL lama ke URL baru tanpa mengubah kode aplikasi.

Tips Praktis Menggunakan .htaccess di CodeIgniter

  • Selalu backup .htaccess sebelum mengubah konfigurasi.

  • Gunakan RewriteBase / sesuai lokasi aplikasi.

  • Uji konfigurasi pada server lokal sebelum deploy.

  • Kombinasikan dengan HTTPS dan HSTS untuk keamanan tambahan.

  • Untuk shared hosting, pastikan mod_rewrite Apache aktif.

Kesimpulan

File .htaccess adalah alat penting dalam pengembangan aplikasi CodeIgniter, baik versi 3 maupun 4. Dengan pengaturan yang tepat, URL aplikasi menjadi bersih, SEO-friendly, dan server lebih aman. Meskipun sederhana, penggunaan .htaccess dapat memberikan dampak besar terhadap performa dan profesionalitas website. Selalu sesuaikan konfigurasi .htaccess dengan versi CodeIgniter dan kebutuhan server agar hasilnya optimal.

5/5 - (1 vote)
Fitri Ana

Recent Posts

Domain Driven Design (DDD): Cara Mengatasi Kompleksitas dalam Software

Dalam pengembangan aplikasi, masalah yang dihadapi developer tidak selalu berkaitan dengan kode atau teknologi. Semakin…

1 day ago

Kenali Terraform: Cara Mengelola Infrastruktur Lebih Cepat dan Konsisten

Mengelola infrastruktur secara manual dapat menjadi semakin rumit ketika jumlah server, jaringan, database, storage, dan…

2 days ago

SAN (Storage Area Network): Solusi Storage untuk Server dengan Kebutuhan Tinggi

Ketika kebutuhan penyimpanan data semakin besar, perusahaan tidak selalu dapat mengandalkan hard disk atau SSD…

2 days ago

CAP Theorem: Konsep Penting yang Menentukan Cara Database Menghadapi Gangguan

Dalam sistem database modern, data sering kali tidak hanya disimpan pada satu server. Untuk meningkatkan…

2 days ago

Kelebihan dan Kekurangan Browser dengan VPN

Browser dengan VPN menjadi salah satu pilihan bagi pengguna yang ingin menambah perlindungan privasi ketika…

2 days ago

Apa Itu OKR? Begini Cara Mengubah Target Bisnis Menjadi Hasil yang Terukur

Dalam bisnis digital, memiliki banyak target belum tentu membuat perusahaan bergerak ke arah yang sama.…

2 days ago