Allowed Memory Size Exhausted Hatası Nasıl Çözülür (PHP, cPanel)

Son doğrulama: Ekim 2026 · panel adımları cPanel 136 test hesabında denendi, ayar tanımları PHP resmî belgesine göre

Hızlı çözüm

Fatal error: Allowed memory size of 134217728 bytes exhausted iletisi, bir PHP isteğinin kendisine ayrılan belleği doldurduğunu gösterir. Allowed memory size exhausted hatası memory_limit değeri büyütülerek ya da belleği tüketen eklenti bulunarak çözülür.

  1. cPanel → Yazılım → MultiPHP INI Düzenleyicisi sayfasını açın.
  2. Alan adınızı seçin, memory_limit satırını 256M yapın ve Uygula düğmesine basın.
  3. Hata veren sayfayı yeniden açın.
  4. Hata daha büyük bir sayıyla sürüyorsa değeri artırmayı bırakıp belleği tüketen eklentiyi arayın.
Panel cPanel (Jupiter)
Sistem Paylaşımlı hosting (CloudLinux), PHP 5.6–8.4
Yetki cPanel kullanıcısı
Narhost ürünü Web Hosting, WordPress Hosting, Kurumsal Hosting

Başlamadan önce

  • Hata iletisinin tamamını kopyalayın. Sondaki dosya yolu (in /home/kullanici/public_html/wp-content/plugins/…) belleği dolduran bileşeni gösterir.
  • Hatanın hangi işlemde çıktığını not edin: her sayfada mı, yalnız içe aktarma, görsel yükleme ya da rapor alma sırasında mı.
  • İletideki sayıyı okuyun: 134217728 bayt 128 MB, 268435456 bayt 256 MB, 536870912 bayt 512 MB’tır.

Allowed memory size exhausted neden olur

PHP, tek bir isteğin kullanabileceği belleği memory_limit ayarıyla sınırlar; amaç hatalı bir betiğin sunucunun bütün belleğini tüketmesini önlemektir. Ayarın tanımı PHP’nin çekirdek ayarlar belgesinde yer alır. İstek bu sınırı aştığında PHP betiği durdurur ve ölümcül hata verir.

Sınırın aşılmasının iki türü vardır. Birincisinde iş gerçekten çok bellek ister: büyük bir görselin yeniden boyutlandırılması, binlerce satırlık ürün dosyasının içe aktarılması, uzun bir raporun üretilmesi. Burada değeri büyütmek doğru çözümdür. İkincisinde bir eklenti ya da tema hatalıdır ve ne kadar bellek verilirse o kadarını tüketir; iletideki sayı her artırmada büyür ama hata sürer. Burada çözüm değeri büyütmek değil, bileşeni bulmaktır.

Adım adım memory_limit değerini büyütme

  1. cPanel → Yazılım → MultiPHP INI Düzenleyicisi sayfasını açın ve “Temel Mod” sekmesinde açılır listeden alan adınızı seçin.
    allowed memory size exhausted hatası için cPanel MultiPHP INI Düzenleyicisi sayfası
    Temel Mod sekmesinde alan adı seçildikten sonra memory_limit satırı listede görünür.

    Beklenen sonuç: seçilen alan adının PHP ayarları satır satır listelenir.

  2. memory_limit satırındaki değeri 256M olarak değiştirin. Sonuna M yazmayı unutmayın; yalnız sayı yazılırsa PHP değeri bayt olarak okur ve site açılmaz.
  3. Uygula düğmesine basın. Değişiklik birkaç saniye içinde etkin olur; sunucuyu ya da siteyi yeniden başlatmak gerekmez.

    Beklenen sonuç: sayfanın üstünde ayarların kaydedildiğini bildiren yeşil ileti.

  4. Hata veren işlemi yeniden deneyin. Hata kaybolduysa iş bitmiştir. İletideki sayı 268435456 olarak değiştiyse yeni sınır da dolmuş demektir; bir kez daha 512M deneyin, sonra durun.

