Modul 7 · 7.2
Mit kíván egy webáruház a tárhelytől
Modul 7: Láthatóság és tárhely · Olvasási idő: 10 perc
Tanulási cél: A lecke után meg tudja ítélni, hogy egy tárhelycsomag megfelel-e egy WooCommerce-webáruháznak, ellenőrizni és módosítani tudja a legfontosabb PHP-beállításokat, és felismeri, mikor válik kicsivé a csomagja.
Kulcsfogalmak: szerverkövetelmények, PHP verzió, WordPress memórialimit (WP_MEMORY_LIMIT), memory_limit, max_execution_time, max_input_vars, upload_max_filesize, adatbázis, objektum-gyorsítótár, CPU, folyamatok, 503, Resource Limit Is Reached, WooCommerce > Állapot, bővítés
Egy webáruház nagyobb terhelést jelent, mint egy átlagos webhely
Egy átlagos, oldal-gyorsítótárral működő WordPress-webhely a legtöbb látogatót elmentett HTML-ből szolgálja ki. Egy webáruház erre csak félig képes (6.4. lecke): a kosár, a pénztár és a Fiókom oldal minden látogató számára újra elkészül, és amint valaki valamit a kosárba tesz, munkamenetet kap, és a gyorsítótár számára gyakran már nem működik. Ezen felül:
- minden rendelés ír az adatbázisba (rendelés, tételek, címek, készlet, megjegyzések);
- a fizetési szolgáltató egy webhook segítségével jelzi, hogy a fizetés megtörtént, és erre a kérésre gyorsan válaszolni kell;
- a WooCommerce a háttérben futó ütemezett műveleteket használ (7.3. lecke);
- az adminisztráció (rendelések, jelentések, termékek szerkesztése) nagyobb terhelést jelent, mint egy blognál.
Egy webáruház, amely egy kis csomagon napi tíz rendeléssel kiválóan működik, egy kiárusításkor több száz egyidejű látogatónál elakadhat. Ezért érdemes tudni, mire képes a csomagja.
Mit ajánl a WooCommerce
A WooCommerce ajánlott szerverbeállításokat tesz közzé (2026. novemberi állapot, a 10.8-as és újabb verziókhoz):
| Összetevő | Ajánlás |
|---|---|
| WordPress | 6.9 vagy újabb |
| PHP | 8.3 vagy újabb (8.4-ig tesztelve) |
| Adatbázis | MySQL 8.0 vagy újabb, illetve MariaDB 10.6 vagy újabb |
| WordPress memórialimit | 256 MB vagy több |
| HTTPS | kötelező |
Ezek ajánlások, nem minimumkövetelmények: maga a bővítmény a telepítéshez PHP 7.4-et kér. Egy régi PHP-verzión futó webáruház azonban lassabb, és már nem kap biztonsági frissítéseket. Azt, hogyan válthat biztonságosan újabb PHP-verzióra, a WordPress-tanfolyam 8.4. leckéje írja le; webáruháznál a folyamat ugyanaz, csak a pénztárt és a fizetést különösen alaposan tesztelje a staging környezetben.
Hol látja, mi van most beállítva? A WooCommerce > Állapot (Rendszerállapot) oldalon. Ott a WordPress környezet alatt többek között a WordPress memórialimit, a Szerver környezet alatt pedig a PHP verzió, a PHP-limitek és az adatbázis verziója szerepel. Probléma esetén egy fejlesztő vagy egy bővítmény ügyfélszolgálata gyakran ezt a jelentést kéri; a rendszerjelentés lekérésére szolgáló gombbal ("Get system report") másolhatja ki.
A számító PHP-beállítások
Webáruháznál négy beállítással találkozik a leggyakrabban:
- memory_limit (és WP_MEMORY_LIMIT): mennyi memóriát használhat egyetlen PHP-kérés. Ha túl kevés, fehér oldal vagy "Allowed memory size exhausted" üzenet jelenik meg, gyakran jelentéseknél, importálásnál vagy egy nagy variálható termék szerkesztésekor. A WooCommerce 256 MB-os WordPress memórialimitet ajánl. A WordPress a wp-config.php fájlban megadott értéket (
WP_MEMORY_LIMIT) használja, de soha nem többet, mint amennyit maga a PHP megenged. - max_execution_time: meddig tarthat egyetlen kérés. Egy CSV-importálás vagy ezer rendelés exportálása tovább tarthat az alapértelmezettnél. Inkább importáljon kisebb részletekben, mint hogy nagyon magasra állítsa a limitet.
- max_input_vars: hány mezőt küldhet el egy űrlap. Egy sok variációval rendelkező variálható terméknél vagy egy nagy menünél az adminisztrációs felület több száz mezőt küld el. Ha a limit túl alacsony, az utolsó mezőket a rendszer szó nélkül eldobja: a Frissítés gombra kattint, nem lát hibát, de a variációk egy része nem mentődött el. Ha ezt tapasztalja, növelje az értéket (például 3000-re vagy 5000-re), vagy hozzon létre kevesebb variációt (3.2. lecke).
- upload_max_filesize és post_max_size: mekkora lehet egy feltöltés. Ez a termékfotóknál és a letölthető termékeknél (3.3. lecke) fontos.
A legtöbb tárhelyszolgáltatónál ezeket az értékeket a vezérlőpulton módosíthatja. A WebOké esetében ez a DirectAdminban, a csomag PHP-beállításainál történik (lásd KB 212 és KB 200); más szolgáltatóknál hasonlóan működik, néha egy .user.ini fájllal vagy egy php.ini-képernyőn keresztül. Egyszerre csak egy értéket módosítson, és a WooCommerce > Állapot oldalon ellenőrizze, hogy érvénybe lépett-e.
Amikor a csomag kicsivé válik
Megosztott tárhelyen minden csomagnak vannak korlátai: mennyi CPU, mennyi memória és hány egyidejű folyamat áll rendelkezésre. A WebOkénál és más, CloudLinuxot használó szolgáltatóknál ezeket a DirectAdminban, a csomag használati adatainál látja. Ha a webáruháza túllépi őket, a látogatók 503-as hibát vagy például "Resource Limit Is Reached" üzenetet kapnak. Webáruháznál ez különösen kellemetlen: egy vásárló épp fizetni szeretne, vagy a fizetési szolgáltató webhookja nem kap választ, ezért egy kifizetett rendelés "Fizetés függőben" állapotban marad.
Mielőtt nagyobb csomagra váltana, nézze meg, mi okozza a terhelést. A leggyakoribb okok webáruházaknál:
- hiányzó vagy rosszul beállított oldal-gyorsítótár (6.4. lecke);
- botok, amelyek végigjárják a szűrőket, a keresési találatokat vagy a
?add-to-cart=-linkeket; - WP-Cron minden látogatáskor és az ütemezett műveletek túltelt várólistája (7.3. lecke);
- nagy erőforrásigényű bővítmények vagy egy sablon, amely minden oldalon sok adatbázis-lekérdezést futtat;
- hiányzó objektum-gyorsítótár (Redis) sok bejelentkezett vásárló esetén (6.4. lecke).
Az okok felderítésében segít a csomag használati áttekintése, a naplófájlok, és egyes szolgáltatóknál egy olyan eszköz, mint a PHP X-Ray, amely oldalanként megmutatja, melyik függvény lassú (KB 227).
Ha a webáruház jól van beállítva, és mégis eléri a korlátokat, akkor indokolt a bővítés: egy nagyobb csomag vagy egy saját szerver (VPS), ahol Ön határozza meg, hány PHP-folyamat futhat. Ez a lépés több üzemeltetési munkával is jár. Ne a legforgalmasabb hetére tervezze; előbb tesztelje az új helyen (7.3. lecke).
Ami még hozzátartozik egy webáruházhoz
A PHP mellett egy webáruház a következőket kívánja a tárhelytől:
- HTTPS a tanúsítvány automatikus megújításával (WordPress-tanfolyam, 3.1. lecke);
- biztonsági mentések, amelyek a rendelések szempontjából elég gyakoriak, visszaállítási teszttel (6.2. lecke);
- valódi cron az ütemezett feladatokhoz (7.3. lecke);
- megbízható levelezés vagy kapcsolat egy levelezőszolgáltatással (6.1. lecke);
- staging lehetőség (7.3. lecke);
- elég nagy adatbázis: a rendelések és az ütemezett műveletek minden nap gyarapodnak.
A Theehuis Example webáruháza egy átlagos tárhelycsomagon indult. Egy kedvezményes hírlevél után egy óra alatt több forgalom érkezett, mint máskor egy hét alatt, és a fizetések elakadtak. A használati áttekintésben folyamatosan a folyamatok maximális száma volt elérve. Az ok: egy sablonfrissítés után kikapcsolt az oldal-gyorsítótár. A gyorsítótár visszakapcsolása után a következő akció 503-as hiba nélkül zajlott le.
Összefoglalás
- Egy webáruház nagyobb terhelést jelent, mint egy átlagos webhely: dinamikus oldalak, adatbázisba írás, webhookok és ütemezett műveletek.
- A WooCommerce PHP 8.3+, MySQL 8.0+ vagy MariaDB 10.6+, 256 MB memórialimit és HTTPS használatát ajánlja; az értékeit a WooCommerce > Állapot oldalon látja.
- Figyeljen a memory_limit, a max_execution_time, a max_input_vars (észrevétlen adatvesztés sok variációnál) és a feltöltési korlátok értékére.
- Az 503-as hiba vagy a Resource Limit Is Reached üzenet azt jelenti, hogy elérte a csomag korlátait; előbb keresse meg az okot, utána bővítsen.
Kvíz
Feladat
Feladat A7.2: Megfelel az Ön PHP-verziója a WooCommerce-nek? Nyissa meg a WooCommerce > Állapot oldalt, és jegyezze fel a PHP verziót (Szerver környezet) és a WordPress memórialimitet MB-ban (WordPress környezet). Adja meg a webáruháza címét és ezt a két értéket. A program megkeresi a PHP-verziója sorozatát a php.net táblázatában (mely verziók kapnak még frissítéseket), és megnézi, hogy a kezdőlap mutat-e PHP-verziót tartalmazó X-Powered-By fejlécet. Zöld, ha a sorozata még aktív támogatást kap és legalább 8.3, a memórialimit pedig legalább 256. Narancssárga, ha a sorozata már csak biztonsági frissítéseket kap, ha 8.3-nál alacsonyabb, de még támogatott, ha a memórialimit 128 és 255 között van, vagy ha a webhelye egy fejlécben megmutatja a PHP-verziót. Piros, ha a sorozata már nem kap frissítéseket vagy ismeretlen, ha a memórialimit 128 alatt van, vagy ha a fejléc más sorozatot mutat, mint amit Ön megadott ("több PHP-verzió is fut?").
Kérdés önmagának (nem kerül ellenőrzésre): mi szerepel a WooCommerce > Állapot oldalon a max_input_vars és a maximális feltöltési méret mellett? Elég ez a legnagyobb termékéhez és a legnagyobb letöltéséhez?
Bővebben olvasva
Ezek a cikkek a WebOké vezérlőpultjain szükséges lépéseket írják le; más vezérlőpultokon hasonlóan működnek.
- PHP-verzió és PHP-beállítások módosítása (és teendők, ha frissítés után hibák jelentkeznek)
- A feltöltés nem sikerül: növelje az upload_max_filesize és a max_execution_time értékét
- DirectAdmin útmutató 14.1: A PHP-verzió kiválasztása (Select PHP version)
- DirectAdmin Resource Usage és lassú weboldalak (Resource Limit Is Reached)
- DirectAdmin útmutató 17.5: 503 vagy "Resource Limit Is Reached": mit tegyen ilyenkor?
- Ingyenes WordPress-tanfolyam 8.4: PHP-verziók és frissítések
- Server requirements (woocommerce.com, angol nyelven): https://woocommerce.com/document/server-requirements/
