Arif

WFN Üye
Konular
705
Mesajlar
705
Çözüm
0
Ticaret Puanı
0
Üyelik
24 Gün
Konum
Bilecik
Web Sitesi
Var
Alanı
SEO Uzmanı
1/1
Konu sahibi
PHP’de boş sayfa genellikle betiğin hata verip çıktıyı tamamlayamaması veya hatanın ziyaretçiye gösterilmemesi nedeniyle oluşur. Önce aynı isteğin HTTP durum kodunu ve PHP hata günlüğünü kontrol edin; ardından bulunan hatayı ilgili dosya ve satırda düzeltip sayfayı yeniden deneyin. Geliştirme ortamında hatayı geçici olarak ekranda gösterebilirsiniz, ancak canlı sitede ayrıntıları ziyaretçilere açmayın; bunun yerine günlük kaydını kullanın. PHP ayarları, hataların raporlanıp raporlanmadığını, ekranda gösterilip gösterilmediğini ve günlüğe yazılıp yazılmadığını ayrı ayrı belirler.

Önce hatanın nerede olduğunu bulun​


Sayfayı yeniden yükleyip tarayıcının geliştirici araçlarında Ağ/Network bölümünden ilgili isteği seçin ve HTTP durum koduna bakın. 500 yanıtı sunucu tarafında bir hata olabileceğini düşündürür; ancak tek başına PHP’nin hatalı olduğunu kanıtlamaz. 200 yanıtı da betiğin doğru içerik ürettiğini göstermez: uygulama boş içerik döndürmüş olabilir. PHP hata günlüğünü, web sunucusunun hata günlüğünü ve isteğin yanıt gövdesini birlikte değerlendirin.

Hata günlüğünde son yenileme saatiyle eşleşen hata iletisinde dosya adı ve satır numarası varsa, önce o satırı ve hemen öncesindeki kodu inceleyin. Parse error genellikle sözdizimi sorununa; Fatal error ise durdurucu bir çalışma zamanı sorununa işaret eder. İleti bulunamıyorsa günlüğün doğru PHP sürümüne ve kullanılan çalıştırma ortamına ait olduğundan emin olun: komut satırındaki PHP ile web sunucusunun kullandığı PHP sürümü veya yapılandırması farklı olabilir.

Hata mesajını geliştirme ortamında görünür yapın​


Yalnızca yerel veya erişimi kısıtlı geliştirme ortamında, isteği karşılayan PHP giriş dosyasının en başına—boşluk, HTML veya çıktı üreten başka bir ifade öncesine—geçici olarak şunu ekleyin:

PHP:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');

Sayfayı yeniden yükleyin. Ekranda hata belirirse, iletideki dosya ve satır numarasını kullanarak ilgili kodu düzeltin; sonra aynı isteği yeniden çalıştırın. Hata mesajı görünmüyorsa bu, hata olmadığı anlamına gelmez: PHP başlatılırken oluşan bazı sorunlar bu kod çalışmadan önce meydana gelebilir veya sunucu yapılandırması ayarların betikten değiştirilmesine izin vermeyebilir. Bu durumda PHP ve web sunucusu günlüklerini inceleyin; gerekiyorsa sunucu yöneticisinden, sorunun oluştuğu zaman aralığına ait ilgili hata kayıtlarını isteyin.

Hata ayrıntılarını canlı sitede ekrana yazdırmayın. Dosya yolları, sorgular veya yapılandırma bilgileri açığa çıkabilir. Canlı ortamda görüntülemeyi kapalı tutup günlük kaydını etkinleştirin; günlük dosyasını web üzerinden erişilemeyen, yazma izni yalnızca gerektiği kadar kısıtlanmış bir yerde saklayın. Geçici tanılama kodunu sorun giderildikten sonra kaldırın. PHP, geliştirme ortamında hataları göstermeyi; üretim ortamında ise ayrıntıları günlüğe kaydedip ziyaretçiden gizlemeyi önerir.

Belirtiye göre düzeltmeyi seçin​


Birden fazla olasılık varsa, günlükteki hata iletisi en iyi başlangıç noktasıdır. Aşağıdaki belirtiler, neyi kontrol edeceğinizi ve sonucunu nasıl yorumlayacağınızı ayırır.
BulguNe anlatır?Sonraki işlem
Günlükte dosya ve satır numarası bulunan PHP hatasıİstek sırasında bir PHP hatası kaydedilmiştir; nedeni iletiye göre değişir.Belirtilen satırı ve ilgili kodu düzeltip isteği yeniden deneyin.
PHP hatası yok, yanıt 500Sunucu hatası olabilir; PHP günlüğünde bulunmayan bir web sunucusu veya uygulama katmanı sorunu da mümkündür.Web sunucusu günlüğünü, aynı zamandaki kaydı ve yanıt başlıklarını inceleyin.
Yanıt 200, içerik boşİstek başarılı durum kodu almıştır; uygulama boş çıktı üretmiş veya çıktı daha sonra temizlenmiş olabilir.Kodun gerçekten çalıştığını, koşul ve dönüş dallarını, yönlendirmeyi ve çıktı tamponlamayı kontrol edin.
Ekranda hata yok, günlükte kayıt varHata ziyaretçiden gizlenirken günlüğe yazılıyor olabilir.Günlükteki iletiyi düzeltme için kullanın; canlı sitede hatayı göstermeyi açmayın.
Günlükte hata varsa önce en son kaydı inceleyin; eski veya başka bir isteğe ait bir hata, boş sayfanın nedeni olmayabilir. Hata yoksa kodun ilgili sayfa isteğinde çalışıp çalışmadığını ve çıktı üretmesi gereken koşulun sağlanıp sağlanmadığını kontrol edin. Giriş dosyasına geçici olarak basit bir tanı çıktısı eklemek, kodun o noktaya ulaşıp ulaşmadığını anlamaya yardımcı olabilir; ancak çıktının HTML’den veya başlıklardan önce üretilmesi gerektiğini ve sonrasında kaldırılmasını unutmayın.

Düzeltme sonrasında yalnız sayfanın açıldığını değil, doğru içeriği döndürdüğünü de kontrol edin. Sorun sürüyorsa barındırma desteğine alan adı ve etkilenen sayfa yolu, sorunun oluştuğu yaklaşık zaman ve saat dilimi, HTTP durum kodu, kullanılan PHP sürümü ve hassas bilgiler çıkarılmış hata iletisiyle başvurun. Parola, oturum çerezi, erişim anahtarı veya kişisel veri içeren günlükleri paylaşmayın; destekten aynı isteğe ait sunucu/PHP hata kaydını ve kullanılan PHP yapılandırmasını kontrol etmesini isteyin.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Foruma git ?

Bu konuyu görüntüleyen kullanıcılar

Bu konuyu şu anda görüntüleyen üye bulunmuyor.
Robotlar:
  • Anthropic