# Configuratie sleutels van Total.js

> Configureer Total.js 5 via CONF: applicatieinstellingen, HTTP antwoorden, e-mail en runtime standaarden.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: nl
Content-SHA256: d9cdf188183749488e6fb047533329a0c87e7ff107ac21585218a54f8726a0e0
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

De `config`-bestand houdt één `key : value` set per line en de waarden zijn beschikbaar in het wereldwijde `CONF`-objecte (zie de configuratie recept voor het bestandformaat).De sleutels hieronder worden gedefinieerd door `total5` 0.0.19 met deze standaarden; een sleutel die niet hier is en niet in de tweede tabel is uw. **Kleuten die beginnen met `$` zijn instellingen van het kader** en `secret_` sleutelen houden geheimen.

Stel toepassingswaarden in de config-bestand en lees ze via CONF. De tabel geeft de standaardwaarden en het doel van elke instelling.

| Sleutel | Standaard | Opmerking |
|---|---|---|
| `name` | `'Total.js'` | De naam van de applicatie. In een view drukt `@{'%name'}` hem af. |
| `version` | `'1.0.0'` | De applicatieversie wordt gebruikt in start-up output, statistieken en de standaard HTTP ETag suffix (index.js). |
| `author` | `''` | De applicatie auteur wordt weergegeven door start-up print when nonempty (index.js). |
| `secret` | `F.syshash` | Stel de applicatie uitdrukkelijk in configuratie. |
| `secret_encryption` | `''` | Key read by encrypted WebSocket routes; dit onderscheidt zich van een actie-encrypt metadata optie (websocket.js). |
| `secret_totalapi` | `''` | Fallback token verzonden door de ingebouwde TotalAPI-driver (api.js); behoud server-side. |
| `secret_csrf` | `''` | Het geheim van de CSRF-tokens. Leeg: de controle slaagt altijd. |
| `secret_tms` | `''` | Het token dat TMS-clients in de header `x-token` moeten sturen. |
| `$root` | `''` | De URL-prefixe die wordt toegepast op route en asset paden; ook de standaard API endpoint (routing.js, index.js) aanpakt. |
| `$cors` | `''` | Hostnamen gescheiden door komma's. |
| `$api` | `'/api/'` | Een standaard API-eindpunt. |
| `$sourcemap` | `true` | Loader metadata-instelling; LOAD stelt het uit de definitieve DEBUG-modus of schakelt het voor selectieve bronnenloads (index.js). |
| `$httpreqlimit` | `0` | Verzoeklimiet per IP. |
| `$httpcompress` | `true` | De gzip kan worden onderhandeld voor kwalificerende antwoorden; de dynamische responspad controleert een 256-bits (controller.js). |
| `$httpetag` | `''` | Het is voldoende voor frame-genereerde ETags; wanneer het leeg is, komt de configuratie ervan uit de app-versie (index.js, controller.js). |
| `$httpmaxsize` | `256` | KB. |
| `$httprangebuffer` | `5120` | 5 MB. |
| `$httptimeout` | `5` | 5 seconden. |
| `$httpfiles` | `an object` | De bestandsuitbreidingen die worden gebruikt als statische bestanden, als een object `{ extension: true }`. |
| `$httpchecktypes` | `true` | Alleen voor multipart-data. |
| `$httpmaxage` | `60` | In seconden. |
| `$httpmaxkeys` | `33` | Maximum parsed query-string key count (utils.js); niet een JSON-body veldbegrens. |
| `$httpmaxkey` | `25` | Maximale zoekopdracht van de sleutel die wordt gebruikt door de query parser (utils.js). |
| `$httpcacheoffset` | `''` | Bijv. 1 minute. |
| `$blacklist` | `''` | HTTP/WebSocket verzoekbehandeling testen of de geconfigureerde waarde de client IP (http.js, websocket.js) bevat. |
| `$xpoweredby` | `'Total.js'` | De waarde van de gecreëerde X-Powered-By reactie header; leeg onderdrukt het in de geïnspecteerde reactie paden (controller.js). |
| `$minifyjs` | `true` | Minificeert de geserveerde JavaScript-bestanden. |
| `$minifycss` | `true` | Minificeert de geserveerde CSS-bestanden. |
| `$minifyhtml` | `true` | Minificeert de verzonden HTML. |
| `$port` | `'auto'` | HTTP luisteren port; auto wordt opgelost bij start-up, en Total.run opties kunnen overliden (index.js). |
| `$ip` | `'0.0.0.0'` | HTTP luisteren adres; Total.run opties kunnen het overschrijden (index.js). |
| `$unixsocket` | `''` | Alternatieve Unix socket luisteren pad (index.js). Socket toestemming en omgekeerde proxy-instelling zijn de implementatie problemen. |
| `$timezone` | `'utc'` | De tijdzone van het proces (ingesteld in `process.env.TZ`). |
| `$insecure` | `false` | De configuratie stelt de TLS-verificatieomgeving van deze vlag (index.js). |
| `$performance` | `false` | Het HTTP-agent aanpast de maximale sockets en socket toning (index.js); het is geen bewijs van een applicatie speedup. |
| `$filtererrors` | `true` | Verwijder de correlatie van de runtime-foutpatronen in de framework error logger (index.js). |
| `$cleartemp` | `true` | Controleert de start-up verwijdering van geselecteerde/temp bestandsuitbreidingen door de duidelijke routine (index.js). |
| `$customtitles` | `false` | Als het fake is, voegt de metadata generator de applicatienaam toe aan een niet-home pagina titel (viewengine.js). |
| `$clearcache` | `10` | Service-counter interval voor intern lookup/view/template/query-builder caches (index.js). |
| `$imageconverter` | `'gm'` | Het programma dat `Image` aanroept: `gm`, `im` of `magick`. |
| `$imagememory` | `0` | Uitgeschakeld omdat bijvoorbeeld GM v1.3.32 een geheugenfout geeft. |
| `$stats` | `true` | Controleert de output/update-afdeling van de statistieken; selectieve LOAD kan het uitschakelen (index.js). |
| `$npmcache` | `'/var/www/.npm'` | Npm cache locatie door NPMINSTALL voor de uid-33 uitvoering (index.js). |
| `$python` | `'python3'` | Interpreter Command gebruikt door Python uitvoering en pip helpers (index.js); installeren Python afzonderlijk. |
| `$wsmaxsize` | `256` | KB. |
| `$wscompress` | `true` | Hierdoor kan WebSocket permissage-deflate worden onderhandeld op serververbindingen (websocket.js). |
| `$wsencodedecode` | `false` | Initiale WebSocket serverencode/decode-instelling (websocket.js); verificatie vereist draad formaat voordat het verandert. |
| `$wsmaxlatency` | `2000` | Ping-latentie threshold in milliseconden gebruikt door WebSocket verbindingschecks (websocket.js). |
| `$proxytimeout` | `5` | 5 seconden. |
| `$cookiesamesite` | `'Lax'` | De standaard SameSite cookie-beleid wanneer een cookie niet één (controller.js) geeft. |
| `$cookiesecure` | `false` | De standaard Secure cookie wordt geïdentificeerd wanneer geen per-cookie override wordt geleverd (controller.js). |
| `$csrfexpiration` | `'30 minutes'` | Hoe lang een CSRF-token geldig is. |
| `$tapi` | `true` | De ingebouwde TotalAPI-service driver wordt mogelijk gemaakt; de speciale checkfunctie trekt deze lokale poort (api.js). |
| `$tapiurl` | `'eu'` | De regionale hostname voornaam wordt gebruikt door de TotalAPI-driver (api.js). |
| `$tapimail` | `false` | Selecteer de TotalAPI-postroute wanneer de Total API-functie is ingeschakeld (mail.js). |
| `$tapilogger` | `false` | De TotalAPI loggerpad wordt toegankelijk wanneer de service-toegang en het geheim zijn geconfigureerd (index.js). |
| `$imprint` | `true` | De startbanner wordt geactiveerd (index.js). |
| `$tms` | `false` | Schakelt het TMS-WebSocket-eindpunt in. |
| `$tmsmaxsize` | `256` | De maximale grootte van een TMS-bericht, in kB. |
| `$tmsurl` | `'/$tms/'` | De URL van het TMS-eindpunt. |
| `$tmsclearblocked` | `60` | In minuten. |
| `$total5` | bij het starten ingesteld | De map van het pakket `total5` (het framework leest er zijn eigen bestanden uit). |
| `$nodemodules` | bij het starten ingesteld | De map waarin `NPMINSTALL()` pakketten installeert. |
| `secret_uid` | Set aan het begin | Geheime input gebruikt door de korte geencrypteerde identificator; geïnitieerd uit het systeem hash (index.js, utils.js). |
| `$cryptoiv` | Set aan het begin | Initialisering-vector buffer gebruikt door framework encryption helpers; initialised bij startups (index.js, utils.js). |
| `$httpexpire` | Set aan het begin | De toekomstige UTC HTTP-vervaldatum wordt geïnitieerd en periodiek vernieuwd door het kader (index.js, controller.js). |

Deze sleutels hebben geen standaardwaarde. Ze configureren het versturen van e-mail en worden gebruikt door `MAIL()` en `HTMLMAIL()` (zie het e-mailrecept):

| Sleutel | Betekenis |
|---|---|
| `mail_smtp` | Het adres van de SMTP-server. |
| `mail_smtp_options` | Een object met de rest van de verbindingsinstellingen: `port`, `user`, `password`, `secure`... |
| `mail_from` | Het adres van de afzender. |
| `mail_from_name` | De naam van de afzender. |
| `mail_reply` | Het adres dat de antwoorden ontvangt, aan elk bericht toegevoegd. |
| `mail_cc` | Een kopie-adres, aan elk bericht toegevoegd. |
| `mail_bcc` | Een verborgen kopie-adres, aan elk bericht toegevoegd. |

```js controllers/config.js
exports.install = function() {
	ROUTE('GET /config/', config);
};

function config($) {
	$.json({ conf: CONF });
}
```
