KNOWLEDGE_BASE

Web Sitelerinde 500 Internal Server Hatası ve Kesin Çözüm Yolları (error_log Dosyası ile Adım Adım)

Kapak

500 Internal Server Error Nedir ve Neden Korkmamalısınız?

Web sitenizi ziyaret ettiğinizde beyaz bir sayfada veya tarayıcı ekranında beliren "500 Internal Server Error" (500 Dahili Sunucu Hatası), webmasterların en sık karşılaştığı HTTP durum kodlarından biridir.

Bu hata, web sunucusunun (Apache veya LiteSpeed) ziyaretçinin isteğini yerine getirmek istediğini ancak sunucu tarafındaki bir kod, eklenti veya yapılandırma çakışması yüzünden işlemi tamamlayamadığını belirtir. Korkmanıza gerek yok: Bu durum web sitenizin veya veritabanınızın silindiği anlamına gelmez; genellikle ufak bir PHP hatası ya da hatalı bir satır koddan kaynaklanır.

🔍 1. ve En Kritik Adım: error_log Dosyasını Kontrol Edin (Hatanın Röntgeni)

500 hatasını çözmeye çalışırken yapılan en büyük hata, sitenin dosyalarını rastgele kurcalamak veya rastgele eklentileri silmektir. Oysa sunucunuz, siteniz çöktüğü anda hatanın hangi dosyanın, kaçıncı satırında meydana geldiğini saniyesi saniyesine error_log dosyasına kaydeder!

cPanel Üzerinden error_log Dosyasına Nasıl Bakılır?

  1. NeferHost Müşteri Paneli > Hosting Yönetimi sayfasına gidin.
  2. İlgili hosting paketinizin YÖNET modalini açıp Hızlı Erişim butonlarından "Dosya" (cPanel Dosya Yöneticisi) butonuna tıklayın.
  3. Web sitenizin ana dizini olan public_html klasörünü açın.
  4. Klasörün içindeki error_log dosyasını bulun, sağ tıklayıp "View" (Görüntüle) veya "Edit" deyin.
  5. Dosyanın en altındaki (en güncel tarihli) satırlara bakın.

[13-Oct-2026 19:40:12 UTC] PHP Fatal error: Uncaught Error: Call to undefined function wp_get_theme() in /home/user/public_html/wp-content/themes/ozel-tema/functions.php on line 42

Yukarıdaki örnekte görüldüğü gibi log satırı size suçlunun ozel-tema içerisindeki functions.php dosyasının 42. satırı olduğunu anında söyler!

Adım 2: Hatalı .htaccess Dosyasını Test Edin (%60 En Yaygın Sebep)

Apache ve LiteSpeed sunucularında .htaccess dosyasında yapılan en ufak bir yazım hatası, eksik bir modül yönergesi veya desteklenmeyen yönlendirme kuralı tüm sitenin anında 500 hatası vermesine sebep olur.

  • Dosya Yöneticisi'nde public_html/.htaccess dosyasını bulun. (Eğer görünmüyorsa Dosya Yöneticisi sağ üstteki Ayarlar > "Gizli Dosyaları Göster / Show Hidden Files" seçeneğini açın).
  • Dosyanın adını geçici olarak .htaccess_yedek olarak değiştirin.
  • Tarayıcınızdan sitenizi yenileyin.
  • Eğer site açıldıysa: Sorun kesinlikle .htaccess dosyanızdaki hatalı bir kuraldır. Yeni ve temiz bir .htaccess oluşturup aşağıdaki standart WordPress kurallarını yapıştırarak kaydedin:
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
                

Adım 3: PHP Bellek Limitini (memory_limit) Artırın

E-ticaret siteleri (WooCommerce), sayfa oluşturucular (Elementor) veya yoğun veritabanı sorguları çalıştıran sistemler sunucunun izin verdiği varsayılan 128 MB RAM limitini tüketebilir. Limit aşıldığında sistem Fatal error: Allowed memory size of ... bytes exhausted hatası vererek 500 döner.

  1. cPanel hesabınıza giriş yapın ve Yazılım > MultiPHP INI Editor menüsünü açın.
  2. Alan adınızı seçip memory_limit değerini 256M veya 512M olarak güncelleyin ve kaydedin.
  3. WordPress kullanıyorsanız wp-config.php dosyasını açıp /* That's all, stop editing! */ satırından hemen önce şu kodu ekleyin:
define('WP_MEMORY_LIMIT', '256M');

