WordPress bővítmény frissítési hiba: PCLZIP_ERR_BAD_FORMAT – nálam így oldódott meg

Nemrég a Bricks sablon frissítése közben találkoztam egy hibával a WordPressben. A frissítés letöltődött, de a kicsomagolásnál megállt, és ezt az üzenetet kaptam:

Bricks frissítése közben hiba történt: A csomag nem telepíthető.  
PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature

Elsőre ijesztőnek tűnt, de a megoldás szerencsére egyszerű volt. A probléma oka az volt, hogy a szerveren az upload_max_filesize értéke csak 20 MB volt, a Bricks telepítőcsomag viszont ennél nagyobb. Emiatt a WordPress nem tudta teljesen letölteni a fájlt, és egy sérült ZIP-et próbált kicsomagolni.

Megoldás

A cPanelben, a MultiPHP INI Editor segítségével megemeltem az upload_max_filesize értékét 100 MB-ra, és utána a frissítés gond nélkül lefutott.

Egyéb okok, amik miatt előjöhet ez a hiba

Nem csak a fájlméret okozhat gondot. Ha nálad is felbukkan a fenti hibaüzenet, érdemes még ezeket megnézni:

  • post_max_size és memory_limit legyen kellően magas (pl. 128M és 256M), különben nagyobb frissítések szintén elakadhatnak.
  • allow_url_fopen engedélyezve legyen a szerveren, mert az automatikus frissítés távoli URL-ről tölti le a csomagot.
  • /wp-content/upgrade/ mappa ürítése – ha félbeszakadt frissítések maradványai vannak benne, az blokkolhatja a következő próbálkozást.
  • Kézi frissítés – ha minden kötél szakad, a hivatalos forrásból letöltött ZIP fájl kézzel is feltölthető a WordPress admin felületen („Sablon feltöltése”), így a hiba kikerülhető.

Tanulság

Ez a hiba nem csak a Bricksnél fordulhat elő – bármelyik nagyobb sablon vagy plugin esetében előjöhet, ha a szerver korlátozásai nem megfelelőek. Érdemes tehát ellenőrizni és szükség esetén növelni az alábbi értékeket:

  • upload_max_filesize – legalább 64M vagy 100M
  • post_max_size – legalább 128M
  • memory_limit – 256M ajánlott

Hasonló problémád van? Írj nekem, és segítek megoldani!