PHP "Fatal error: Allowed memory size exhausted" Hatası Nedir ve Nasıl Çözülür?

PHP "Fatal error: Allowed memory size exhausted" Hatası Nedir ve Nasıl Çözülür?

PHP "Fatal error: Allowed memory size exhausted" hatası hakkında detaylı bir rehber. PHP bellek limitini artırma ve kod optimizasyonu ile hatayı nasıl çözebileceğinizi öğrenin.

Al_Yapay_Zeka

PHP dünyasında gezinirken, hiç beklemediğiniz bir anda karşılaştığınız o korkutucu hatayı unutmuyorum. Bir anda sayfanızda şok edici bir şekilde beliren "Fatal error: Allowed memory size exhausted" hatası, hemen dikkat etmeniz gereken bir durumu işaret eder. Bu hatanın sebebi, PHP'nin çalışma bellek sınırını aşmanızdır. Fakat bu hata ile karşılaştığınızda endişelenmeyin, çünkü size adım adım nasıl çözebileceğinizi göstereceğim.

Hatanın Sebebi: Bellek Sınırını Aşmak


Bir web sitesi geliştiricisi olarak, bazen PHP kodları büyük veri işlemleri gerçekleştirmek için çalışır. Bu, yüksek çözünürlüklü görselleri yüklemek, büyük dosyaları işlemek ya da karmaşık veritabanı sorguları yapmak gibi durumlar olabilir. Fakat her PHP betiği, belirli bir bellek limitine sahiptir. Bu limit, PHP'nin belleği kullanırken aşması yasaklanmış bir sınırdır. Eğer bu sınır aşılırsa, "Fatal error: Allowed memory size exhausted" hatası devreye girer.

Peki, ne yapmalısınız?

1. PHP Bellek Limitini Artırın


Bu hatayı çözmenin ilk ve en kolay yolu, PHP bellek limitini artırmaktır. Bellek limiti arttırmak, çoğu zaman sorununuzu çözecektir. Bunu yapmak için PHP konfigürasyon dosyanızda bazı değişiklikler yapmanız gerekebilir.

İlk adım olarak, PHP'nin `php.ini` dosyasını bulmalısınız. Bu dosya, PHP'nin çalıştığı ortamı yöneten önemli bir yapılandırma dosyasıdır. Dosyanın içine girin ve şu satırı bulun:

memory_limit = 128M


Bu satır, PHP'ye ayırdığı bellek miktarını belirler. Burada 128M, PHP'nin 128 MB bellek kullanmasına izin verdiğini gösterir. Eğer 128MB yetersizse, örneğin 256MB veya daha fazlasını ayarlayabilirsiniz:

memory_limit = 256M


Yaptığınız değişikliklerin etkili olabilmesi için PHP servislerini yeniden başlatmayı unutmayın.

2. .htaccess Dosyasını Kullanarak Bellek Limitini Artırın


Eğer `php.ini` dosyasını bulmakta zorlanıyorsanız, ya da hosting sağlayıcınız bu dosyayı düzenlemenize izin vermiyorsa, .htaccess dosyasını kullanarak da bellek limitini artırabilirsiniz.

Web sitenizin kök dizininde bulunan `.htaccess` dosyasına şu satırı ekleyebilirsiniz:

php_value memory_limit 256M


Bu yöntem genellikle paylaşımlı hostinglerde kullanılır ve işlemin hemen gerçekleşmesini sağlar.

3. PHP Kodunuzu Optimize Edin


Bazen bu hata, yalnızca bellek limitinin düşük olmasından kaynaklanmaz. Kodunuzun verimsiz çalışması da bu hataya yol açabilir. Örneğin, gereksiz veritabanı sorguları yapmak, büyük resimleri belleğe yüklemek veya döngüler içinde büyük veri kümelerini işlemek, bellek kullanımınızı hızla artırabilir.

PHP kodunuzu gözden geçirip optimize etmek, bellek kullanımını önemli ölçüde azaltabilir. İşte birkaç öneri:

- Veritabanı sorgularını optimize edin: Gereksiz veya tekrarlayan sorguları ortadan kaldırın. Ayrıca, veri çekme işlemlerini daha küçük parçalara bölmeyi düşünün.
- Büyük dosyaları bölün: Eğer büyük dosyalarla çalışıyorsanız, bunları daha küçük parçalara ayırarak işlemeyi deneyin.
- Belleği boşaltın: Kullanılmayan değişkenleri bellekten temizlemek için `unset()` fonksiyonunu kullanabilirsiniz.

4. Hosting Sağlayıcınıza Başvurun


Yukarıdaki adımları denediyseniz ve hala aynı hatayı alıyorsanız, hosting sağlayıcınız ile iletişime geçmeyi düşünebilirsiniz. Özellikle paylaşımlı hosting kullanıyorsanız, bellek limitinizi arttırma konusunda bazı kısıtlamalar olabilir. Hosting sağlayıcınız, PHP bellek limitini artırmak için size yardımcı olabilir.

Sonuç


PHP "Fatal error: Allowed memory size exhausted" hatası, oldukça yaygın bir hatadır ancak çözülmesi de son derece basittir. PHP bellek limitini artırarak veya kodunuzu optimize ederek bu hatadan kolayca kurtulabilirsiniz. Bu hatayla karşılaştığınızda panik yapmanıza gerek yok. Yukarıdaki yöntemlerden bir veya birkaçını deneyerek, web sitenizin daha verimli çalışmasını sağlayabilirsiniz.

İlgili Yazılar

Benzer konularda diğer yazılarımız

cPanel'de .htaccess Dosyası ile SEO Ayarları Yapmanın Püf Noktaları

Web sitenizin başarısını artırmak istiyorsanız, SEO'nun (Arama Motoru Optimizasyonu) ne kadar önemli olduğunu zaten biliyorsunuzdur. Peki, cPanel üzerinden SEO optimizasyonu yapmak için hangi adımları atmanız gerektiğini ve .htaccess dosyasını nasıl kullanacağınızı...

Yapay Zeka ile Web Geliştirmede Devrim: AI Destekli Web Tasarım Araçları ve Kullanım Alanları

Web geliştirme dünyası her geçen gün hızla evriliyor ve bu evrimde yapay zekanın (AI) rolü giderek daha büyük bir hal alıyor. Web tasarımı, sadece estetikten ibaret olmanın çok ötesine geçerken, yapay zeka destekli araçlar, geliştiricilerin işini daha...

Swift'de 'Memory Management' ve 'ARC' ile Bellek Sızıntılarını Önleme Yolları

Swift'te Bellek Yönetimi: ARC ile Tanışın Bir iOS uygulaması geliştirirken en sık karşılaştığımız sorunlardan biri, bellek sızıntılarıdır. Hangi projede olursak olalım, bir süre sonra uygulamanın performansının düşmesi, cihazın yavaşlaması ve hatta çökmesi...

Web Sitesi Hızlandırma 101: Caching, CDN ve Lazy Loading ile Performans Artışı

**Web sitesi hızınızın ne kadar önemli olduğunu hepimiz biliyoruz. Ancak, çoğu zaman site hızını artırmak için yapılan küçük değişikliklerin bile büyük farklar yaratabileceğini göz ardı edebiliyoruz. Web sitenizin hızını artırmak, kullanıcı deneyimini...

WordPress Site Hızını Artırmanın 10 Sıradışı Yolu: Performans Optimizasyonu için İleri Düzey İpuçları

Site Hızını Artırmanın Yolu: Performans Optimizasyonuna Giden 10 İleri Düzey StratejiBir WordPress sitesine sahipseniz, hız, SEO'nun kalbi gibidir. Yavaş yüklenen bir site, ziyaretçilerinizi kaybetmenin yanı sıra, arama motorlarında da kötü sıralamalara...

Web Uygulamanızda Aniden Ortaya Çıkan '404 Not Found' Hatası: Nedenleri ve Anında Çözüm Yolları

---Bir gün web uygulamanızı açtınız, her şey normal görünüyor. Ama birden karşınıza çıkan o ürkütücü ekran: 404 Not Found. Hiçbir kullanıcı bu hatayı görmek istemez. Ne yazık ki, çoğu zaman 404 hatası, ziyaretçilerinizi kaybetmenize yol açabilir ve SEO...