Saya menggunakan CI 2.1.0, untuk menghilangkan index.php cukup membuat file .htaccess dengan isian:

RewriteEngine on
RewriteRule ^(.*)$ index.php [L]
RewriteCond $1 !^(index.php)
RewriteRule ^(.*)$ index.php/$1 [L]

save pada folder root Anda, contoh C:\xampp\htdocs\belajar-ci\.htaccess

lalu pada file application\config\config.php ubah bagian

$config[‘index_page’] = ‘index.php’;  -> $config[‘index_page’] = ”;

Selesai sudah, index.php tidak akan muncul ketika mengakses web CI Anda pada browser, jika belum sukses juga coba untuk merestart Apache nya.