Projectgebonden omgevingsconfiguratie met het .servbay.config-bestand
Overzicht
ServBay is een krachtige lokale webontwikkeltool waarmee ontwikkelaars per project een aparte runtime-omgeving kunnen instellen. De kern van deze functionaliteit is de ondersteuning voor het aanmaken van een .servbay.config
-bestand in iedere projectmap.
Met het .servbay.config
-bestand kun je eenvoudig de gewenste versies van talen zoals PHP, Node.js, Python, Go, Java en meer speciferen voor een bepaald project. Ook kun je instellingen voor package managers van Node.js (zoals NPM en Yarn), waaronder registry-adressen en cache-mappen, eenvoudig configureren. Deze projectgebaseerde, fijnmazige controle verhoogt de ontwikkelsnelheid en het gebruiksgemak aanzienlijk. Het zorgt ervoor dat ieder project stabiel in een gewenste omgeving draait, waardoor versieconflicten verleden tijd zijn.
Hoe werkt het .servbay.config
-bestand?
Wanneer ServBay wordt gestart of een website herlaadt, controleert het of er een .servbay.config
-bestand in de hoofdmap van de website staat. Als het bestand bestaat, leest ServBay de configuratie en past deze uitsluitend toe op die betreffende website. Deze projectinstellingen overschrijven de overeenkomstige waarden uit de globale configuratie van ServBay. Als het .servbay.config
-bestand ontbreekt of een bepaalde instelling niet is opgegeven, worden de globale waarden als standaard gebruikt.
Dit systeem maakt het schakelen tussen projecten eenvoudig, omdat ieder project z’n eigen omgeving met zich meedraagt.
Hoe maak en configureer je het .servbay.config
-bestand
Het aanmaken en instellen van een .servbay.config
-bestand is zeer eenvoudig.
Bestandlocatie
Maak in de hoofdmap van je project een bestand aan met de naam .servbay.config
. De hoofdmap bevindt zich doorgaans onder het ServBay-websitespad, bijvoorbeeld /Applications/ServBay/www/jouw-projectnaam/
.
Configuratiesyntaxis
Het .servbay.config
-bestand maakt gebruik van het eenvoudige KEY=VALUE
-formaat: één configuratie per regel. Je kunt de #
gebruiken om opmerkingen toe te voegen en zo de leesbaarheid te vergroten.
Voorbeeld van configuratie-opties
Hieronder zie je een voorbeeld van een .servbay.config
-bestand waarin diverse omgevingversies en package manager-instellingen worden geconfigureerd:
bash
# Voorbeeld van het .servbay.config bestand
# Specificeer de gebruikte PHP-versie. Zorg dat deze versie in ServBay geïnstalleerd is.
PHP_VERSION=8.5
# Geef de gebruikte Node.js-versie aan. Zorg dat ServBay deze versie ondersteunt.
NODE_VERSION=20
# Stel de mirrorregistry in voor Yarn om de download van afhankelijkheden te versnellen.
YARN_CONFIG_REGISTRY=https://npmreg.proxy.ustclug.org/
# Stel de mirrorregistry in voor NPM om sneller te installeren.
NPM_CONFIG_REGISTRY=https://npmreg.proxy.ustclug.org/
# Definieer het lokale cachepad voor NPM. Let op: dit pad is relatief ten opzichte van de installatiemap van ServBay.
NPM_CONFIG_CACHE=/Applications/ServBay/tmp/npm/cache
# Definieer het lokale cachepad voor Yarn. Let op: dit pad is relatief ten opzichte van de installatiemap van ServBay.
YARN_CONFIG_CACHE=/Applications/ServBay/tmp/yarn/cache
# Geef de gewenste Ruby-versie op. Zorg dat deze in ServBay geïnstalleerd is.
RUBY_VERSION=2.7
# Geef de gebruikte Java (OpenJDK)-versie op. Zorg dat deze in ServBay geïnstalleerd is.
JAVA_VERSION=21
# Geef de gewenste Python-versie op. Zorg dat deze in ServBay geïnstalleerd is.
PYTHON_VERSION=3.11
# Geef de gewenste .NET-versie op. Zorg dat deze in ServBay geïnstalleerd is.
DOTNET_VERSION=5.0
# Geef de gewenste Go-versie op. Zorg dat deze in ServBay geïnstalleerd is.
GO_VERSION=1.12
# Stel proxyservers voor Go-modules in om downloads te versnellen.
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
Let op: De versienummers in het voorbeeld (PHP_VERSION=8.5
, NODE_VERSION=20
, enzovoort) zijn uitsluitend ter illustratie. In de praktijk vul je de vereiste versies in op basis van jouw projecten en de geïnstalleerde/software die door ServBay wordt ondersteund. Als de opgegeven versie niet is geïnstalleerd, zal ServBay mogelijk de standaardversie gebruiken of een foutmelding tonen.
Ondersteunde configuratietypes
Op basis van bovenstaand voorbeeld, ondersteunt het .servbay.config
-bestand voornamelijk de volgende configuraties:
Specifieke omgevingversies:
PHP_VERSION
: PHP-versie specificeren.NODE_VERSION
: Node.js-versie specificeren.RUBY_VERSION
: Ruby-versie specificeren.JAVA_VERSION
: Java (OpenJDK)-versie specificeren.PYTHON_VERSION
: Python-versie specificeren.DOTNET_VERSION
: .NET-versie specificeren.GO_VERSION
: Go-versie specificeren.- (Zie de ServBay-documentatie of het applicatiescherm voor een actueel overzicht van ondersteunde typen en hun variabelen.)
Package manager-instellingen (Node.js):
YARN_CONFIG_REGISTRY
: Yarn registryadres.NPM_CONFIG_REGISTRY
: NPM registryadres.NPM_CONFIG_CACHE
: Lokale cachemap voor NPM.YARN_CONFIG_CACHE
: Lokale cachemap voor Yarn.
Go module proxy-instellingen:
GOPROXY
: Proxyserver(adres) voor Go-modules.
Met deze instellingen kun je iedere projectomgeving volledig naar wens (afgeschermd van andere projecten) beheren.
Praktische toepassing & verificatie
Nadat je het .servbay.config
-bestand hebt geconfigureerd, moet je controleren of ServBay je project heeft geladen (het project staat dan in de lijst 'Websites' van de applicatie). ServBay leest en past het configbestand toe bij het laden of opnieuw laden van de website.
Je kunt het effect van je configuratie controleren via de volgende methoden:
Bekijk de GUI van ServBay: Mogelijk toont ServBay de momenteel actieve omgevingversies per project in de detail- of infopagina.
Controleer via de command line: Gebruik de terminalfunctie van ServBay, zorg dat je actuele werkmap het projectroothulppad is, en voer relevante versiecommando’s uit, bijvoorbeeld:
- PHP-versie controleren:
php -v
- Node.js-versie controleren:
node -v
- Yarn-versie controleren:
yarn -v
- NPM-versie controleren:
npm -v
- Python-versie controleren:
python -V
ofpython3 -V
- Go-versie controleren:
go version
- Java-versie controleren:
java -version
- .NET-versie controleren:
dotnet --version
- Ruby-versie controleren:
ruby -v
Controleer of de uitvoer overeenkomt met de versies die in.servbay.config
zijn ingesteld.
- PHP-versie controleren:
Webgebaseerde controle (voor PHP): Plaats een eenvoudig PHP-bestand zoals
info.php
in de hoofdmap van je project, met als inhoud<?php phpinfo(); ?>
. Open dit bestand via je browser (bijv.http://jouw-project.servbay.demo/info.php
) en kijk naar dephpinfo
-output voor de gebruikte versie.
De afbeelding hieronder geeft een voorbeeld van de ServBay-interface waarin de actieve projectinstellingen zichtbaar zijn:
(Raadpleeg de daadwerkelijke uitvoer van ServBay voor projectgerichte weergave van de effectieve configuratie.)
Let op
- De bestandsnaam
.servbay.config
moet exact overeenkomen — geen typfouten. - Plaats het bestand altijd in de hoofdmap van je project.
- Alleen reeds in ServBay geïnstalleerde en ondersteunde versies mogen als waarde opgegeven worden.
- Splits configuratie-opties altijd met een nieuwe regel; één
KEY=VALUE
per regel. - Syntaxfouten kunnen ertoe leiden dat je configuratie genegeerd wordt, geheel of gedeeltelijk.
- Instellingen uit
.servbay.config
overschrijven globale ServBay-opties en zijn alléén van toepassing op het huidige project.
Veelgestelde vragen (FAQ)
Vraag: Wat als mijn project geen .servbay.config
-bestand heeft?
Antwoord: Dan gebruikt ServBay de globaal ingestelde omgeving voor je project, zoals geconfigureerd in de applicatie.
Vraag: Wat gebeurt er als ik in het .servbay.config
-bestand een versie opgeef die niet is geïnstalleerd in ServBay?
Antwoord: ServBay laat een foutmelding zien; de exacte reactie hangt af van de versie en je instellingen. Installeer altijd vooraf de benodigde versies via de ServBay-app voor correcte werking.
Vraag: Moet ik ServBay opnieuw opstarten na wijzigingen aan .servbay.config
?
Antwoord: Meestal is het voldoende om binnen de ServBay-app de betreffende website te herladen of kort te stoppen en opnieuw te starten. Volledig afsluiten en herstarten van ServBay is meestal niet nodig.
Vraag: Hebben instellingen uit het .servbay.config
-bestand invloed op mijn andere projecten?
Antwoord: Nee. Het .servbay.config
-bestand is projectgebonden en geldt uitsluitend voor de website/projectmap waarin het staat.
Samenvatting
Met het .servbay.config
-bestand biedt ServBay krachtige projectgebonden omgevingscontrole. Of je nu werkt aan oudere projecten die specifieke (oudere) software nodig hebben, of juist aan gloednieuwe projecten met de modernste stacks: met één simpel configuratiebestand wissel en isoleer je moeiteloos omgevingen — wat de flexibiliteit en efficiëntie van je lokale workflow flink verhoogt. Gebruik deze functie optimaal en maak je ontwikkelproces nóg soepeler.