Sviluppo locale nativo
Questo documento descrive il percorso di sviluppo locale supportato per WebBlocks CMS con PHP, Composer, Nginx, MySQL o MariaDB e Redis installati localmente. Gli strumenti locali basati su container non fanno più parte del flusso di lavoro del progetto.
URL locale
Utilizzate HTTPS attendibile e domini .test per i flussi di lavoro nel browser.
- URL del CMS:
https://webblocks-cms.test - Admin:
https://webblocks-cms.test/webadmin - Installatore:
https://webblocks-cms.test/install
php artisan serve resta utile per controlli rapidi da CLI o sulle rotte, ma la destinazione normale del browser deve essere la configurazione attendibile Nginx/PHP-FPM descritta sopra.
Verifica di preparazione
Eseguite:
composer native:doctor
Il comando doctor verifica la preparazione del runtime locale senza installare servizi né modificare file locali.
Controlli manuali utili:
php -v
composer --version
nginx -t
mysql --version
redis-cli ping
Nelle installazioni Homebrew su Apple Silicon, i file di servizio e i log si trovano di solito in /opt/homebrew. Nelle installazioni Homebrew su Intel, si trovano di solito in /usr/local.
Configurazione da zero
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan db:seed
php artisan storage:link
Aprite https://webblocks-cms.test/install per la procedura guidata nel browser quando l'installazione non è ancora completa.
Ambiente
Valori tipici in locale nativo:
APP_ENV=local
APP_URL=https://webblocks-cms.test
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=webblocks_cms
DB_USERNAME=webblocks_cms
DB_PASSWORD=
CACHE_STORE=database
SESSION_DRIVER=database
QUEUE_CONNECTION=sync
CMS_BACKUP_EXECUTION=auto
Utilizzate un database e un utente locali separati per l'installazione del CMS. Se la vostra macchina ha già un'istanza MySQL/MariaDB occupata, utilizzate una porta separata e i valori .env corrispondenti.
Backup e ripristini
I comandi di backup e ripristino utilizzano le CLI locali del database in modalità nativa:
- I backup MySQL/MariaDB richiedono
mysqldumpomariadb-dump. - I ripristini MySQL/MariaDB richiedono
mysqlomariadb. - I backup e i ripristini SQLite utilizzano percorsi PHP/PDO.
CMS_BACKUP_EXECUTION=auto e CMS_BACKUP_EXECUTION=direct si risolvono entrambi in un'esecuzione diretta della CLI locale per MySQL/MariaDB. Il progetto non richiede alcun comando di container per il backup o il ripristino.
Controllo rapido (smoke check)
Dopo riavvii di servizi, ripristini o modifiche dell'ambiente, eseguite:
composer native:smoke
Per test mirati:
php artisan test --filter=PluginCatalogBrowserTest
composer test:release-fast
composer format:changed
Risoluzione dei problemi
Se il browser raggiunge il sito sbagliato, verificate che il server block di Nginx sia proprietario di webblocks-cms.test, che il certificato sia attendibile e che /etc/hosts punti il dominio a 127.0.0.1.
Se i comandi del database falliscono, verificate DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME e DB_PASSWORD in .env, quindi eseguite:
php artisan config:clear
php artisan migrate:status
Se le funzionalità basate su Redis non funzionano, verificate che il servizio Redis locale sia in esecuzione:
redis-cli ping