Projektbasierte Umgebungskonfiguration mit der Datei .servbay.config
Überblick
ServBay ist ein leistungsstarkes Tool für lokale Webentwicklungsumgebungen, das es Entwicklern erlaubt, für verschiedene Projekte unabhängige Laufzeitumgebungen zu definieren. Das Herzstück dieser Funktion ist die Unterstützung für eine Datei namens .servbay.config
, die direkt im jeweiligen Projektverzeichnis angelegt wird.
Mithilfe der .servbay.config
-Datei können Sie für ein bestimmtes Projekt gezielt die benötigten Sprachversionen wie PHP, Node.js, Python, Go, Java u.v.m. angeben sowie Einstellungen für Node.js-Paketmanager (wie NPM und Yarn) festlegen – etwa die Registry-URL oder das Cache-Verzeichnis. Diese projektbasierte, feingranulare Kontrolle steigert die Effizienz und den Komfort bei der Entwicklung erheblich, da jedes Projekt stabil in seiner jeweils benötigten Umgebung ausgeführt werden kann und Versionskonflikte vermieden werden.
Funktionsweise der Datei .servbay.config
Beim Start oder erneuten Laden einer Website prüft ServBay, ob im Wurzelverzeichnis der Website eine .servbay.config
-Datei vorhanden ist. Ist dies der Fall, liest ServBay die dort definierten Einstellungen aus und wendet sie für die jeweilige Website an. Projektbezogene Konfigurationswerte überschreiben dabei die entsprechenden globalen ServBay-Einstellungen. Existiert keine .servbay.config
oder ist ein Wert nicht definiert, so greift ServBay automatisch auf seine globalen Voreinstellungen zurück.
Dieses Prinzip garantiert einen nahtlosen Wechsel zwischen unterschiedlichen Projekten, da jedes Projekt stets die individuell benötigte Umgebung mitführt.
Wie man eine .servbay.config
-Datei erstellt und konfiguriert
Das Anlegen und Konfigurieren einer .servbay.config
-Datei ist äußerst einfach.
Speicherort der Datei
Erstellen Sie im Wurzelverzeichnis Ihres Projekts eine Datei mit dem Namen .servbay.config
. Das Projektverzeichnis befindet sich üblicherweise innerhalb des ServBay-Webverzeichnisses, z. B. unter /Applications/ServBay/www/Ihr-Projektname/
.
Syntax der Konfiguration
Die .servbay.config
-Datei verwendet ein simples KEY=VALUE
-Format, wobei jede Zeile eine Einstellung definiert. Mit #
lassen sich Kommentare einfügen, um die Lesbarkeit zu erhöhen.
Beispielhafte Konfiguration
Im Folgenden sehen Sie ein Beispiel für eine .servbay.config
, in der verschiedene Sprachversionen und Paketmanager-Einstellungen gesetzt werden:
bash
# Beispiel der Datei .servbay.config
# Gibt die PHP-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
PHP_VERSION=8.5
# Gibt die Node.js-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
NODE_VERSION=20
# Legt die Registry-URL für Yarn fest, um den Download von Abhängigkeiten zu beschleunigen.
YARN_CONFIG_REGISTRY=https://npmreg.proxy.ustclug.org/
# Legt die Registry-URL für NPM fest, um den Download von Abhängigkeiten zu beschleunigen.
NPM_CONFIG_REGISTRY=https://npmreg.proxy.ustclug.org/
# Gibt das lokale Cache-Verzeichnis für NPM an. Hinweis: Der Pfad ist relativ zum ServBay-Installationsordner.
NPM_CONFIG_CACHE=/Applications/ServBay/tmp/npm/cache
# Gibt das lokale Cache-Verzeichnis für Yarn an. Hinweis: Der Pfad ist relativ zum ServBay-Installationsordner.
YARN_CONFIG_CACHE=/Applications/ServBay/tmp/yarn/cache
# Gibt die Ruby-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
RUBY_VERSION=2.7
# Gibt die Java (OpenJDK)-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
JAVA_VERSION=21
# Gibt die Python-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
PYTHON_VERSION=3.11
# Gibt die .NET-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
DOTNET_VERSION=5.0
# Gibt die Go-Laufzeitversion an. Diese Version muss in ServBay installiert sein.
GO_VERSION=1.12
# Definiert den Go-Modulproxy-Server, um schnelleren Modul-Download zu ermöglichen.
GOPROXY=https://goproxy.cn,direct
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Wichtiger Hinweis: Die in diesem Beispiel genannten Versionsnummern (PHP_VERSION=8.5
, NODE_VERSION=20
usw.) dienen lediglich zur Veranschaulichung. Tragen Sie in der Praxis nur Werte ein, die sowohl zu Ihren Projektanforderungen passen als auch in ServBay installiert und unterstützt werden. Sollte eine angegebene Version nicht verfügbar sein, verwendet ServBay entweder eine Standardversion oder gibt eine Fehlermeldung aus.
Unterstützte Konfigurationstypen
Basierend auf obigem Beispiel unterstützt die .servbay.config
-Datei hauptsächlich folgende Einstellungstypen:
Angabe der Umgebungsversionen:
PHP_VERSION
: PHP-Version festlegen.NODE_VERSION
: Node.js-Version festlegen.RUBY_VERSION
: Ruby-Version festlegen.JAVA_VERSION
: Java (OpenJDK)-Version festlegen.PYTHON_VERSION
: Python-Version festlegen.DOTNET_VERSION
: .NET-Version festlegen.GO_VERSION
: Go-Version festlegen.- (Bitte entnehmen Sie alle weiteren unterstützten Umgebungen und die zugehörigen Variablennamen der ServBay-Dokumentation oder der ServBay-App.)
Konfiguration der Paketmanager (Node.js):
YARN_CONFIG_REGISTRY
: Registry-URL für Yarn.NPM_CONFIG_REGISTRY
: Registry-URL für NPM.NPM_CONFIG_CACHE
: Pfad für das lokale NPM-Cache-Verzeichnis.YARN_CONFIG_CACHE
: Pfad für das lokale Yarn-Cache-Verzeichnis.
Go Modul-Proxy-Konfiguration:
GOPROXY
: URL des Go-Modulproxy-Servers.
Diese Einstellungen ermöglichen es Ihnen, Isolation und volle Kontrolle für jedes Projekt sicherzustellen, ohne andere Projekte zu beeinträchtigen.
Praktische Anwendung und Überprüfung
Nachdem Sie Ihre .servbay.config
-Datei eingerichtet und konfiguriert haben, stellen Sie sicher, dass ServBay Ihr Projekt bereits geladen hat (das heißt, Ihr Projekt erscheint in der Website-Liste der ServBay-App). ServBay liest die Konfigurationsdatei beim (Neu-)Laden der Website aus.
Um zu überprüfen, ob die Einstellungen angewendet wurden, gehen Sie wie folgt vor:
Überprüfen Sie in der ServBay-App: In der ServBay-Oberfläche lassen sich die aktuell für Ihr Projekt aktiven Sprachversionen oft in den Website-Details oder entsprechenden Ansichten einsehen.
Per Kommandozeile verifizieren: Öffnen Sie das Terminal in ServBay und navigieren Sie ins Wurzelverzeichnis Ihres Projekts. Führen Sie anschließend die passenden Versionsabfragen aus, z. B.:
- PHP-Version prüfen:
php -v
- Node.js-Version prüfen:
node -v
- Yarn-Version prüfen:
yarn -v
- NPM-Version prüfen:
npm -v
- Python-Version prüfen:
python -V
oderpython3 -V
- Go-Version prüfen:
go version
- Java-Version prüfen:
java -version
- .NET-Version prüfen:
dotnet --version
- Ruby-Version prüfen:
ruby -v
Überprüfen Sie dann, ob die ausgegebenen Versionen mit den in Ihrer.servbay.config
definierten übereinstimmen.
- PHP-Version prüfen:
Verifizierung über eine Webseite (für PHP): Legen Sie im Projektverzeichnis eine einfache PHP-Datei an (z.B.
info.php
) mit folgendem Inhalt:<?php phpinfo(); ?>
. Rufen Sie diese Datei im Browser auf (z. B.http://ihr-projekt.servbay.demo/info.php
) und prüfen Sie in derphpinfo
-Ausgabe, ob die richtige PHP-Version geladen wird.
Das folgende Bild zeigt beispielhaft, wie die projektbezogene Konfiguration in der ServBay-Oberfläche dargestellt werden könnte:
(Prüfen Sie die tatsächliche ServBay-Ausgabe, um konkrete Hinweise zur Wirksamkeit Ihrer Konfigurationsdatei zu erhalten.)
Hinweise
- Der Dateiname
.servbay.config
muss exakt stimmen, ohne Schreibfehler. - Die Datei muss sich im Wurzelverzeichnis Ihres Projekts befinden.
- Es dürfen nur Versionen eingetragen werden, die in Ihrer ServBay-Installation installiert und unterstützt werden.
- Die Einträge sind zeilenweise als
KEY=VALUE
anzugeben. - Syntaxfehler können dazu führen, dass die Datei komplett ignoriert oder einzelne Einstellungen nicht angewendet werden.
- Die Angaben in
.servbay.config
überschreiben die globalen ServBay-Einstellungen und gelten ausschließlich für das jeweilige Projekt.
Häufig gestellte Fragen (FAQ)
F: Was passiert, wenn in meinem Projektverzeichnis keine .servbay.config
vorhanden ist?
A: In diesem Fall verwendet ServBay die globalen Umgebungs-Einstellungen, die Sie in der App hinterlegt haben.
F: Was geschieht, wenn ich in der .servbay.config
eine in ServBay nicht installierte Version angebe?
A: ServBay zeigt einen Fehler an – das genaue Verhalten hängt von Ihrer ServBay-Version und -Konfiguration ab. Installieren Sie zur sicheren Verwendung gewünschte Umgebungen stets zuerst über die ServBay-App.
F: Muss ich ServBay neu starten, nachdem ich die .servbay.config
bearbeitet habe?
A: In der Regel genügt es, die betroffene Website in ServBay neu zu laden oder kurz zu stoppen und erneut zu starten. Ein kompletter Neustart der App ist normalerweise nicht nötig.
F: Wirken sich Einstellungen aus .servbay.config
auf andere Projekte aus?
A: Nein. Jede .servbay.config
beeinflusst ausschließlich das jeweilige ServBay-Webverzeichnis, in dem sie liegt.
Fazit
Mit der .servbay.config
-Datei bietet ServBay Entwicklern eine äußerst flexible und leistungsfähige Möglichkeit, projektbezogene Umgebungen individuell zu steuern. Egal, ob Sie ein Legacy-Projekt mit speziellen Altversionen pflegen oder ein modernes Projekt mit neuester Technik unterstützen möchten: Über gezielte Konfigurationen trennen und wechseln Sie Umgebungen mühelos und erhöhen so deutlich die Flexibilität und Effizienz Ihrer lokalen Entwicklung. Nutzen Sie dieses mächtige Feature, um Ihre Entwicklungsabläufe noch reibungsloser und produktiver zu gestalten.