WordPress Upload Limit Artırma: Dosya Boyutu

WordPress Upload Limit Artırma: Dosya Boyutu

Kısaca

WordPress varsayılan olarak yükleyebileceğiniz dosya boyutunu genellikle 2 MB veya barındırma sağlayıcınızın belirlediği bir değerle sınırlar. Bu limit WordPress'in kendisinden değil, sunucudaki PHP ayarlarından gelir; dolayısıyla eklenti kurmadan, doğru üç değeri (upload_max_filesize, post_max_size, memory_limit) düzenleyerek kalıcı olarak artırabilirsiniz.

  • Limit PHP kaynaklıdır; en kalıcı yöntem php.ini / .user.ini ya da cPanel'deki PHP INI düzenleyicisidir.
  • Kural: post_max_size > upload_max_filesize ve memory_limit ≥ post_max_size olmalı.
  • LiteSpeed ve modern paylaşımlı barındırmada değişiklik çoğu zaman anında yansır; yansımazsa PHP servisinin yeniden başlatılması gerekir.

Medya kütüphanesine yüksek çözünürlüklü bir görsel, bir tema ZIP dosyası ya da 30 saniyelik bir tanıtım videosu yüklemeye çalıştığınızda karşınıza çıkan o kırmızı uyarıyı çoğu WordPress kullanıcısı en az bir kez görmüştür: "Yüklenen dosya php.ini içindeki upload_max_filesize yönergesini aşıyor." İlk refleks genellikle bir eklenti aramak olur, oysa bu limitin kaynağı WordPress değildir. WordPress yalnızca sunucunun kendisine verdiği izni gösterir. Gerçek karar PHP'nin yapılandırma dosyalarında, yani sunucu tarafında verilir.

Bu yazıda, yükleme limitinin nereden geldiğini, hangi değerin neyi kontrol ettiğini ve hosting türünüze göre limiti nasıl güvenli biçimde artıracağınızı adım adım anlatıyoruz. Yöntemleri en kolaydan en teknik olana doğru sıraladık; siz kendi kurulumunuza uyanı seçebilirsiniz.

WordPress yükleme limiti tam olarak nedir?

WordPress'in yönetim panelinde Medya → Yeni Ekle sayfasına gittiğinizde, dosya seçme alanının altında küçük gri bir yazıyla "Maksimum yükleme dosyası boyutu: 2 MB" benzeri bir ifade görürsünüz. Bu değer, tarayıcınızdan sunucuya tek seferde gönderebileceğiniz dosyanın üst sınırıdır ve tamamen PHP'nin çalışma zamanı ayarlarından türetilir.

WordPress'in çekirdeği bu sınırı belirlemez; yalnızca PHP'ye "izin verilen en büyük dosya nedir?" diye sorar ve gelen cevabı ekrana yazar. Bu yüzden limiti değiştirmenin yolu WordPress dosyalarını kurcalamaktan değil, PHP'nin ilgili değerlerini güncellemekten geçer.

Mail hosting 1 ay ücretsiz

Varsayılan neden bu kadar düşük?

PHP'nin tarihsel varsayılanı upload_max_filesize için 2 MB'tır. Bu, güvenlik ve kaynak yönetimi açısından muhafazakâr bir başlangıç değeridir: kötü niyetli birinin sunucuyu devasa dosyalarla boğmasını zorlaştırır ve paylaşımlı ortamlarda tek bir sitenin kaynakları tüketmesini önler. Kaliteli barındırma sağlayıcıları bu değeri genellikle 64 MB, 128 MB ya da daha yükseğe çeker; ancak yine de bir üst sınır her zaman vardır.

Limiti belirleyen üç kritik PHP değeri

Dosya yükleme davranışı tek bir ayarla değil, birbirine bağımlı üç değerle kontrol edilir. Bunlardan yalnızca birini yükseltip diğerlerini unutmak, en sık yapılan hatadır ve çoğu zaman sorunu çözmez.