Adım 4: PHP Sürüm Uyumsuzluğunu Kontrol Edin

Sitenizde kurulu olan eski bir tema veya eklenti, sunucudaki güncel PHP 8.2 veya 8.3 sürümünde kaldırılmış fonksiyonları çağırıyor olabilir (Örn: each(), create_function() vb.).

  • cPanel üzerinden Select PHP Version veya MultiPHP Manager sekmesine girin.
  • PHP sürümünü geçici olarak PHP 8.1 veya PHP 8.0 olarak değiştirin.
  • Siteyi yenileyip kontrol edin. Siteniz açılıyorsa sorunlu eklentinizi güncelleyin ve ardından PHP sürümünüzü tekrar yüksek performansa (PHP 8.3) çekin.

Adım 5: WordPress Eklenti ve Tema Çakışmalarını Tespit Edin

WordPress yönetim paneline dahi giremiyorsanız (Beyaz Ekran / 500 Hatası):

  1. cPanel Dosya Yöneticisi ile public_html/wp-content/ klasörüne gidin.
  2. plugins klasörünün adını geçici olarak plugins_deaktif yapın. Bu işlem tüm eklentileri güvenli şekilde devre dışı bırakır.
  3. Sitenizi yenileyin. Eğer açılırsa, klasörün adını tekrar plugins yapın ve içindeki eklentilerin adını tek tek değiştirerek hangi eklentinin siteyi çökerttiğini kolayca bulun.

Adım 6: Dosya ve Dizin İzinlerini (Permissions) Denetleyin

Linux tabanlı web sunucularında güvenlik kuralları oldukça katıdır. Güvenlik nedeniyle:

  • Tüm klasörlerin izinleri 755 olmalıdır.
  • Tüm dosyaların izinleri 644 olmalıdır.
  • Önemli: Asla bir klasöre veya dosyaya 777 izni vermeyin! LiteSpeed ve suPHP güvenlik motorları 777 izni verilmiş dosyaları çalıştırmayı reddeder ve güvenlik koruması olarak doğrudan 500 hatası üretir.

💡 WordPress Hata Ayıklama (WP_DEBUG) Modu

Beyaz ekranda hatanın tam metnini yakalamak için wp-config.php içerisindeki define('WP_DEBUG', false); satırını şu şekilde değiştirin:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
                    

Bu ayar ziyaretçilere hata göstermez, ancak tüm detayları wp-content/debug.log dosyasına yazar.

Sorun Hala Çözülmedi mi?

Yukarıdaki tüm adımlara rağmen siteniz hala 500 veriyorsa endişelenmeyin! NeferHost 7/24 Teknik Destek Ekibi yanınızda. Müşteri panelinizden bir destek bileti (ticket) açarak alan adınızı belirtmeniz yeterlidir; mühendislerimiz sunucu seviyesindeki LiteSpeed ve Apache hata kayıtlarını inceleyerek sorununuzu en kısa sürede çözecektir.

Yapay Zeka & Okuma Araçları
Akıllı Araçlar

Bu makalenin tamamını tek tıkla panoya kopyalayabilir veya tercih ettiğiniz yapay zeka asistanına göndererek anında yönetici özeti, önemli çıkarımlar veya derinlemesine analiz hazırlatabilirsiniz.

Bu Makaleden Öne Çıkan Başlıklar & Özet

  • Siteniz aniden '500 Internal Server Error' mu verdi? Körlemesine tahmin etmek yerine error_log dosyasını okuyarak satır bazlı hata tespiti yapma, .htaccess onarımı ve PHP bellek limiti çözümleri.
  • 500 Internal Server Error Nedir ve Neden Korkmamalısınız?
  • 🔍 1. ve En Kritik Adım: error_log Dosyasını Kontrol Edin (Hatanın Röntgeni)
  • Adım 2: Hatalı .htaccess Dosyasını Test Edin (%60 En Yaygın Sebep)
  • Adım 3: PHP Bellek Limitini (memory_limit) Artırın
💡 Özel sorularınız veya derin analiz için yukarıdaki Flexable, ChatGPT veya Claude butonlarını kullanabilirsiniz.

WRITTEN BY

NeferHost Bilişim

Bizden Haberdar Olun

NeferHost'un yeni kampanya, duyuru ve makalelerinden ilk siz haberdar olun!

Yorumlar (0)

İlk yorumu siz yapın!

Bir Yorum Bırakın