CodeIgniter‘da ilk kurulumdan sonra oluşturduğumuz controller elemanlarına ulaşırken “index.php” ibaresini kullanmak zorunda kalıyoruz.
Örn. http://127.0.0.1/codeigniter/index.php/controller-adi
Bu yapıyı http://127.0.0.1/codeigniter/controller-adi biçimine dönüştürmek istiyorsak bazı düzenlemeler yapmamız gerekli.
WampServer’ı baz alarak anlatırsak yapılması gereken işlemler şunlar:
1. Öncelikle Apache içinde bulunan httpd.conf’tan “rewrite_module” aktif hale getirilmelidir. (X:\wamp\bin\apache\Apache2.2.21\conf\httpd.conf)
Aktifleştirmek için #LoadModule rewrite_module modules/mod_rewrite.so satırının başındaki (varsa) # işaretini kaldırın. Ardından aynı dosya içerisinde “” kısmını bulun ve bu satırın biraz altındaki AllowOverride kısmının değerini “all” olarak değiştirin. Tüm bu işlemleri tamamladıktan sonra sunucunuzu yeniden başlatın.
2. CodeIgniter dosyalarınızı barındırdığınız klasör içerisinde (X:\wamp\www\projem) .htaccess isimli bir dosya oluşturun ve aşağıdaki satırları içerisine yazıp kaydedin:
RewriteEngine on RewriteCond $1 !^(index\.php|resources|robots\.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L,QSA]
3. Config dosyasından (X:\wamp\www\projem\application\config\config.php) “index_page” özelliğine karşılık gelen değeri silin.
$config['index_page'] = '';
Artık yazdığınız controller elemanlarına “http://127.0.0.1/codeigniter/controller-adi” formatında ulaşabilirsiniz.