Ayar Ne işe yarar? Önerilen ilişki
upload_max_filesize Tek bir dosyanın yüklenebilecek en büyük boyutu. Temel hedefiniz (ör. 128M)
post_max_size Bir istekte gönderilen tüm verinin (dosya + form) toplam üst sınırı. upload_max_filesize'dan büyük olmalı
memory_limit Bir PHP betiğinin kullanabileceği en fazla RAM. post_max_size'a eşit veya ondan büyük
max_execution_time Bir betiğin çalışabileceği saniye cinsinden süre. Büyük dosyalar için 180-300 sn
max_input_time Verinin sunucuya alınması için tanınan süre. max_execution_time ile uyumlu

Aklınızda tutmanız gereken altın kural şudur: memory_limit ≥ post_max_size > upload_max_filesize. Örneğin 128 MB'lık bir video yüklemek istiyorsanız, upload_max_filesize=128M, post_max_size=192M ve memory_limit=256M gibi bir sıralama sağlıklı bir yapılandırmadır. post_max_size, upload_max_filesize'dan küçük kalırsa dosya hiçbir zaman tamamlanamaz; memory_limit yetersizse sunucu işlemi ortadan keser.

Yöntem 1: cPanel PHP INI düzenleyicisi (en pratik)

Paylaşımlı ya da WordPress barındırma kullanıyorsanız ve sunucunuzda cPanel varsa, bu en hızlı ve en az riskli yöntemdir. Dosya düzenlemekle uğraşmadan, arayüz üzerinden değerleri girersiniz.

  • cPanel'e giriş yapın ve Yazılım bölümünde MultiPHP INI Editor aracını açın.
  • Üstteki açılır menüden ayarları değiştirmek istediğiniz alan adını seçin.
  • upload_max_filesize, post_max_size ve memory_limit değerlerini yukarıdaki kurala göre girin.
  • file_uploads seçeneğinin On olduğundan emin olun ve kaydedin.

Değişiklik genellikle birkaç saniye içinde etkinleşir. WordPress panelinde Medya sayfasını yenilediğinizde yeni limitin göründüğünü doğrulayabilirsiniz.

Yöntem 2: php.ini veya .user.ini dosyası

cPanel yoksa ya da daha doğrudan bir kontrol istiyorsanız, PHP yapılandırmasını dosya düzeyinde düzenleyebilirsiniz. Barındırma ortamına göre iki dosyadan biri geçerli olur.

Tam kontrolün sizde olduğu (VPS veya sunucu gibi) ortamlarda genellikle php.ini dosyasını düzenlersiniz. Paylaşımlı barındırmada ise sağlayıcı çoğunlukla site kök dizininde bir .user.ini dosyası okunacak şekilde yapılandırma yapmıştır. Site kökünüzde (public_html içinde) böyle bir dosya oluşturup şu satırları ekleyin:

  • upload_max_filesize = 128M
  • post_max_size = 192M
  • memory_limit = 256M
  • max_execution_time = 300

Önemli bir ayrıntı: upload_max_filesize ve post_max_size yönergeleri PHP'de yalnızca php.ini, .htaccess veya .user.ini üzerinden değiştirilebilen türdendir. Bu, aşağıda değineceğimiz functions.php gibi PHP kodu içinden neden her zaman çalışmadıklarını açıklar. .user.ini değişiklikleri anında yansımayabilir; PHP'nin bu dosyayı yeniden okuması için kısa bir bekleme (varsayılan 300 saniye) gerekebilir.

Yöntem 3: .htaccess dosyası (Apache tabanlı sunucular)

Sunucunuz Apache kullanıyorsa, WordPress kök dizinindeki .htaccess dosyasına birkaç satır ekleyerek de limiti artırabilirsiniz. Dosyayı düzenlemeden önce mutlaka bir yedeğini alın; küçük bir yazım hatası tüm siteyi geçici olarak erişilemez hâle getirebilir.

  • php_value upload_max_filesize 128M
  • php_value post_max_size 192M
  • php_value memory_limit 256M
  • php_value max_execution_time 300
  • php_value max_input_time 300

Bu yöntem yalnızca sunucu PHP'yi Apache modülü olarak çalıştırıyorsa geçerlidir. Modern yüksek performanslı sunucuların çoğu PHP'yi FPM veya benzeri bir yapıda çalıştırdığından, .htaccess'e eklenen php_value satırları bazı ortamlarda "Internal Server Error" hatasına yol açar. Böyle bir durumda satırları geri alıp php.ini/.user.ini yöntemine dönmelisiniz.

Yöntem 4: wp-config.php ile bellek limiti

