PHP yükleme limitleri neden önemlidir?
WordPress tabanlı web sitelerinde büyük bir tema, eklenti veya medya dosyası (video, PDF vb.) yüklemeye çalıştığınızda, **"Yüklenen dosya php.ini içerisindeki upload_max_filesize yönergesini aşıyor"** veya **"Bağlantı zaman aşımına uğradı"** gibi hatalarla karşılaşabilirsiniz. PHP varsayılan olarak sunucu güvenliğini korumak amacıyla maksimum dosya yükleme boyutunu oldukça düşük (genellikle 2 MB veya 8 MB) tutar.
Bu sınırları sitenizin ihtiyaçlarına göre güvenli bir seviyeye (Örn: 128 MB veya 256 MB) yükseltmek, web sitenizin yönetimini kolaylaştıracaktır. Limit yükseltme işlemini uygulayabileceğiniz farklı yöntemleri aşağıda inceleyeceğiz.
Yöntem 1: cPanel / MultiPHP INI Editor üzerinden yükseltme
Eğer cPanel kullanıyorsanız, herhangi bir kod düzenlemesi yapmadan limitleri görsel arayüz üzerinden yükseltebilirsiniz:
- cPanel hesabınıza giriş yapın.
- Yazılım (Software) bölümünün altındaki **"MultiPHP INI Editor"** aracına tıklayın.
- İlgili web sitenizi seçin.
- Açılan listedeki şu değerleri güncelleyin:
upload_max_filesize= 128Mpost_max_size= 128Mmemory_limit= 256Mmax_execution_time= 300
- **Apply** (Uygula) butonuna tıklayarak ayarları kaydedin.
Yöntem 2: .htaccess dosyası ile limit artırma
cPanel veya FTP üzerinden sitenizin ana dizininde (public_html) yer alan gizli `.htaccess` dosyasını düzenleyerek de limitleri artırabilirsiniz. Dosyanın en altına şu kodları ekleyin:
php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value memory_limit 256M
php_value max_execution_time 300
Yöntem 3: Sunucu genelinde php.ini düzenleme (VDS için)
Eğer bir VDS sunucu yönetiyorsanız ve limitleri sunucudaki tüm siteler için genel olarak artırmak istiyorsanız, sunucu genelindeki `php.ini` dosyasını düzenlemelisiniz:
# php.ini dosyasını açın (PHP sürümüne göre yol değişebilir)
nano /etc/php.ini
Dosya içerisinde `CTRL + W` tuşuyla ilgili satırları aratıp değerleri güncelleyin:
upload_max_filesize = 128M
post_max_size = 128M
memory_limit = 256M
max_execution_time = 300
Dosyayı kaydedip çıktıktan sonra PHP-FPM ve web sunucu servisinizi yeniden başlatın:
systemctl restart php-fpm
systemctl restart nginx # Veya apache2
Sık sorulan sorular
upload_max_filesize ile post_max_size arasındaki fark nedir?
`upload_max_filesize`, sunucuya yüklenecek tek bir dosyanın alabileceği maksimum boyuttur. `post_max_size` ise tek bir HTTP POST isteğiyle gönderilebilecek toplam veri boyutudur. Genel bir kural olarak `post_max_size` değeri, `upload_max_filesize` değerine eşit veya ondan büyük olmalıdır.
Limitleri artırmama rağmen hata devam ediyor?
Sitenizde Cloudflare gibi bir CDN/Proxy servisi kullanılıyorsa, Cloudflare ücretsiz planlarında dosya yükleme boyutunu maksimum 100 MB ile sınırlandırır. Eğer 100 MB üstü dosya yüklemek istiyorsanız, yükleme işlemi sırasında Cloudflare proxy (turuncu bulut) durumunu geçici olarak kapatabilirsiniz.