Cum mărești limita de încărcare în WordPress (orice host)
Verifică limita de încărcare din WordPress și mărește-o în locul potrivit pentru host: php.ini, .user.ini, .htaccess, cPanel, Nginx sau Cloudflare.
Ca să mărești limita de încărcare în WordPress, crește două setări PHP, upload_max_filesize și post_max_size, în fișierul de configurare pe care hostul tău îl citește de fapt. Acesta este php.ini pe un server pe care îl controlezi, .user.ini pe majoritatea hosturilor partajate care rulează PHP-FPM sau FastCGI, .htaccess doar când Apache rulează PHP ca modul, sau MultiPHP INI Editor din cPanel. Dacă serverul tău rulează Nginx, mărește și client_max_body_size. Editarea wp-config.php nu schimbă limita de încărcare.
Instrumentul pentru dimensiunea maximă de încărcare în WordPress transformă o dimensiune țintă în valorile potrivite pentru php.ini (sau .user.ini), .htaccess și wp-config.php, ca să le poți lipi în loc să le scrii de mână.
Pasul 1: Verifică limita actuală de încărcare
Înainte să schimbi ceva, află care este limita acum și ce setare o stabilește.
- Media > Adaugă un fișier nou. Ecranul de încărcare arată dimensiunea maximă a fișierului. Aceasta este cifra pe care vrei să o mărești.
- Unelte > Sănătate site > Informații. Extinde Gestionare media. Documentația Sănătate site enumeră ce găsești acolo: dimensiunea maximă permisă a datelor POST, dimensiunea maximă a unui fișier încărcat și dimensiunea maximă efectivă a fișierului, adică cea mai mică dintre cele două. Secțiunea Server arată mai multe valori PHP.