WordPress'in kendi yapılandırma dosyası olan wp-config.php ile doğrudan yükleme boyutunu belirleyemezsiniz; ancak bellek limitini WordPress seviyesinde yükseltebilirsiniz. Kök dizindeki bu dosyada "That's all, stop editing!" satırının üzerine define('WP_MEMORY_LIMIT', '256M'); satırını ekleyebilirsiniz. Bu, özellikle büyük dosyalar işlenirken WordPress'in bellek yetersizliği nedeniyle işlemi kesmesini önler.

Unutmayın: wp-config.php yalnızca WordPress'in bellek davranışını etkiler; upload_max_filesize ve post_max_size gibi PHP seviyesindeki asıl sınırları değiştirmez. Yani bu yöntem tek başına yeterli değildir, diğer yöntemleri tamamlayıcı olarak kullanılır.

Neden functions.php her zaman çalışmaz?

Bazı rehberler, temanızın functions.php dosyasına @ini_set('upload_max_size', '256M') benzeri satırlar eklemeyi önerir. Bu yaklaşımın güvenilir olmamasının teknik bir nedeni vardır: upload_max_filesize ve post_max_size, PHP'nin çalışma zamanında (yani bir betik çalışırken) değiştirilemeyen ayarlarındandır. Dosya yükleme isteği zaten bu değerler okunduktan sonra işlendiği için, kod içinden yapılan değişiklik çoğu kurulumda geç kalır ve etkisiz olur. Bu yüzden functions.php yöntemini son çare olarak bile önermiyoruz; php.ini, .user.ini veya cPanel çok daha güvenilirdir.

Değişiklikten sonra yeni limiti nasıl doğrularsınız?

Ayarları güncelledikten sonra sonucu görmenin en temiz yolu WordPress panelinden Araçlar → Site Sağlığı → Bilgi → Sunucu bölümüne bakmaktır. Burada "PHP maksimum yükleme boyutu" ve "PHP zaman aşımı" gibi değerleri güncel hâliyle görürsünüz. Alternatif olarak Medya kütüphanesindeki dosya yükleme alanının altındaki maksimum boyut ifadesinin değişip değişmediğini kontrol edebilirsiniz.

Değer hâlâ eskiyse; büyük olasılıkla ya post_max_size değerini upload_max_filesize'dan küçük bıraktınız, ya değişiklikleri yanlış dizindeki bir dosyaya yazdınız, ya da sunucunuz .user.ini dosyasını henüz yeniden okumadı. LiteSpeed gibi ortamlarda değişikliklerin yansıması için ilgili PHP servisinin yeniden başlatılması gerekebilir; bu adımı çoğu sağlayıcı sizin için otomatik yapar.

Barındırma altyapısı neden bu kadar önemli?

Yükleme limitini artırmak teknik olarak birkaç satırlık bir iştir; ancak o dosyayı gerçekten sorunsuz yükleyebilmek altyapının hızına ve kararlılığına bağlıdır. Büyük bir dosya yüklerken sunucunun disk hızı, PHP sürümü ve bellek kapasitesi doğrudan sonucu belirler. Yavaş bir diskte 256 MB'lık bir dosya zaman aşımına uğrayabilirken, hızlı bir all-flash depolamada aynı işlem saniyeler sürer.

Alastyr'ın WordPress hosting paketlerinde altyapı bu tür işlemler düşünülerek kurgulanmıştır. Depolamada Dell EMC Unity 650F all-flash sistemler, işlemcide Intel Xeon Gold serisi ve web katmanında LiteSpeed + LSCache kullanılır; böylece hem büyük medya yüklemeleri hem de yoğun trafik altında site tepkisi hızlı kalır. PHP sürüm seçici sayesinde de sitenizin ihtiyaç duyduğu PHP sürümünü panelden saniyeler içinde değiştirebilirsiniz.

Tüm bu altyapı, İzmir'de Alastyr'a ait, N+1 yedekli ve Tier III standartlarında tasarlanmış bir veri merkezinde barınır. 2002'den bu yana %100 Türk sermayesiyle hizmet veren Alastyr, günlük yedekleme, ücretsiz SSL, ücretsiz site taşıma ve 7/24 destek ile WordPress sitenizin arkasındaki teknik yükü üstlenir. Daha esnek kaynak ve tam kök erişimi isteyen kullanıcılar için VPS sunucu ve bulut sunucu seçenekleri de bu limitleri tümüyle sizin kontrolünüze verir.

