Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi

index.php dosyası nedir?​


index.php, bir PHP uygulamasının belirli bir klasöre ait varsayılan giriş dosyası veya uygulamanın ana başlangıç dosyası olarak kullanılan PHP dosyasıdır. Kullanıcı bir klasör adresini ziyaret ettiğinde sunucu, yapılandırmasına bağlı olarak o klasördeki index.php dosyasını otomatik çalıştırabilir. Ancak her index.php dosyası mutlaka ana sayfa değildir; dosyanın görevi bulunduğu klasöre ve uygulamanın mimarisine göre değişir.

Nasıl çalışır?​


Bir ziyaretçi https://example.com/ adresine girdiğinde sunucu, kök klasördeki varsayılan dosyaları kontrol eder. Bu listede index.php bulunuyorsa dosya PHP yorumlayıcısına gönderilir ve ürettiği HTML yanıtı ziyaretçiye iletilir. PHP kodu tarayıcıya ham hâliyle gönderilmez; tarayıcı genellikle PHP dosyasının çalışması sonucunda oluşan HTML çıktısını alır.

Örneğin kök dizinde şu dosya varsa:

Kod:
<?php
echo 'Merhaba dünya';

Sunucu PHP çalıştırmayı doğru şekilde destekliyorsa ana adres açıldığında sayfada Merhaba dünya görülür. Dosya indiriliyor, PHP kodu ekranda görünüyor veya sunucu hata veriyorsa sorun genellikle dosyanın kendisinden çok PHP çalışma ortamı ya da web sunucusu yapılandırmasıyla ilgilidir.

İki yaygın kullanım biçimi​


Varsayılan dizin dosyası​


Basit bir PHP sitesinde index.php, doğrudan ana sayfanın kodunu içerir. Örneğin /urunler/index.php dosyası, sunucu ayarları uygunsa /urunler/ adresinin açılmasını sağlayabilir.

Front controller yaklaşımı​


Daha büyük uygulamalarda tüm istekler tek bir index.php dosyasından karşılanabilir. Bu dosya, gerekli başlangıç kodunu yükler, gelen adresi veya isteği değerlendirir ve isteği ilgili sınıfa ya da işleyiciye yönlendirir. Modern PHP framework uygulamalarında bu dosya çoğu zaman uygulamanın dışarıya açılan tek giriş noktasıdır.

Aşağıdaki bağımsız örneği yeni bir deneme klasöründe index.php adıyla kaydedin. Composer bağımlılığı gerekmez:

Kod:
<?php
$path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);

if ($path === '/') {
    echo 'Ana sayfa';
} elseif ($path === '/hakkimizda') {
    echo 'Hakkımızda';
} else {
    http_response_code(404);
    echo 'Sayfa bulunamadı';
}

PHP CLI kuruluysa bu klasörde php -S localhost:8000 index.php çalıştırarak dosyayı geliştirme sunucusunun router betiği yapabilirsiniz. Bu sunucu üretim için uygun değildir. / ve /hakkimizda yollarında farklı metin, başka bir yolda HTTP 404 beklenir. Gerçek web sunucusunda aynı sonuç için uygun front controller yönlendirmesi ayrıca gerekir.

Buradaki index.php isteği karşılayan merkezi başlangıç noktasıdır. Gerçek bir projede yönlendirme, şablon ve hata yönetimi genellikle ayrı bileşenlere ayrılır.

Bir index.php dosyasını değerlendirirken neye bakılmalı?​


Dosyanın görevi hakkında karar verirken konumunu ve içeriğini birlikte inceleyin:

  1. Dosyanın hangi klasörde bulunduğunu belirleyin. Kök dizindeki dosya çoğunlukla uygulamanın ana girişidir; alt klasördeki dosya yalnızca o bölüme ait olabilir.
  2. İlk satırlarda başka dosyaların require veya include ile yüklenip yüklenmediğini kontrol edin. Bu, dosyanın başlangıç dosyası mı yoksa doğrudan sayfa mı olduğunu gösterir.
  3. İstek adresinin $_SERVER['REQUEST_URI'] gibi değerlerle okunup okunmadığına bakın. Böyle bir yapı front controller kullanımına işaret edebilir.
  4. Dosyayı silmeden veya yeniden adlandırmadan önce sunucu yönlendirmelerini, ana sayfayı ve uygulamanın diğer girişlerini test edin.

Aynı isimde birden fazla dosya bulunması normaldir. Örneğin /admin/index.php yönetim bölümünün, /api/index.php ise API bölümünün giriş noktası olabilir. Dosya adının aynı olması, bu dosyaların aynı işi yaptığı anlamına gelmez.

Konuma göre beklenen görev​


DurumGörevKontrol
Dizin varsayılan dosyasıKlasör isteğinde çalıştırılmakDirectoryIndex/index sırası ve PHP işleyicisi
Front controllerİsteği uygulama yönlendiricisine vermekWeb sunucusunun router kuralları
Alt modül girişiAdmin veya API başlangıcıKonum, çağrılan dosyalar ve yetkilendirme

Sık yapılan hatalar​


  • Bir klasörde index.php bulunmasını PHP'nin kesinlikle çalıştığı şeklinde yorumlamak: Web sunucusunda PHP desteği etkin değilse dosya beklenen şekilde işlenmez.
  • Dosyanın adını rastgele değiştirmek: Klasör varsayılan dosyası veya uygulama yönlendirmesi bu ada bağlı olabilir.
  • Her index.php dosyasını ana sayfa sanmak: Alt klasörlerdeki dosyalar farklı modüllerin giriş noktaları olabilir.
  • PHP dosyasını tarayıcıda doğrudan açmayı beklemek: PHP kodu bir web sunucusu ve PHP çalışma ortamı üzerinden çalıştırılmalıdır; dosyayı yerel olarak çift tıklamak aynı sonucu vermez.
  • Dosyaya tüm uygulama mantığını doldurmak: Küçük örneklerde kabul edilebilir olsa da büyüyen projelerde yönlendirme, iş mantığı ve görünüm ayrı katmanlara ayrılmalıdır.

Sık sorulan sorular​


index.php dosyasını silersem ne olur?​


Bulunduğu klasörün varsayılan giriş dosyasıysa klasör adresi açılmayabilir veya sunucu ayarına göre başka bir varsayılan dosya denenebilir, dizin listesi gösterilebilir veya erişim hatası dönebilir. Uygulamanın başka bir dosyası tarafından çağrılıyorsa ek olarak başlangıç işlemleri de bozulabilir. Silmeden önce dosyanın yönlendirmelerde ve sunucu yapılandırmasında kullanılıp kullanılmadığını kontrol edin.

index.php yerine index.html kullanılabilir mi?​


Evet, sunucu ilgili klasör için index.html dosyasını varsayılan dosya olarak kullanacak şekilde yapılandırılmışsa kullanılabilir. Ancak PHP kodu çalıştırmak, veritabanına bağlanmak veya dinamik içerik üretmek gerekiyorsa HTML dosyası tek başına index.php yerine geçmez.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.