İçeriğe geç

CodeIgniter index.php Kaldırma

CodeIgniter en sevdiğim Framework. Çünkü kullanımı çok basit ve herhangi ekstra bir araç veya önyükleyiciye ihtiyaç duymuyor olması..!

CodeIgniter’a yeni başlayanların en büyük sorunlarından bir tanesi de index.php dosyasını adres satırından kaldırmak. Adres satırında; çok kötü bir görüntüye sebebiyet veriyor.

index.php dosyasını kaldırmanın birden fazla yöntemi var. Bu yöntemler de .htaccess ile gerçekleştiriliyor.

CodeIgniter’ın kendi sayfasında bu yöntemin nasıl gerçekleştirileceği detaylı olarak anlatılmış. Fakat bu yöntem; genel bir kullanım için. Yani herkesin kullandığı düzgün yapılandırılmış bir server ortamı içindir. Fakat bazen buradaki kodlarla çalışırken; hata aldığınızı veya index.php’in kaldırılamadığını gözlemleyebilirsiniz. Bu da tabi ki kullandığınız hosting sağlayıcı veya server tarafından kaynaklanıyor.

CodeIgniter’ın kendi sayfasındaki index.php kaldırma yöntemini buradan inceleyebilirsiniz.

index.php kaldırma, .htaccess ile yapılıyor dedik. Öncelikli olarak; projenizin kök dizininde; .htaccess adında bir dosya oluşturmalısınız.

Aşağıda tipik bir proje dizini yer almaktadır. Aynı zamanda .htaccess konumlandırılmasını da göstermektedir.

project-name/
--- application/
--- system/
--- user_guide/
--- index.php
--- .htaccess

Farklı ortamlar için de bir çok seçenek mevcuttur dedik. Bu seçenekler aşağıdaki gibidir.

I. Yöntem:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

II. Yöntem:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?$1 [L]

III. Yöntem:

Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

IV. Yöntem:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /project-name/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /project-name/index.php [L]
</IfModule>

Önemli: IV. Yöntem kısmında; project-name yazan yere, kendi projenizin adını yazmanız gerekiyor.

Önemli: I. Yöntem kısmında, CodeIgniter sitesinde belirtilen index.php kaldırma yöntemi. Fakat bunu kullanmaktan kaçınmanızı ve II. Yöntemi kullanmanızı tavsiye ederim. Genellikle; her yerde çalışan ve en az sıkıntısız satırlar, II. Yöntem satırlarıdır.

.htaccess dosyamızı düzenledikten sonra; küçük bir değişiklik daha yapmamız lazım.

Öncelikli olarak; application/config dosyası içerisindeki, config.php dosyasını açalım.

Aşağıdaki satırı bulalım (38. satır).

$config['index_page'] = 'index.php';

Yukarıdaki satırı aşağıdaki gibi değiştirelim ve dosyayı kaydedelim.

$config['index_page'] = '';

Yukarıdaki işlemlerimizden sonra; index.php dosyası adres satırından kaldırılacaktır.

Saygı ve muhabbetle!..

Bu içeriği paylaşmak ister misiniz?

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Buradaki içeriklerin tümü kamu malıdır. Kullanılması ve paylaşılması özgürdür.