Bir web sitesi "yavaş açılıyor", "bazı eklentiler hata veriyor" ya da "güvenlik taraması eski yazılım uyarısı veriyor" dediğinizde, sorunun kökeninde çoğu zaman sunucudaki PHP sürümü yatar. PHP, WordPress'ten Laravel tabanlı özel yazılımlara kadar hemen her dinamik web uygulamasının arka planda çalıştığı programlama dilidir; hangi sürümün kullanıldığı sayfa hızını, bellek tüketimini, hangi fonksiyonların çalışacağını ve güvenlik açıklarına karşı ne kadar korunaklı olduğunuzu doğrudan belirler.
Bu yazıda PHP sürümünün neden önemli olduğunu, cPanel üzerindeki MultiPHP Manager ile sürümün nasıl değiştirileceğini, php.ini dosyasındaki kritik ayarları (memory_limit, upload_max_filesize, max_execution_time gibi) ve bir sürüm yükseltmesi öncesinde nelere dikkat etmeniz gerektiğini adım adım ele alacağız.
PHP Nedir, Sürümü Neden Önemlidir?#
PHP (Hypertext Preprocessor), sunucu tarafında çalışan, web sayfalarını istek anında dinamik olarak üreten bir betik dilidir. Ziyaretçi bir sayfayı açtığında sunucu PHP kodunu çalıştırır, gerekirse veritabanına bağlanır (bkz. MySQL veritabanı yönetimi) ve sonucu HTML olarak tarayıcıya gönderir. WordPress, Joomla, Magento, Laravel, Symfony gibi sistemlerin neredeyse tamamı PHP üzerine kuruludur; dolayısıyla sunucudaki PHP yapılandırması, üstüne kurulu onlarca farklı uygulamayı aynı anda etkiler.
PHP sürümünün önemi üç ana başlıkta toplanır:
- Performans: PHP 7'den PHP 8'e geçişte gelen JIT (Just-In-Time) derleyici ve iyileştirilmiş bellek yönetimi sayesinde aynı kod, daha yeni sürümlerde belirgin biçimde daha az CPU ve bellek tüketerek çalışır. Eski PHP 5.6 veya 7.0 gibi sürümlerde çalışan bir WordPress sitesi, sürüm yükseltmesiyle birlikte gözle görülür şekilde hızlanabilir; bazı ölçümlerde istek başına işlem süresi yarıya kadar düşebilir.
- Güvenlik: Her PHP sürümünün resmi bir destek ömrü vardır. Destek süresi dolan ("End of Life") bir sürümde bulunan güvenlik açıkları artık yamalanmaz; bu da sunucunuzu saldırılara açık hale getirir. Barındırma güvenliğinin bir diğer katmanı olan SSL sertifikası ve WAF koruması bile, altyapıdaki güncel olmayan bir PHP sürümünün açtığı riski tek başına kapatamaz.
- Uyumluluk: WordPress çekirdeği ve popüler eklentiler zamanla eski PHP sürümleriyle uyumluluğu keser; yeni sürümler ise bakımı bırakılmış bazı eski eklentilerle çakışabilir. Bu yüzden "en yeni her zaman en iyisidir" yaklaşımı yerine, kullandığınız yazılımın resmi olarak desteklediği en güncel sürümü seçmek daha doğru bir stratejidir.
PHP'nin resmi destek takvimine göre her ana sürüm (8.1, 8.2, 8.3 gibi) belirli bir süre "active support" (aktif geliştirme + güvenlik yamaları), ardından yalnızca kritik güvenlik yamaları alan "security support" dönemine girer; bu süre de dolduğunda sürüm tamamen desteksiz kalır ve yeni açıklar hiç yamalanmaz.
Sunucudaki Mevcut PHP Sürümünü Nasıl Öğrenirsiniz?#
Sürüm değiştirmeden önce hangi sürümde olduğunuzu bilmeniz gerekir. Bunun için iki yol vardır.
Tarayıcıdan (phpinfo)#
Sitenizin kök dizinine küçük bir dosya ekleyerek çalışan sürümü görebilirsiniz:
<?php
phpinfo();
Bu kodu bilgi.php gibi bir dosyaya kaydedip siteniz.com/bilgi.php adresinden açtığınızda, çalışan PHP sürümü ve yüklü tüm modüller listelenir. Önemli: bu dosya sunucu yapılandırmanızı ayrıntılı biçimde ifşa eder (yüklü modüller, dosya yolları, bazı ortam değişkenleri); kontrol ettikten sonra mutlaka silin, kalıcı olarak sitede bırakmayın.
Terminalden (SSH ile CLI sürümü)#
Eğer sunucunuza SSH ile bağlanıyorsanız, komut satırında çalışan PHP sürümünü şu komutla görebilirsiniz:
php -v
Örnek çıktı:
PHP 8.2.18 (cli) (built: Apr 10 2026 09:12:31) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.18, Copyright (c) Zend Technologies
Dikkat: CLI'daki PHP sürümü (terminalden çalışan) ile web sunucusunun (Apache/nginx üzerinden) kullandığı PHP sürümü farklı olabilir. Özellikle birden fazla PHP sürümünün kurulu olduğu paylaşımlı sunucularda, cron görevleriniz sistemin varsayılan CLI sürümünü, siteniz ise cPanel'de seçtiğiniz sürümü kullanır. Cron görevleri yazıyorsanız bu ayrımı mutlaka göz önünde bulundurun; aksi halde betiğiniz beklediğinizden farklı bir PHP sürümüyle çalışıp beklenmedik hatalar üretebilir.
cPanel MultiPHP Manager ile Sürüm Değiştirme#
Çoğu paylaşımlı ve reseller hosting hesabında PHP sürümü, terminal bilgisi gerektirmeden cPanel üzerinden birkaç tıkla değiştirilir. İşlem adımları şu şekildedir:
- cPanel'e giriş yapın ve Software bölümündeki MultiPHP Manager simgesine tıklayın.
- Açılan listede alan adınızı (veya birden fazla alan adınız varsa ilgilisini) bulun.
- Alan adının yanındaki PHP sürümü açılır menüsünden istediğiniz sürümü (örneğin
PHP 8.2veyaPHP 8.3) seçin. - Apply (Uygula) butonuna basın; değişiklik genellikle birkaç saniye içinde devreye girer, sunucunun yeniden başlatılmasına gerek yoktur.
Birden fazla alan adı/alt alan adı için aynı anda sürüm değiştirmek isterseniz, MultiPHP Manager'daki çoklu seçim kutusunu kullanarak toplu güncelleme yapabilirsiniz — özellikle reseller hosting hesaplarında birçok müşteri sitesini tek tek uğraşmadan yönetirken ciddi zaman kazandırır.
PHP Uzantılarını (Extension) Yönetme#
Sürümü seçtikten sonra aynı ekranda genellikle bir MultiPHP INI Editor veya PHP Selector bağlantısı bulunur. Buradan gd, imagick, mbstring, curl, zip, intl gibi PHP uzantılarını (extension) açıp kapatabilirsiniz. Örneğin bir WordPress eklentisi "GD kütüphanesi bulunamadı" hatası veriyorsa, bu ekrandan ilgili uzantının etkin olup olmadığını kontrol etmek atılacak ilk adım olmalıdır — çoğu zaman sorun kod hatası değil, eksik veya kapalı bir uzantıdır.
php.ini Nedir ve Hangi Ayarlar Kritiktir?#
php.ini, PHP'nin çalışma davranışını belirleyen ana yapılandırma dosyasıdır. Sunucu her PHP betiğini çalıştırdığında bu dosyadaki değerleri okur. cPanel kullanıcıları için en pratik yol, dosyayı doğrudan düzenlemek yerine MultiPHP INI Editor ekranından değerleri form alanları üzerinden değiştirmektir; bu yaklaşım, yanlış bir söz dizimi yüzünden tüm siteyi çökertme riskini ortadan kaldırır.
En sık ihtiyaç duyulan dört ayar şunlardır:
| Ayar | Ne İşe Yarar | Tipik Değer |
|---|---|---|
memory_limit | Bir PHP betiğinin kullanabileceği maksimum bellek miktarı | 256M – 512M |
upload_max_filesize | Tek bir dosya yüklemesinde izin verilen maksimum boyut | 64M – 256M |
max_execution_time | Bir betiğin çalışabileceği maksimum süre (saniye) | 60 – 300 |
post_max_size | Bir HTTP POST isteğinde gönderilebilecek toplam veri boyutu | upload_max_filesize'dan büyük olmalı |
memory_limit#
WordPress gibi eklenti-yoğun sistemlerde varsayılan 128M genellikle yetersiz kalır ve "Allowed memory size exhausted" hatası verir. Bu değeri yükseltmek çoğu zaman ilk çözüm adımıdır:
memory_limit = 256M
Ancak bunu sınırsız artırmak performans sorununu çözmez, sadece semptomu gizler; asıl neden genellikle verimsiz bir eklenti veya tema kodudur. Kalıcı çözüm için WordPress hız optimizasyonu yazımıza bakabilirsiniz.
upload_max_filesize ve post_max_size#
Büyük medya dosyaları yükleyen siteler (fotoğraf galerileri, video eklentileri) için bu iki değer birlikte artırılmalıdır — post_max_size değeri upload_max_filesize'dan küçük kalırsa yükleme yine başarısız olur, çünkü PHP önce toplam POST boyutunu kontrol eder:
upload_max_filesize = 128M
post_max_size = 132M
max_execution_time#
Bazı işlemler (toplu veri içe aktarma, büyük bir yedekleme betiği, ağır bir rapor sorgusu) varsayılan 30 saniyeden uzun sürebilir. Bu durumda:
max_execution_time = 300
Not: Düzenli olarak zaman aşımına giren bir işlem varsa, bunu bir cron görevi olarak arka planda çalıştırmak, kullanıcıyı tarayıcıda bekletmemek adına daha sağlıklı bir yaklaşımdır.
Değişikliklerin Kalıcılığı#
cPanel'in MultiPHP INI Editor'ünden yapılan değişiklikler, hesabınıza özel bir .user.ini dosyası veya PHP-FPM havuz yapılandırması üzerinden kalıcı hale gelir ve genel sunucu güncellemelerinden etkilenmez. Kendi sunucunuzu yönetiyorsanız (VDS veya VPS üzerinde), php.ini dosyasının hangi yoldan yüklendiğini bulmak için şu komutu kullanabilirsiniz:
php --ini
Bu komut, aktif olarak yüklenen php.ini dosyasının tam yolunu ve varsa ek yapılandırma dosyalarının bulunduğu dizini (Scan for additional .ini files in) gösterir. Değişiklikten sonra PHP-FPM veya Apache'yi yeniden başlatmayı unutmayın; aksi halde eski değerler önbellekte kalmaya devam eder.
Sürüm Yükseltmeden Önce Uyumluluk Kontrolü#
PHP sürümünü yükseltmeden önce aceleci davranmak, sitenin beyaz ekran vermesine (yaygın adıyla "White Screen of Death") yol açabilir. Aşağıdaki adımları izlemek riski büyük ölçüde azaltır:
- Yedek alın: Sürüm değiştirmeden önce mutlaka güncel bir dosya ve veritabanı yedeği alın. Bir sorun çıkarsa geri dönüş yapabilmeniz için bu adım vazgeçilmezdir.
- Eklenti/tema uyumluluğunu kontrol edin: WordPress kullanıyorsanız, panelden her eklentinin "PHP uyumluluğu" bilgisini (genellikle eklenti sayfasında "Requires PHP version" olarak belirtilir) gözden geçirin. Özellikle bakımı uzun süredir yapılmamış eklentiler risklidir.
- Önce test/staging ortamında deneyin: Mümkünse canlı siteye dokunmadan önce bir test alanında (staging subdomain) yeni sürümü deneyin ve sitenin kritik sayfalarını (giriş, ödeme, form gönderimi) manuel kontrol edin.
- Hata günlüklerini izleyin: Sürümü değiştirdikten hemen sonra cPanel'deki "Errors" günlüğünü veya sunucudaki
error_logdosyasını kontrol edin;Fatal errorveyaDeprecateduyarıları erken uyarı sinyalidir. - Kademeli ilerleyin: PHP 7.4'ten doğrudan 8.3'e atlamak yerine, önce 8.0/8.1 gibi ara bir sürümde test edip sorunsuz çalıştığını gördükten sonra en güncel sürüme geçmek, hangi adımın hatayı tetiklediğini anlamayı ve hata ayıklamayı kolaylaştırır.
Bu kontrolleri kendiniz yürütmek istemiyorsanız veya sürüm geçişi sırasında teknik destek almak isterseniz, sunucu yönetimi hizmeti bu tür bakım işlerini sizin adınıza üstlenir.
Eski PHP Sürümünde Kalmanın Riskleri#
Destek süresi dolmuş bir PHP sürümünde (örneğin uzun süredir güncellenmeyen bir 7.x sürümü) kalmak sadece performans kaybı değil, gerçek bir güvenlik riskidir:
- Bilinen güvenlik açıkları için resmi yama yayınlanmaz; bu açıklar kamuya açık veritabanlarında (CVE listelerinde) belgelidir ve otomatik saldırı botları tarafından düzenli olarak taranır.
- Ödeme sistemleri, güvenlik sertifikasyonları (PCI-DSS gibi) veya bazı üçüncü parti servisler güncel PHP sürümü şartı koşabilir; eski sürümde kalan bir site bu entegrasyonları kaybedebilir.
- Yeni WordPress çekirdek sürümleri ve büyük eklentiler, belirli bir asgari PHP sürümünü zorunlu kılmaya başlar; eski sürümde kalan siteler zamanla güncellemeleri hiç alamaz hale gelir ve teknik borç birikir.
Bu nedenle PHP sürümünü "bir kere ayarlanıp unutulan" bir ayar değil, düzenli olarak gözden geçirilmesi gereken bir bakım kalemi olarak görmek gerekir. Yılda en az bir kez, kullandığınız yazılımın minimum PHP gereksinimini ve mevcut sürümünüzün destek durumunu kontrol etmek iyi bir alışkanlıktır.
Sıkça Sorulan Sorular#
Hangi PHP sürümünü seçmeliyim?#
Genel kural, kullandığınız yazılımın (WordPress, Laravel vb.) resmi olarak desteklediği en güncel PHP sürümüdür. Yeni bir WordPress kurulumu için genellikle güncel bir 8.x sürümü (örneğin 8.2 veya 8.3) hem performans hem güvenlik açısından doğru tercihtir.
PHP sürümünü değiştirince sitem bozulur mu?#
Sitenin bozulup bozulmayacağı, kullandığınız eklenti ve temaların yeni sürümle uyumluluğuna bağlıdır. Değişiklik öncesi yedek almak ve eklenti uyumluluğunu kontrol etmek olası sorunları büyük ölçüde önler; yine de bir aksaklık olursa yedekten geri dönmek her zaman mümkündür.
memory_limit değerini ne kadar artırabilirim?#
Bu, hosting planınızın sunduğu üst sınıra ve sunucu kaynaklarına bağlıdır; paylaşımlı hosting hesaplarında genellikle 256M–512M aralığında bir üst sınır tanımlıdır. Sürekli bellek hatası alıyorsanız sorunun kaynağını (verimsiz eklenti veya kod) araştırmak, sadece limiti yükseltmekten daha kalıcı bir çözümdür.
CLI'daki PHP sürümü ile web sitesindeki sürüm neden farklı olabilir?#
Sunucuda birden fazla PHP sürümü kurulu olabilir; cPanel üzerinden alan adınıza atadığınız sürüm web isteklerini karşılarken, terminalden php -v ile görülen sürüm sistemin varsayılan CLI sürümü olabilir. Cron görevleri genellikle bu CLI sürümünü kullandığı için, betiklerinizin beklediğiniz sürümle çalıştığından emin olmak isterseniz cron betiğinde php -v çıktısını da loglamak faydalı olur.
php.ini dosyasını doğrudan düzenlemem gerekir mi?#
Paylaşımlı veya reseller hosting kullanıyorsanız çoğu zaman gerekmez; cPanel'deki MultiPHP INI Editor aynı ayarları güvenli bir arayüzle sunar. Kendi sunucunuzu (VDS/VPS) yönetiyorsanız dosyaya doğrudan erişip düzenleme yapabilirsiniz, ancak her değişiklikten sonra web sunucusu servisini (Apache, nginx veya PHP-FPM) yeniden başlatmayı unutmayın; aksi halde eski ayarlar geçerli kalmaya devam eder.
PHP sürümü ile SSL sertifikası arasında bir ilişki var mı?#
Doğrudan bir bağımlılık yoktur, ancak ikisi de site güvenliğinin farklı katmanlarıdır: PHP sürümü sunucu tarafı kodun güvenliğini, SSL sertifikası ise tarayıcı ile sunucu arasındaki veri iletiminin şifrelenmesini sağlar. Güvenli bir site için ikisinin de güncel tutulması ve düzenli olarak gözden geçirilmesi gerekir.
PHP sürümünü doğru seçmek ve php.ini ayarlarını ihtiyacınıza göre ince ayarlamak, sitenizin hem hızını hem güvenliğini doğrudan etkiler. Bu tür sunucu bakım işlerini kendiniz takip etmek istemiyorsanız, hosting planlarımız güncel PHP sürümlerini ve cPanel tabanlı yönetim kolaylığını hazır sunar; WordPress siteleri için özel olarak optimize edilmiş WordPress hosting seçeneği de PHP sürüm ve önbellek ayarlarını sizin için baştan doğru yapılandırır.