Guida alla Configurazione Multi-Ambiente di ServBay: Gestione delle Versioni PHP tramite Comandi e Servizi Web
1. Ambiente da Linea di Comando: Applicazione Profonda del .servbay.config
Attraverso il file di configurazione a livello di progetto .servbay.config
, gli sviluppatori possono controllare con precisione le versioni PHP nell'ambiente da linea di comando, consentendo lo sviluppo parallelo di più progetti e l'isolamento delle versioni.
1. Funzionalità Chiave e Principi
• Coesistenza di più versioni: ServBay supporta nativamente la coesistenza di tutte le versioni da PHP 5.6 a 8.5-dev, ogni progetto può specificare la versione necessaria tramite file di configurazione indipendenti.
• Cambio non invasivo: Durante l'esecuzione dei comandi, ServBay riconosce automaticamente il file .servbay.config
nella directory del progetto e carica dinamicamente l'ambiente PHP corrispondente, evitando conflitti di configurazione globale.
2. Metodo di Configurazione
Crea il file .servbay.config
nella directory principale del progetto, aggiungendo il seguente contenuto:
# Specifica la versione PHP (esempio: PHP 8.5-dev)
PHP_VERSION=8.5
2
Verifica di Efficacia:
$ php -v # L'output della versione dovrebbe essere 8.5
$ composer install # La risoluzione delle dipendenze si basa sulla versione PHP attuale
2
3. Tecniche Avanzate e Limitazioni
• Verifica di compatibilità delle versioni: In caso di errori come "Class not found", è necessario verificare la compatibilità dei pacchetti dipendenti con la versione PHP specificata (ad esempio, l'estensione mcrypt
rimossa in PHP 8.x).
• Valore predefinito globale: Se non configurato, verrà utilizzata la versione predefinita globale di ServBay (modificabile nelle Impostazioni
di ServBay).
• Collaborazione tra più servizi: In combinazione con la configurazione della versione Node.js (NODE_VERSION=20
), per un controllo dell'ambiente PHP + Node.js.
4. Esempio di Esecuzione
Di seguito è riportato un esempio pratico del funzionamento di .servbay.config
.
2. Ambiente di Servizio Web: Gestione a Livello di Sito di Versioni PHP Multiple
L'interfaccia di configurazione grafica di ServBay fornisce la capacità di gestire le versioni PHP del servizio web, indipendentemente dall'ambiente da linea di comando.
1. Processo di Configurazione
Aggiungi/Modifica Sito:
• Apri ServBay e vai alla scheda Hosts (Siti).
• Clicca su + per creare un nuovo sito o modificare uno esistente.
• Seleziona la versione target nel menu a discesa PHP Version (ad esempio, 8.3, 8.5-dev, ecc.).Binding di Percorsi e Domini:
• Root Directory: Specifica la directory pubblica del progetto (ad esempio, per Laravel/Applications/ServBay/www/laravel-app/public
).
• Domain: Imposta un dominio personalizzato (ad esempio,laravel.host
), supportando l'emissione automatica di HTTPS.
2. Implementazione Tecnica e Ottimizzazione
• Isolamento dei Servizi: Ogni versione PHP viene eseguita in un processo indipendente, evitando la contaminazione della memoria tra le versioni.
• Ottimizzazione delle Prestazioni: Ottimizzazioni per architetture ARM64/X86_64.
• Risoluzione degli Errori:
• Controlla i log: /Applications/ServBay/var/log/php/php_error.log
• Usa servbayctl status php 8.5
per controllare lo stato dei processi.
3. Espansione su più Server
• Supporto per Apache/Nginx/Caddy: Nel ServBay 1.7.0+ è possibile passare tra server web.
• Integrazione Database: In combinazione con versioni multiple di MySQL/MariaDB/PostgreSQL (ad esempio, per progetti Laravel adattati a MariaDB 11.5).
3. Migliori Pratiche per la Collaborazione tra Ambienti
Scenario | Configurazione da Linea di Comando | Configurazione Servizio Web | |
---|---|---|---|
Manutenzione di Sistemi Legacy | .servbay.config impostato su PHP 5.6 | Configurazione sito su PHP 5.6 | |
Sviluppo di Laravel 11 | Configura PHP 8.3 + Node 20 | Binding del dominio e attivazione di HTTPS | |
Test di Nuove Versioni | Usa PHP 8.5-dev | Ottimizzazione della cache con Redis 7.x |
Attenzioni:
• I moduli PHP da linea di comando e servizio web potrebbero differire (ad esempio, in modalità CLI opcache
è disattivato per impostazione predefinita).
• Aggiorna ServBay Runtime a 1.0.20/1.1.20+ per ottenere le ultime funzionalità PHP.
Attraverso la gestione per scenari descritta sopra, gli sviluppatori possono sfruttare appieno le capacità di controllo delle versioni di ServBay, mantenendo la flessibilità nello sviluppo e la coerenza nell'ambiente di produzione.