Nginx

De webserver wordt automatisch opgestart bij aanzetten van de computer, maar kan ook apart gemanipuleerd worden:

  • fabsrv nginx.restart

  • fabsrv nginx.start

  • nginx.stop

De configuraties staan in een directory genaamd "available". Door een symlink erheen te maken in een directory "enabled" kan Nginx deze ook gebruiken. Deze directories zijn als gewone user niet direct te benaderen; aanpassen wordt in het algemeen gedaan door een lokale versie daarheen te kopiëren en dat is wat de hier genoemde functies ook doen.

Om een nieuwe configuratie aan te maken of een bestaande te wijzigen gebruik je het commando

fabsrv nginx.editconf <name>

Je kunt hiermee de locale versie (die zich bevindt in een locatie onder de nginx-config directory) aanpassen; deze kun je vervolgens naar de centrale Nginx configuratie kopiëren met het volgende commando:

fabsrv nginx.modconf <name(s)>

dit vervangt de huidige versie van het configuratiebestand; wil je dat er een backup gemaakt (dat in de locale directory wordt opgeslagen) wordt dan kun je dit commando gebruiken:

fabsrv nginx.modconfb <name(s)>

Er is ook nog een versie om het nieuwe configuratiebestand aan het oude toe te voegen met een backup van het oude; ik weet niet precies meer waarom ik deze versie gemaakt heb want het lijkt me niet het normale gebruik van dit mechanisme:

fabsrv nginx.modconfa <name(s)>

Om een nieuwe configuratie aan de server bekend te maken kun je het volgende commando gebruiken (dit maakt de eerder genoemde symlink):

fabsrv nginx.addconf <name(s)>

Je kunt een configuratie ook weer disablen door de symlink te laten weghalen; dat doet het commando

fabsrv nginx.rmconf <name(s)>

Voor het gemak heb ik een commando toegevoegd dat het toevoegen en enablen van een nieuwe configuratie combineert:

fabsrv nginx.newconf <name(s)>

Om te controleren op verschillen tussen de locale en centrale configuratie heb ik het volgende commando gemaakt:

fabsrv nginx.diffconf [<name(s)>]

Dit heeft ook een grafische variant; die heeft wel het nadeel dat de vergelijkingen één voor één gedaan worden:

fabsrv nginx.diffconfg [<name(s)>]

Om te zien welke configuraties er zijn kun je het volgende commando gebruiken:

fabsrv nginx.list

Ik heb ook nog een commando gemaakt om te zien welke virtuele servers/domeinen er bij een bepaalde configuratie horen:

fabsrv nginx.list-domains