Začínáme
Nainstalujte skeleton WBengine 4.0, ověřte jeho Composer požadavky a spusťte web lokálně, než začnete měnit jeho obsah.
Požadavky
- PHP 8.3 nebo novější s rozšířením
mysqlia rozšířeními vyžadovanými Composer balíčky. - MySQL 8 nebo MariaDB 10.6 a novější.
- Apache s
mod_rewritenebo Nginx s PHP-FPM. - Composer 2. Docker je volitelný.
Aplikace vyžaduje wbengine/wbengine:^4.0. Framework aktuálně přináší firebase/php-jwt; template engine i parser Markdownu jsou jeho součástí. Přesné požadavky na PHP ověřte v metadatech instalované verze.
Rychlé spuštění v Dockeru
git clone https://github.com/rrsoftcz/wbengine-skeleton-app
cd wbengine-skeleton-app
docker compose up --build
Otevřete http://localhost:8080. Při startu webový kontejner spustí bin/wbe install: vytvoří a ověří Settings.json, připraví složku kompilovaných šablon a nainstaluje uzamčené závislosti. Demo účet je admin@example.com, heslo changeme. Před zpřístupněním webu heslo změňte.
Ruční instalace
Příkaz php bin/wbe install vytvoří a ověří nastavení, připraví src/View/Compiled a nainstaluje závislosti podle composer.lock. Oznámí chybný JSON, nečitelná nastavení, nezapisovatelnou cache šablon i chyby Composeru. Nepoužívejte chmod 777; právo zápisu přidělte uživateli PHP webserveru. Pro lokální diagnostiku nastavte debug na true nebo WBENGINE_DEBUG=1. Před nasazením debug vypněte.
php bin/wbe install
Vytvořte databázi, importujte schemas/wbengine_skeletone_app_mysql_template.sql a potom schemas/wbengine_skeletone_app_mysql_template_content.sql. Nastavte src/Config/Settings.json a jako kořen webu použijte public/.
Řešení chyb instalace a výjimek
Při vývoji nastavte v Settings.json debug na true. Šablona WBengine zobrazí typ výjimky, zprávu, soubor, řádek a trasu volání. Pokud nastavení chybí nebo obsahuje neplatný JSON, použijte WBENGINE_DEBUG=1 pouze v soukromém vývojovém prostředí. Ladicí výstup nikdy nezpřístupňujte veřejně. Produkční stránka zobrazí bezpečné vysvětlení a referenční kód; úplnou výjimku najdete v PHP nebo kontejnerovém error logu pod stejným kódem.
Před upgradem databázi zálohujte a dosud nepoužité skripty v schemas/migrations/ aplikujte v pořadí. Docker importuje schéma a seed pouze při vytvoření nového databázového volume. Rebuild webového image existující databázi nezmění.