Tajomstvá a infraštruktúrne hodnoty dodávajte z prostredia, verzovateľné funkčné nastavenia držte v kóde a redakčný obsah nech zostane v databáze. Ku každej hodnote určte vlastníka a precedenciu, staging používajte s odlišnými povereniami a výstupmi a zmeny options nasadzujte idempotentnou migráciou s kontrolou driftu. Po obnove databázy zablokujte živé platby, webhooky a zákaznícke e-maily ešte pred prvým spustením aplikácie. Zámerné rozdiely evidujte ako časovo revidované výnimky.
Konfigurácia WordPressu medzi vývojom, stagingom a produkciou zahŕňa URL, databázu, API poverenia, e-mailový režim, cache, licencie, feature flags aj nastavenia pluginov. Ak sa všetko prenáša kópiou databázy alebo ručným klikaním, tajomstvá sa dostanú do nesprávneho prostredia a dve inštalácie sa postupne rozídu bez vysvetlenia.
Udržateľný model rozlišuje kód, verejnú verzovanú konfiguráciu, tajomstvá prostredia a obsah spravovaný redakciou. Každá hodnota má zdroj pravdy a spôsob nasadenia. Tento návod ukazuje praktické hranice, bezpečné lokálne predvolené voľby, migrácie nastavení a kontrolu driftu bez predstavy, že celú WordPress databázu možno bez kontextu nahradiť súborom.
Roztrieďte hodnoty podľa vlastníctva a citlivosti
Do inventára vložte názov hodnoty, význam, prostredia, citlivosť a vlastníka. Databázové heslo a API token sú tajomstvá infraštruktúry. Zapnutie konkrétnej funkcie môže byť verzovaná aplikačná konfigurácia. Text domovskej stránky je obsah, ktorý spravuje redakcia. Rovnaké uloženie pre všetky tri skupiny komplikuje prístup aj nasadenie.
Určte precedenciu: napríklad bezpečná konštanta prostredia prepisuje predvolenú hodnotu pluginu, no redakčný údaj zostáva v databáze. Skryté prepísanie bez indikácie mätie administrátora, preto rozhranie môže ukázať, že hodnota je riadená nasadením a nedá sa lokálne meniť.
- Tajomstvá dodané prostredím
- Verzovaná funkčná konfigurácia
- Databázový redakčný obsah
- Jasná precedencia a vlastník hodnoty
Tajomstvá držte mimo repozitára a databázových kópií
Produkčné poverenia nevkladajte do témy, pluginu, ukážkového súboru ani exportu databázy. Načítajte ich z bezpečného mechanizmu hostingu alebo správy tajomstiev a aplikácii odovzdajte iba potrebný rozsah. Lokálne prostredie používa vlastné neprodukčné kľúče a zrozumiteľne zlyhá, keď povinná hodnota chýba.
Rotácia potrebuje postup, ktorý dočasne podporí nový aj starý kľúč, ak to služba umožňuje, a potom starý odvolá. Logy maskujú hlavičky a hodnoty. Pri obnove produkčnej databázy do stagingu nahraďte kontakty, webhook URL a platobné poverenia skôr, než povolíte odchádzajúcu komunikáciu.
Nastavenia pluginov migrujte ako verzovanú zmenu
Ak má byť nastavenie rovnaké na všetkých prostrediach, zapíšte požadovaný výsledok do idempotentnej migrácie alebo podporovaného konfiguračného API. Migrácia overí aktuálny stav, zmení iba vlastnené kľúče a uloží svoju verziu. Nekopíruje celý serializovaný option, ktorý môže obsahovať URL, licenciu alebo lokálnu hodnotu.
Pri zmene štruktúry vytvorte mapovanie a možnosť návratu, ak je zásah rizikový. Pred nasadením otestujte čistú inštaláciu aj aktualizáciu staršej verzie. Administratívna zmena vykonaná mimo procesu sa buď importuje do zdroja pravdy, alebo ju kontrola driftu označí na rozhodnutie, nie potichu prepíše.
Feature flags používajte s vlastníkom a koncom
Feature flag umožní oddeliť nasadenie kódu od zapnutia funkcie, no každá vetva zdvojuje testovací priestor. Flag má názov podľa správania, bezpečnú predvolenú hodnotu, vlastníka, cieľovú skupinu a dátum odstránenia. Citlivé oprávnenie nekontrolujte iba klientským flagom; serverové pravidlo zostáva autoritatívne.
Staging môže funkciu zapnúť skôr, ale používa reprezentatívnu konfiguráciu bez produkčných tajomstiev. Pri postupnom zapínaní sledujte chyby a obchodný výsledok. Po stabilizácii odstráňte starú vetvu aj konfiguračný kľúč, inak sa z dočasných prepínačov stane nezdokumentovaný paralelný systém.
Kontrolujte drift a bezpečnosť obnovených dát
Automatická kontrola porovnáva vybrané nekritické hodnoty s deklarovaným očakávaním a hlási rozdiel bez vypisovania tajomstiev. Zároveň overí, že produkcia nemá debug výstup a staging neposiela zákaznícke e-maily, indexáciu či živé platby. Výnimka má dôvod, vlastníka a čas revízie.
Runbook pre obnovu databázy obsahuje prepis domény so serializačne bezpečným nástrojom, anonymizáciu podľa potreby, deaktiváciu odchádzajúcich integrácií, nové salts a vyčistenie cache. Po nasadení spustite smoke test konfigurácie a dokumentujte zdroj každej hodnoty. Konzistentné prostredia nevznikajú ručnou pamäťou, ale opakovateľným procesom.
Časté otázky
Patrí wp-config.php do Git repozitára?
Môže obsahovať verzovateľnú logiku a bezpečné predvolené hodnoty, ale nie reálne tajomstvá. Konkrétne heslá a tokeny dodávajte z chráneného prostredia a ukážkový súbor nech obsahuje iba názvy premenných.
Prečo nestačí kopírovať databázu medzi prostrediami?
Databáza mieša obsah, URL, tajomstvá, licencie a prevádzkové nastavenia. Pri kópii treba riadene prepísať a anonymizovať hodnoty, zablokovať odchádzajúce akcie a zachovať zdroj pravdy konfigurácie.
Ako zistiť, že staging a produkcia majú odlišné nastavenie?
Vytvorte kontrolu vybraných deklarovaných hodnôt a bezpečnostných invariantov, ktorá hlási drift bez zobrazenia tajomstiev. Každý rozdiel potom buď opravte, alebo zdokumentujte ako zámernú výnimku.



