Lewati ke isi

Website & Domain

Cara Menaikkan Batas Upload File di WordPress

Gagal upload karena "exceeds the maximum upload size"? Ini cara menaikkan upload_max_filesize dan post_max_size lewat cPanel, .user.ini, atau Nginx.

Terbit 5 menit baca

Jawaban singkat

Batas upload WordPress ditentukan PHP, yaitu nilai terkecil antara upload_max_filesize dan post_max_size. Naikkan keduanya lewat MultiPHP INI Editor di cPanel atau file .user.ini, dan di VPS Nginx naikkan juga client_max_body_size.

Daftar isi
  1. Pengaturan apa saja yang menentukan batas upload?
  2. Langkah menaikkan batas upload
  3. 1. Pastikan sumber masalahnya
  4. 2. Cara paling mudah di cPanel: MultiPHP INI Editor
  5. 3. Alternatif: file .user.ini
  6. 4. Alternatif lain: .htaccess (hanya untuk mod_php atau LiteSpeed)
  7. 5. Di VPS dengan Nginx, naikkan client_max_body_size
  8. 6. Cek hasilnya di WordPress
  9. Kenapa batas upload sudah dinaikkan tapi tidak berubah?
  10. Haruskah semua file besar diunggah lewat WordPress?
  11. Pertanyaan yang sering diajukan

Mau mengunggah video produk, file PDF katalog, atau tema premium, tapi WordPress menolak dengan pesan "The uploaded file exceeds the upload_max_filesize directive in php.ini"? Batas itu bukan dari WordPress, melainkan dari pengaturan PHP di server. Kabar baiknya, di sebagian besar hosting kamu bisa menaikkannya sendiri dalam beberapa menit.

Angka yang tampil di Media > Add New sebagai "Maximum upload file size" adalah hasil fungsi wp_max_upload_size(), yang mengambil nilai terkecil antara upload_max_filesize dan post_max_size. Jadi keduanya harus dinaikkan bersama.

Pengaturan apa saja yang menentukan batas upload?

PengaturanLapisanNilai bawaanFungsi
upload_max_filesizePHP2MUkuran maksimal satu file
post_max_sizePHP8MUkuran maksimal seluruh data yang dikirim formulir
memory_limitPHP128MMemori per proses, berpengaruh saat memproses gambar besar
max_execution_timePHP30 detikBatas waktu eksekusi skrip
client_max_body_sizeNginx1mUkuran maksimal body request, di atasnya muncul 413

Nilai bawaan di atas berasal dari dokumentasi PHP dan Nginx. Hosting biasanya sudah memakai angka lain, jadi cek dulu angka aktualnya di WordPress lewat menu Tools > Site Health > Info > Server.

Aturan praktisnya: post_max_size sedikit lebih besar dari upload_max_filesize, dan memory_limit tidak lebih kecil dari post_max_size.

Langkah menaikkan batas upload

1. Pastikan sumber masalahnya

Pesan error memberi petunjuk:

  • "exceeds the maximum upload size for this site" atau "upload_max_filesize directive": batas PHP.
  • "413 Request Entity Too Large": batas web server, biasanya Nginx.
  • Upload berhenti di tengah lalu gagal tanpa pesan jelas: bisa max_execution_time atau koneksi yang terputus.

2. Cara paling mudah di cPanel: MultiPHP INI Editor

Hampir semua hosting cPanel menyediakan menu ini.

  1. Masuk cPanel, buka MultiPHP INI Editor di bagian Software.
  2. Pilih tab Basic Mode, lalu pilih domain.
  3. Ubah upload_max_filesize, misalnya ke 64M.
  4. Ubah post_max_size ke 72M.
  5. Pastikan memory_limit minimal 128M, lalu klik Apply.

Editor ini menulis file konfigurasi di folder domain untukmu, jadi tidak perlu mengetik sintaks sendiri. Beberapa hosting dengan CloudLinux memakai menu Select PHP Version > Options yang fungsinya sama.

3. Alternatif: file .user.ini

Bila tidak ada menu khusus dan PHP berjalan sebagai PHP-FPM atau CGI, buat file .user.ini di folder instalasi WordPress (sejajar dengan wp-config.php):

upload_max_filesize = 64M
post_max_size = 72M
memory_limit = 256M
max_execution_time = 300