Sıkça Sorulan Sorular

WordPress yükleme limiti neden 2 MB olarak geliyor?

Bu değer PHP'nin tarihsel varsayılanıdır. WordPress kendi sınırını koymaz; sunucudaki upload_max_filesize ayarını okuyup gösterir. Barındırma sağlayıcınız bu değeri değiştirmediyse 2 MB olarak kalır.

Limiti değiştirmek için eklenti kurmam gerekir mi?

Hayır. Eklentiler yalnızca PHP değerlerini sizin yerinize düzenlemeye çalışan bir arayüz sunar. Sunucunuz PHP değerlerinin kod veya .htaccess üzerinden değiştirilmesine izin vermiyorsa eklenti de çalışmaz. En güvenilir yol php.ini, .user.ini ya da cPanel PHP INI düzenleyicisidir.

upload_max_filesize ile post_max_size arasındaki fark nedir?

upload_max_filesize tek bir dosyanın en büyük boyutunu belirler. post_max_size ise o istekte gönderilen tüm verinin toplam sınırıdır. Bu nedenle post_max_size her zaman upload_max_filesize'dan büyük olmalıdır, aksi hâlde dosya yüklenemez.

Değeri artırdım ama Medya sayfasında hâlâ eski limit görünüyor, neden?

En sık nedenler şunlardır: post_max_size'ı yeterince büyük yapmadınız, ayarları yanlış dizindeki bir dosyaya yazdınız veya sunucu .user.ini dosyasını henüz yeniden okumadı. Birkaç dakika bekleyip tarayıcı önbelleğini temizleyerek tekrar deneyin.

.htaccess yöntemini uyguladım ve site hata verdi, ne yapmalıyım?

Sunucunuz PHP'yi Apache modülü olarak çalıştırmıyorsa .htaccess'teki php_value satırları "Internal Server Error" hatasına yol açar. Eklediğiniz satırları geri alın ve bunun yerine php.ini veya .user.ini yöntemini kullanın.

functions.php ile yükleme boyutunu artırabilir miyim?

Genellikle hayır. upload_max_filesize ve post_max_size, çalışma zamanında değiştirilemeyen PHP ayarlarındandır; bu yüzden functions.php içinden yapılan denemeler çoğu kurulumda etkisiz kalır. Bu yöntemi önermiyoruz.

Limiti çok yükseğe çekmek güvenlik riski oluşturur mu?

Aşırı yüksek değerler, kötü niyetli kullanıcıların büyük dosyalarla sunucu kaynaklarını zorlamasını kolaylaştırabilir. Gerçek ihtiyacınızın biraz üzerinde bir değer (ör. 128 MB veya 256 MB) belirlemek hem pratik hem de güvenlidir. İhtiyaç bittiğinde değeri makul bir seviyeye çekmek iyi bir alışkanlıktır.

Değişikliği doğru yaptığımı nasıl kontrol ederim?

WordPress panelinde Araçlar → Site Sağlığı → Bilgi → Sunucu bölümünden PHP maksimum yükleme boyutunu güncel hâliyle görebilirsiniz. Ayrıca Medya kütüphanesindeki yükleme alanının altındaki maksimum boyut ifadesi de değişmiş olmalıdır.

Paylaşımlı hostingde limit istediğim kadar yükselmiyor, çözüm nedir?

Paylaşımlı barındırmada sağlayıcı, sunucu kararlılığı için üst bir tavan belirlemiş olabilir. Sürekli çok büyük dosyalarla çalışıyorsanız, kaynaklarınızı ve PHP ayarlarınızı tümüyle kontrol edebileceğiniz bir VPS veya bulut sunucuya geçmek en kalıcı çözümdür.

WordPress'iniz için hızlı ve esnek altyapı

All-flash depolama, LiteSpeed + LSCache ve PHP sürüm seçici ile büyük medya yüklemeleri bile sorunsuz. Ücretsiz taşıma ve 7/24 destek Alastyr'dan.

WordPress Hosting Paketlerini İncele

Yazı oluşturuldu 4

Benzer yazılar

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.

Üste dön