Dikkat

memory_limit değerini -1 (sınırsız) yapmayın. Hesabınızın toplam belleği paketinize göre 1 GB ile 6 GB arasında sınırlıdır; tek bir istek bu belleğin tamamını tüketirse bütün siteniz kaynak sınırı hatasına düşer.

Belleği tüketen bileşeni bulma

  1. cPanel → Ölçümler → Hatalar sayfasında hatanın son satırlarını okuyun. Dosya yolundaki plugins/ ya da themes/ klasöründen sonraki ad sorunlu bileşendir.
    cPanel Hatalar sayfası — son PHP hata satırları
    Hatalar sayfası son hata satırlarını gösterir; dosya yolu sorunlu bileşeni işaret eder.
  2. O eklentiyi kapatıp işlemi yeniden deneyin. Yönetim paneline giremiyorsanız Dosya Yöneticisi’nde eklentinin klasör adını değiştirmek onu devre dışı bırakır. Sırayla deneme yöntemi sorunlu eklenti nasıl bulunur kartında.
  3. İşi parçalara bölün. Hata içe aktarma ya da toplu işlem sırasında çıkıyorsa dosyayı daha küçük parçalara ayırın; bellek ihtiyacı satır sayısıyla birlikte düşer.

Doğrulama

Sonuç

WordPress kullanıyorsanız Araçlar → Site Sağlığı → Bilgi → Sunucu bölümündeki “PHP bellek sınırı” satırı yeni değeri göstermelidir. Başka bir yazılımda public_html içine geçici bir bilgi.php dosyası açıp içine <?php phpinfo(); yazın, tarayıcıda açıp memory_limit satırını okuyun ve dosyayı hemen silin.

Hâlâ çözülmediyse

  • Panelde değer değişti ama site eski değeri gösteriyor. Klasördeki .user.ini ya da wp-config.php içindeki bir satır ayarı eziyordur; ayrıntı WordPress bellek limiti artırma kartında.
  • Hata kayboldu ama site 508 veriyor. İstek başına sınır değil, hesabın toplam belleği dolmuştur; 508 kaynak sınırı hatası kartına bakın.
  • MultiPHP INI Düzenleyicisi’nde satır yok. Gelişmiş ayarlar için cPanel php.ini ayarları kartındaki Düzenleyici Modu’nu kullanın.

Narhost desteği

Talebe şunları ekleyin: alan adı, hata iletisinin tamamı (dosya yolu ve satır numarasıyla), hatanın çıktığı işlem, denediğiniz memory_limit değerleri.

Destek talebi aç

Sıkça sorulan sorular

134217728 bytes ne kadar bellek eder?

128 MB eder ve PHP’nin en yaygın varsayılan sınırıdır. İletideki sayıyı 1.048.576’ya bölerek megabayta çevirebilirsiniz; 268435456 bayt 256 MB’tır.

memory_limit değerini en fazla kaç yapabilirim?

Panel büyük değerleri kabul eder, ama gerçek üst sınır hesabınızın toplam belleğidir. Çoğu site için 256 MB yeterlidir; yoğun içe aktarma işleri için 512 MB denenir. Daha fazlası gerekiyorsa sorun büyük olasılıkla hatalı bir bileşendir.

Değeri büyütmek siteyi yavaşlatır mı?

Hayır. Bu değer ayrılan değil, izin verilen en yüksek bellektir; istek ihtiyacı kadarını kullanır. Risk hız değil, hatalı bir betiğin daha fazla bellek tüketip hesabın toplam sınırına dayanmasıdır.

Bu makale sorununuzu çözdü mü?

Çözemediniz mi?

Teknik ekibimiz sunucu tarafındaki ayarları sizin için kontrol edebilir. Destek talebinizde alan adınızı ve aldığınız hata metnini paylaşmanız süreci hızlandırır.

İlgili çözümler