PHP membaca ulang file ini secara berkala, bawaannya setiap 300 detik (diatur oleh user_ini.cache_ttl). Jadi tunggu sekitar lima menit sebelum mengecek hasilnya.

4. Alternatif lain: .htaccess (hanya untuk mod_php atau LiteSpeed)

Di server yang menjalankan PHP sebagai modul Apache, atau di LiteSpeed yang mendukung direktif ini, kamu bisa menambahkan ke .htaccess:

php_value upload_max_filesize 64M
php_value post_max_size 72M

Jika server memakai PHP-FPM, baris php_value justru menyebabkan error 500. Kalau itu terjadi, hapus barisnya dan kembali ke cara nomor 2 atau 3.

5. Di VPS dengan Nginx, naikkan client_max_body_size

Nginx punya batas sendiri yang bawaannya hanya 1 MB. Tambahkan di blok server atau http:

client_max_body_size 72M;

Lalu ubah php.ini milik PHP-FPM, misalnya di Ubuntu /etc/php/8.3/fpm/php.ini (sesuaikan versi PHP-mu), dengan nilai yang sama seperti langkah 3. Muat ulang keduanya:

sudo nginx -t && sudo systemctl reload nginx
sudo systemctl restart php8.3-fpm

6. Cek hasilnya di WordPress

Buka Media > Add New. Angka "Maximum upload file size" seharusnya sudah berubah. Kalau belum, pastikan file konfigurasi berada di folder yang benar dan versi PHP yang diedit sama dengan versi yang dipakai domain.

Kenapa batas upload sudah dinaikkan tapi tidak berubah?

Ada beberapa kemungkinan:

  • Hosting membatasi dari level server. Paket shared hosting kadang mengunci nilai maksimal. Angka di atas batas itu diabaikan.
  • WordPress Multisite punya pengaturan sendiri di Network Admin > Settings > Max upload file size.
  • Plugin keamanan atau CDN bisa membatasi ukuran request. Cloudflare, misalnya, juga punya batas ukuran upload per paket.
  • Versi PHP salah. Kamu mengedit konfigurasi PHP 8.2, padahal domain sudah memakai PHP 8.3.

Kalau sering menangani file besar dan batas paket terus terbentur, itu tanda untuk meninjau ulang paket. Pembahasan soal batas sumber daya ada di arti CPU, EP, dan IO di hosting dan cara memilih paket hosting.

Haruskah semua file besar diunggah lewat WordPress?

Tidak selalu. Video berukuran ratusan megabyte lebih baik diunggah ke platform video lalu disematkan, agar hosting tidak terbebani saat banyak pengunjung menonton. Untuk memindahkan file arsip besar sekali saja, misalnya file impor, unggah lewat File Manager atau SFTP biasanya lebih cepat dan tidak terikat batas PHP.

Menaikkan batas upload terlalu tinggi juga bukan ide bagus. Angka 64M sampai 128M sudah cukup untuk sebagian besar situs bisnis.

Pertanyaan yang sering diajukan

Berapa batas upload yang ideal untuk WordPress?

Untuk situs bisnis biasa, 32M sampai 64M sudah lega untuk gambar, PDF, dan plugin. Naikkan lebih tinggi hanya bila memang rutin mengunggah file besar.

Apakah mengubah php.ini bisa merusak website?

Lewat MultiPHP INI Editor risikonya kecil. Yang sering membuat error 500 adalah baris php_value di .htaccess pada server PHP-FPM. Simpan salinan file sebelum mengubahnya.

Kenapa upload gambar besar berhasil tapi thumbnail tidak terbentuk?

Biasanya memory_limit kurang saat WordPress memotong gambar beresolusi tinggi. Naikkan memory_limit atau perkecil gambar sebelum diunggah.

Apakah plugin bisa menaikkan batas upload?

Plugin tidak bisa melampaui batas yang ditetapkan server. Plugin hanya bisa mengubah nilai yang memang diizinkan hosting untuk diubah.

Checklist singkat:

  • Naikkan upload_max_filesize dan post_max_size bersamaan.
  • memory_limit tidak lebih kecil dari post_max_size.
  • Di Nginx, client_max_body_size ikut disesuaikan.
  • Cek angka baru di Media > Add New.

Sumber & referensi

Baca juga