WordPress își calculează limita în wp_max_upload_size(), care citește upload_max_filesize și post_max_size din PHP și o folosește pe cea mai mică. Dacă una este 64M și cealaltă 8M, limita ta este 8M.
Pasul 2: Află ce setări contează
| Setare | Ce limitează | Implicit în PHP | Unde se poate schimba |
|---|---|---|---|
upload_max_filesize | Cel mai mare fișier încărcat individual | 2M | php.ini, .user.ini, .htaccess, httpd.conf |
post_max_size | Întreaga cerere POST, inclusiv fișierul | 8M | php.ini, .user.ini, .htaccess, httpd.conf |
memory_limit | Memoria pe care PHP o poate folosi în timpul rulării | 128M | Oriunde, inclusiv wp-config.php |
max_execution_time | Câte secunde poate rula un script | 30 | Oriunde, inclusiv wp-config.php |
client_max_body_size (Nginx) | Corpul cererii pe care Nginx îl acceptă | 1m | Doar în configurația Nginx |
Valorile implicite PHP și modurile de modificare provin din lista directivelor php.ini; valoarea implicită Nginx provine din documentația modulului core Nginx. Majoritatea hosturilor setează valori mai mari decât cele implicite din PHP, de aceea Sănătate site este locul în care îți citești cifrele reale.
upload_max_filesize și post_max_size sunt ceea ce PHP numește setări INI_PERDIR: „pot fi setate în php.ini, .htaccess, httpd.conf sau .user.ini” și nicăieri altundeva. memory_limit nu limitează dimensiunea fișierului, dar WordPress are nevoie de memorie ca să creeze copii redimensionate ale imaginilor mari, așa că o încărcare mare poate eșua totuși cu o eroare de memorie epuizată după ce ajunge pe server.
Pasul 3: Mărește limita în locul potrivit pentru hostul tău
| Configurația ta | Unde o setezi | Note |
|---|---|---|
| VPS sau server dedicat | Fișierul php.ini pe care PHP îl încarcă de fapt | Repornește apoi PHP-FPM sau Apache |
| Host partajat cu PHP-FPM sau FastCGI | .user.ini în rădăcina WordPress | Poate dura până la 5 minute să se aplice |
| Apache cu PHP ca modul (mod_php) | .htaccess cu php_value | Provoacă o eroare 500 sub PHP-FPM sau FastCGI |
| Host cu cPanel | Software > MultiPHP INI Editor | Scrie în locul tău php.ini, .user.ini sau .htaccess |
| Nginx în fața PHP | client_max_body_size pe lângă valorile PHP | Altfel Nginx returnează 413 |
| Host WordPress administrat | Panoul sau suportul hostului | Multe hosturi limitează încărcările la nivel de platformă |
| Site în spatele Cloudflare | Limita proprie de încărcare a Cloudflare | 100 MB pe planurile Free și Pro |
php.ini (server pe care îl controlezi)
Mai întâi găsește fișierul încărcat. Creează un fișier temporar care conține <?php phpinfo();, deschide-l în browser, citește rândul „Loaded Configuration File”, apoi șterge fișierul. Editează acel php.ini:
upload_max_filesize = 128M
post_max_size = 130M
max_execution_time = 300
Apoi repornește PHP ca să citească schimbarea. Cu PHP-FPM, numele serviciului include versiunea, de exemplu sudo systemctl restart php8.3-fpm pe Debian sau Ubuntu. Cu mod_php, repornește Apache.
.user.ini (majoritatea hosturilor partajate)
PHP citește fișierele .user.ini doar când rulează ca CGI sau FastCGI, ceea ce include PHP-FPM. Creează sau editează .user.ini în dosarul care conține wp-config.php:
upload_max_filesize = 128M
post_max_size = 130M
PHP recitește aceste fișiere la fiecare user_ini.cache_ttl secunde, implicit 300. Așteaptă cinci minute înainte să decizi că nu a funcționat, sau repornește PHP-FPM dacă poți.
.htaccess (doar Apache cu mod_php)
php_value upload_max_filesize 128M
php_value post_max_size 130M
Manualul PHP descrie aceste directive pentru PHP care rulează ca modul Apache. Dacă site-ul afișează 500 Internal Server Error imediat după ce salvezi, PHP rulează ca FastCGI sau PHP-FPM. Șterge liniile și folosește .user.ini.
cPanel MultiPHP INI Editor
În cPanel, deschide Software > MultiPHP INI Editor, alege domeniul și schimbă valorile în Basic Mode. Conform documentației cPanel, Basic Mode salvează în fișierele php.ini, .user.ini și .htaccess acolo unde fiecare acceptă setarea, deci nu trebuie să știi pe care îl folosește serverul tău.
Nginx
Nginx verifică dimensiunea cererii înainte ca PHP să o vadă. Când o cerere este mai mare decât client_max_body_size, Nginx returnează 413 Request Entity Too Large. Valoarea implicită este 1m. Adaugă în blocul server o valoare cel puțin la fel de mare ca post_max_size:
client_max_body_size 130M;
Testează și reîncarcă cu sudo nginx -t && sudo systemctl reload nginx. Pe Apache, setarea echivalentă este LimitRequestBody, care rareori trebuie schimbată pe găzduirea WordPress obișnuită.
Hosturi administrate și Cloudflare
Unele hosturi WordPress administrate ignoră php.ini sau .user.ini și setează limita pentru toată platforma. Dacă Sănătate site arată tot cifra veche după schimbare, întreabă hostul care este maximul și dacă îl poate mări.
Dacă site-ul trece prin Cloudflare, Cloudflare are propria limită. Documentația sa despre cache indică dimensiuni maxime de încărcare de 100 MB pe planurile Free și Pro, 200 MB pe Business și până la 5 GB pe Enterprise. Nicio setare PHP nu poate trece peste asta.
De ce nu funcționează wp-config.php
Multe articole recomandă să adaugi asta în wp-config.php:
@ini_set( 'upload_max_filesize', '128M' );
@ini_set( 'post_max_size', '130M' );
Ambele setări sunt INI_PERDIR, iar documentația PHP spune că setările din acest mod nu pot fi stabilite cu ini_set(). Simbolul @ ascunde eșecul, așa că liniile par inofensive și nu schimbă nimic. Ce poate schimba wp-config.php este memoria, pentru că memory_limit se poate seta oriunde:
define( 'WP_MEMORY_LIMIT', '256M' );
Asta ajută când imaginile mari eșuează în timpul procesării. Nu schimbă dimensiunea maximă a fișierului încărcat.
Pasul 4: Confirmă schimbarea
Reîncarcă Media > Adaugă un fișier nou și verifică dacă dimensiunea maximă a fișierului arată noua valoare. Dacă nu:
- Verifică dacă
post_max_sizeeste cel puțin la fel de mare caupload_max_filesize. WordPress o folosește pe cea mai mică. - Confirmă că ai editat fișierul pe care PHP îl încarcă de fapt. Un
php.iniîn dosarul greșit este ignorat. - Așteaptă cinci minute după o schimbare în
.user.ini, sau repornește PHP-FPM. - Dacă cifra din WordPress s-a schimbat, dar încărcările eșuează tot cu 413, blocajul este în Nginx, în proxy-ul hostului sau în Cloudflare.
- Dacă fișierul ajunge în WordPress și apoi eșuează cu „Eroare HTTP”, dimensiunea nu mai este problema. Ghidul nostru despre eroarea HTTP la încărcarea imaginilor în WordPress acoperă cauzele obișnuite.
Cât de mare ar trebui să fie limita?
Seteaz-o la cel mai mare fișier pe care chiar trebuie să îl încarci, cu puțină marjă, și ține post_max_size puțin peste upload_max_filesize. Încărcările mari durează și mai mult, așa că mărește max_execution_time dacă fișierele mari expiră pe conexiuni lente. Pentru fișiere foarte mari, cum ar fi videoclipuri lungi sau arhive de backup, încărcarea prin SFTP sau cu un modul care încarcă pe bucăți este de obicei mai sigură decât o singură încărcare uriașă din browser, iar limita planului Cloudflare poate exclude oricum varianta din browser.
Când știi ținta, instrumentul pentru dimensiunea maximă de încărcare scrie pentru tine liniile PHP potrivite. Adaugă singur linia Nginx din acest ghid dacă serverul tău rulează Nginx.
FAQ
Întrebări
Cum văd limita actuală de încărcare în WordPress?
Mergi la Media > Adaugă un fișier nou. Ecranul de încărcare arată dimensiunea maximă a fișierului. Pentru detalii, deschide Unelte > Sănătate site > Informații și extinde Gestionare media, unde apar dimensiunea maximă a unui fișier încărcat, dimensiunea maximă a datelor POST și dimensiunea maximă efectivă a fișierului, adică cea mai mică dintre cele două.
De ce spune WordPress că fișierul încărcat depășește directiva upload_max_filesize din php.ini?
Fișierul este mai mare decât setarea PHP upload_max_filesize. WordPress nu stabilește această limită, ci o citește din PHP. Mărește împreună upload_max_filesize și post_max_size în php.ini, .user.ini sau, pe Apache cu mod_php, în .htaccess. Valoarea implicită a PHP pentru upload_max_filesize este doar 2M, deși majoritatea hosturilor setează o valoare mai mare.
Pot mări limita de încărcare din wp-config.php?
Nu. upload_max_filesize și post_max_size sunt setări PHP_INI_PERDIR, pe care PHP le acceptă doar din php.ini, .htaccess, httpd.conf sau .user.ini. O linie ini_set() în wp-config.php rulează fără eroare și nu schimbă nimic. wp-config.php poate mări limita de memorie a WordPress, dar nu memoria limitează dimensiunea fișierului.
De ce primesc tot 413 Request Entity Too Large după ce am mărit limitele PHP?
Ceva aflat înaintea PHP respinge cererea. Pe Nginx este client_max_body_size, care are implicit 1m și returnează eroarea 413 când este depășit. Mărește-l în blocul server și reîncarcă Nginx. Dacă site-ul tău trece prin Cloudflare, limita de încărcare a planului poate opri și ea cererea înainte să ajungă la server.
Trebuie ca post_max_size să fie mai mare decât upload_max_filesize?
Ar trebui să fie cel puțin la fel de mare, iar puțin mai mare este mai sigur. Fișierul este trimis într-o cerere POST împreună cu alte date din formular, deci întreaga cerere contează pentru post_max_size. WordPress folosește cea mai mică dintre cele două valori ca limită de încărcare, așa că dacă mărești doar upload_max_filesize limita rămâne aceeași.