
⚙️ Slik fikser du feilen "The uploaded file exceeds the upload_max_filesize directive" i php.ini
Du laster opp et tema, en utvidelse eller et bilde til WordPress-mediebiblioteket og ser en rød linje: «The uploaded file exceeds the upload_max_filesize directive in php.ini.» Filen er på 10 megabyte, og WordPress nekter å ta den imot. En velkjent situasjon for alle som administrerer et nettsted.
Problemet ligger ikke hos WordPress eller filen din. Driftsleverandører begrenser opplastingsstørrelser på PHP-nivå, og standardgrensen på 2 megabyte har ikke endret seg på årevis. Du kan øke den på fem minutter ved hjelp av en av de fem metodene nedenfor, fra den enkleste til den mer avanserte.
💡 Rask oversikt:
- Øk grensen via wp-config.php med et enkelt
ini_set-kall, fungerer hos de fleste hosts - Endre innstillinger i cPanel via MultiPHP INI Editor hvis driftsleverandøren din bruker cPanel
- Opprett eller rediger php.ini via FTP, en metode som fungerer uavhengig av kontrollpanel
- Legg til direktiver i.htaccess når du ikke har tilgang til php.ini
- Som en siste utvei, legg til
@ini_seti functions.php i barnetemaet ditt
Hvor upload_max_filesize-grensen kommer fra
Direktivet upload_max_filesize ligger i konfigurasjonsfilen php.ini, som er hovedinnstillingsfilen for PHP på serveren din. Det bestemmer maksimal størrelse for én enkelt opplastet fil. Standardverdien er 2 megabyte, noe som er nok for små bilder, men et WordPress-tema eller en video vil ikke få plass innenfor den grensen.
To andre direktiver fungerer sammen med det: post_max_size (total POST-forespørselsstørrelse, standard 8 MB) og memory_limit (minne tilgjengelig for skriptet, standard 128 MB). Alle tre henger sammen: hvis du øker upload_max_filesize, må du kontrollere at post_max_size ikke er lavere enn den nye verdien, ellers vil begrensningen forbli på det forrige nivået.
Du kan sjekke gjeldende grenser direkte fra WordPress-administrasjonspanelet: gå til Media → Legg til ny og se på linjen under opplastingsområdet, som viser maksimal størrelse. Alternativt kan du installere utvidelsen PHP Info og finne de relevante direktivene i utdataene fra phpinfo().
1. Øk grensen via wp-config.php
Den raskeste metoden som fungerer på de fleste delte hostingløsninger. Filen wp-config.php ligger i nettstedets rotmappe og lastes før noe WordPress-kode kjøres, så ini_set-direktiver i den får prioritet.
Koble til serveren via en FTP-klient (FileZilla, et gratis og pålitelig alternativ) eller åpne Filbehandler i driftsleverandørens kontrollpanel. Finn wp-config.php i rotmappen (vanligvis public_html):

Legg til følgende linjer på slutten av filen, før kommentaren /* That's all, stop editing! */:
1 @ini_set('upload_max_filesize', '64M'); 2 @ini_set('post_max_size', '80M'); 3 @ini_set('memory_limit', '256M'); 4 @ini_set('max_execution_time', '300');
Lagre filen og oppdater siden for WordPress-mediebiblioteket. Opplastingsgrensen bør endres til 64 megabyte. Hvis tallet ikke har endret seg, har driftsleverandøren blokkert ini_set, så gå videre til neste metode.
2. Endre innstillinger via MultiPHP INI Editor i cPanel
Hvis driftsleverandøren din bruker cPanel, lar den innebygde MultiPHP INI Editor deg endre PHP-innstillinger uten å redigere filer manuelt. Den bruker automatisk verdier på det valgte nettstedet og overskriver driftsleverandørens standardinnstillinger.
Logg inn på cPanel og finn delen Programvare → MultiPHP INI Editor:

Velg ønsket nettsted fra rullegardinmenyen øverst på siden. Bla ned til direktivet upload_max_filesize og skriv inn den nye verdien (for eksempel 64M). Finn post_max_size nedenfor og sett den litt høyere, for eksempel 80M. Klikk på Bruk. Endringene trer i kraft umiddelbart.
Denne metoden er å foretrekke fremfor den første: cPanel håndterer syntaks automatisk, og innstillingene tilbakestilles ikke etter WordPress-oppdateringer.
3. Rediger php.ini via FTP
Hvis du ikke har tilgang til cPanel eller driftsleverandøren din ikke støtter MultiPHP INI Editor, kan du jobbe direkte med filen php.ini. Den styrer alle PHP-innstillinger, og å endre den er den mest pålitelige måten å øke grensene på.
Koble til serveren via FTP og naviger til nettstedets rotmappe. Finn filen php.ini. Hvis den ikke finnes (bruker-php.ini er ofte fraværende på delt hosting), opprett en ny tekstfil med det navnet:

Legg til følgende direktiver i filen:
1 upload_max_filesize = 64M 2 post_max_size = 80M 3 memory_limit = 256M 4 file_uploads = On 5 max_execution_time = 300 6 max_input_time = 300
Lagre filen. For at endringene skal tre i kraft, krever noen driftsleverandører et suPHP-direktiv i .htaccess-filen. Legg til denne blokken i .htaccess:
1 <IfModule mod_suphp.c> 2 suPHP_ConfigPath /home/yourusername/public_html 3 </IfModule>
Bytt ut yourusername med brukernavnet ditt for hostingkontoen. Hvis nettstedet krasjer med en feilmelding etter at du har lagt til denne blokken, fjern den: serveren din kjører på CGI og krever ikke suPHP.
På lokale servere avhenger banen til php.ini av plattformen: XAMPP (Windows): C:\xampp\php\php.ini; MAMP (macOS): /Applications/MAMP/conf/php/php.ini; LAMP (Linux): /etc/php/version/apache2/php.ini. Etter redigering, start webserveren på nytt.
4. Legg til direktiver i.htaccess
Når hostingleverandøren har blokkert tilgang til php.ini og ini_set ikke fungerer, er siste skanse på servernivå .htaccess-filen. Den lar deg angi PHP-innstillinger for en bestemt nettstedmappe ved hjelp av php_value-direktiver.
Koble til via FTP og finn .htaccess i rotmappen. Last ned en sikkerhetskopi til datamaskinen din (påkrevd!). Legg deretter til følgende linjer på slutten av filen:

1 php_value upload_max_filesize 64M 2 php_value post_max_size 80M 3 php_value memory_limit 256M 4 php_value max_execution_time 300 5 php_value max_input_time 300
Lagre .htaccess og oppdater nettstedet. Hvis en 500 Internal Server Error vises i stedet for nettstedet, kjører serveren din på CGI, og php_value-direktivet i .htaccess støttes ikke. Slett de tilføyde linjene for å gjenopprette nettstedet og bruk metode 3 (opprett php.ini).
Vi dekket 500-feilen og varianten 502 i detalj i vår guide til å fikse WordPress-serverfeil.
5. Legg til @ini_set i temaets functions.php
Denne metoden er for situasjoner der alle tidligere metoder er utilgjengelige, eller du ønsker å beholde innstillingene i temalageret. Legg til koden i barnetemaets functions.php-fil, som kjøres ved hver forespørsel og overstyrer grenser i sanntid.
1 @ini_set('upload_max_filesize', '64M'); 2 @ini_set('post_max_size', '80M'); 3 @ini_set('memory_limit', '256M'); 4 @ini_set('max_execution_time', '300');
Plasser koden på slutten av functions.php, men før den avsluttende ?> (hvis den finnes). Bruk et barnetema: når hovedtemaet oppdateres, tilbakestilles redigeringer i hovedtemaets functions.php, mens et barnetema overlever oppdateringer uten tap.
Etter at du har lagt til koden, sjekk grensen i WordPress' mediebibliotek. Merk at på noen hoster er ini_set for upload_max_filesize blokkert på PHP-nivå (PHP_INI_SYSTEM-direktivet tillater ikke endring av verdien under kjøring). I så fall vil @ini_set bli stille ignorert, og du trenger metode 3 eller 4.
Hvorfor grensen ikke ble endret: diagnostikk
Fulgte alle instruksjoner, men grensen forble den samme? Gå gjennom denne sjekklisten:
post_max_sizeer mindre enn den nyeupload_max_filesize. Dette er den vanligste årsaken:post_max_sizemå være minst like stor som, og helst 20-30% større enn,upload_max_filesize: PHP-dokumentasjonen krever eksplisitt atpost_max_size≥upload_max_filesize. Masseopplasting av flere filer og skjemafelter teller med ipost_max_size.- Filen ble opprettet i feil mappe. PHP leter etter
php.inii skriptkatalogen, og beveger seg deretter oppover i treet til serverroten. Plasserphp.inii nettstedets rot (public_html), ikke i en undermappe. - PHP-cache (OPcache) lagrer den gamle konfigurasjonen. Noen servere cacher
php.ini. Start PHP på nytt via hostingpanelet eller vent 5-10 minutter til cachen utløper. - Serveren kjører CGI/FastCGI og ignorerer
.htaccess. Endre tilnærming: brukphp.ini(metode 3) elleruser.inifor FastCGI. - Hostingleverandøren har låst grensen. På ultrabillige abonnementer er opplastingsgrensen fast og kan ikke endres med noen metode, unntatt ved å oppgradere abonnementet.
Hvis ingen av disse punktene hjalp, kontakt hosting-support. Oppgi domenet ditt, metoden du brukte for å endre grensen, og be dem bekrefte om overstyring av upload_max_filesize er tillatt på ditt abonnement.
Videoopplæring
Se den trinnvise prosessen for å fikse denne feilen fra diagnostikk til endelig verifisering i denne videoen:
⁉️🤔 Ofte stilte spørsmål
Hvilken verdi bør jeg velge for upload_max_filesize?
For de fleste nettsteder er 64 MB tilstrekkelig, og dekker opplasting av temaer, utvidelser og høyoppløselige bilder. Jobber du med videofiler eller store ZIP-arkiver via administrasjonspanelet, sett den til 128-256 MB. Ikke jag gigabyte uten grunn: jo høyere grensen er, desto mer minne reserverer serveren for hver opplastingsforespørsel.
Kan jeg laste opp en fil utenom grensen?
Ja, via FTP. En FTP-klient kobler seg direkte til serveren og går ikke gjennom PHP-behandleren, så grensene for
upload_max_filesizegjelder ikke for den. Last opp filen tilwp-content/uploadsvia FTP, og registrer den deretter i WordPress-mediebiblioteket ved hjelp av utvidelsen Add From Server.
Hva er forskjellen på upload_max_filesize og post_max_size?
upload_max_filesizeer maksimal størrelse for én enkelt fil i en opplasting.post_max_sizeer totalstørrelsen for hele POST-forespørselen, inkludert alle filer, skjemafelter og tjenesteheadere. Laster du opp tre filer på 20 MB, børupload_max_filesizevære ≥ 20 MB, menspost_max_sizebør være ≥ 60 MB pluss litt buffer for skjemaet. Derfor settespost_max_sizealltid høyere ennupload_max_filesize.
Hvorfor tilbakestilles grensene etter WordPress-oppdateringer?
WordPress rører ikke PHP-serverinnstillinger under oppdateringer, men hvis du redigerte
wp-config.phpeller hovedtemaetsfunctions.php, kan kjerne- eller temaoppdateringer ha overskrevet disse filene. Ha alltid egendefinerte PHP-innstillinger iphp.ini, cPanels MultiPHP INI Editor eller et child theme: disse stedene påvirkes ikke av oppdateringer.
Må jeg starte serveren på nytt etter å ha endret php.ini?
For delt hosting og cPanel, nei: endringer trer i kraft automatisk i løpet av få minutter. For VPS og dedikerte servere med PHP-FPM, start tjenesten på nytt:
sudo systemctl restart php-fpm(ellerphp8.3-fpm, avhengig av versjon). Apache med mod_php fanger vanligvis opp endringer uten omstart.
Hva du gjør hvis grensen fortsatt ikke øker
De fem metodene ovenfor dekker praktisk talt ethvert hosting-scenario. Fra grunnleggende wp-config.php til child theme functions.php har du gått gjennom hele kjeden. Hvis grensen forblir uendret etter at du ærlig har utført hvert trinn og kjørt diagnostikk, er årsaken en streng policy hos hosting-leverandøren, og du kan ikke omgå den uten å bytte abonnement eller leverandør.
Kontakt support og spør direkte om overstyring av upload_max_filesize er tillatt på ditt abonnement. Et svar om «nei» er grunn til å vurdere å flytte til en VPS eller et mer fleksibelt delt abonnement der du styrer PHP-innstillingene uten hensyn til servernaboer. I mellomtiden laster du opp store filer via FTP: der finnes ingen størrelsesbegrensninger, og Add From Server vil knytte dem til mediebiblioteket.



