# A chave de configuração do Total.js 5

> Configure Total.js 5 através do CONF: configurações de aplicativos, respostas HTTP, e-mail e desempenho padrão.

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

O arquivo `config` tem uma configuração `key : value` por linha e os valores estão disponíveis no objeto global `CONF` (ver a receita de configuração para o formato do arquivo). as chaves abaixo são definidas pelo `total5` 0.0.19 com estes padrões; uma chave que não está aqui e não na segunda tabela é sua. **As chaves que começam com `$` são configurações do quadro** e as chave `secret_` mantêm segredos.

Configura os valores de aplicação no arquivo de configuração e leia-os através do CONF. A tabela fornece os padrões e o propósito de cada configuração.

| Chave | Predefinido | Nota |
|---|---|---|
| `name` | `'Total.js'` | O nome da aplicação. Numa vista, `@{'%name'}` imprime-o. |
| `version` | `'1.0.0'` | Versão de aplicativo usado em output startup, estatísticas e o sufixo padrão HTTP ETag (index.js). |
| `author` | `''` | Autor de aplicativos mostrado pela imprensa quando não está disponível (index.js). |
| `secret` | `F.syshash` | Configurar o segredo explicitamente na configuração. |
| `secret_encryption` | `''` | Leitura chave por rotas WebSocket criptografadas; isso é diferente de uma opção de metadados criptográficos (websocket.js). |
| `secret_totalapi` | `''` | O token Fallback é enviado pelo driver TotalAPI (api.js) incorporado; mantenha o servidor ao lado. |
| `secret_csrf` | `''` | O segredo dos tokens CSRF. Vazio: a verificação passa sempre. |
| `secret_tms` | `''` | O token que os clientes TMS têm de enviar no cabeçalho `x-token`. |
| `$root` | `''` | URL prefixo aplicado a rotas e ativos; também ajusta o endpoint API padrão (routing.js, index.js). |
| `$cors` | `''` | Nomes de anfitrião separados por vírgula. |
| `$api` | `'/api/'` | Um endpoint de API predefinido. |
| `$sourcemap` | `true` | Configuração de metadados de carregamento; LOAD o coloca do modo DEBUG final ou desabilita para cargas de recursos seletivas (index.js). |
| `$httpreqlimit` | `0` | Limite de pedidos por IP. |
| `$httpcompress` | `true` | Permite o gzip negociado para respostas elegíveis; o caminho de resposta dinâmico verifica um limite de 256 bits (controller.js). |
| `$httpetag` | `''` | Basta para ETags gerados em framework; quando vazio, a configuração deriva da versão do aplicativo (index.js, controller.js). |
| `$httpmaxsize` | `256` | KB. |
| `$httprangebuffer` | `5120` | 5 MB. |
| `$httptimeout` | `5` | 5 segundos. |
| `$httpfiles` | `an object` | As extensões de arquivo que são servidos como arquivos estáticos, como um objeto `{ extension: true }`. |
| `$httpchecktypes` | `true` | Apenas para dados multipart. |
| `$httpmaxage` | `60` | Em segundos. |
| `$httpmaxkeys` | `33` | Número máximo de query-string (utils.js); não um limite de campo do corpo JSON. |
| `$httpmaxkey` | `25` | Duração máxima de query-string utilizada pelo parser de queries (utils.js). |
| `$httpcacheoffset` | `''` | Ex.: 1 minute. |
| `$blacklist` | `''` | HTTP/WebSocket solicita testes de gestão se o valor configurado contém o IP do cliente (http.js, websocket.js). |
| `$xpoweredby` | `'Total.js'` | Valor do cabeçalho de resposta gerado X-Powered-By; vazio suprimirá no caminho de resposta inspeccionado (controller.js). |
| `$minifyjs` | `true` | Minifica os ficheiros JavaScript servidos. |
| `$minifycss` | `true` | Minifica os ficheiros CSS servidos. |
| `$minifyhtml` | `true` | Minifica o HTML enviado. |
| `$port` | `'auto'` | O portão de ouvido HTTP; o automático é resolvido na startup, e as opções Total.run podem ultrapassar (index.js). |
| `$ip` | `'0.0.0.0'` | O endereço de audição HTTP; as opções Total.run podem ultrapassar (index.js). |
| `$unixsocket` | `''` | Página de ouvido alternativa do socket Unix (index.js). permissões de socket e configurações de proxy reversas são questões de implementação. |
| `$timezone` | `'utc'` | O fuso horário do processo (é definido em `process.env.TZ`). |
| `$insecure` | `false` | Configuração define o ambiente de verificação do processo TLS deste pavilhão (index.js). |
| `$performance` | `false` | Ajuste o agente HTTP para os sockets e tonificação do socket (index.js); não é evidência de uma aceleração da aplicação. |
| `$filtererrors` | `true` | Elimina padrões de erro de execução correspondentes no logger de erros de framework (index.js). |
| `$cleartemp` | `true` | Controle a remoção de extensões de arquivo gerado/temp selecionadas pela rotina clara (index.js). |
| `$customtitles` | `false` | Quando falso, o gerador de metadados de visualização adiciona o nome da aplicação a um título de página não-doméstica (viewengine.js). |
| `$clearcache` | `10` | Intervalo de serviço para reinstalar caches interna / visual / template / query-builder (index.js). |
| `$imageconverter` | `'gm'` | O programa que o `Image` chama: `gm`, `im` ou `magick`. |
| `$imagememory` | `0` | Desativado porque, por exemplo, o GM v1.3.32 lança um erro sobre a memória. |
| `$stats` | `true` | Controle a indústria estatística de output/actualizador; o LOAD seletivo pode desativá-lo (index.js). |
| `$npmcache` | `'/var/www/.npm'` | Localização de cache Npm passada pela NPMINSTALL para a rama de execução uid-33 (index.js). |
| `$python` | `'python3'` | Comando de intérprete usado pela execução de Python e auxiliares de pip (index.js); instalar Python separadamente. |
| `$wsmaxsize` | `256` | KB. |
| `$wscompress` | `true` | Permite a negociação de WebSocket permissage-deflate em conexões de servidor (websocket.js). |
| `$wsencodedecode` | `false` | A configuração inicial de codificação/decodificação do servidor WebSocket (websocket.js); verifica o formato de fio necessário antes de mudá-lo. |
| `$wsmaxlatency` | `2000` | O limiar de latência em milisecundos usado por verificações de conexão WebSocket (websocket.js). |
| `$proxytimeout` | `5` | 5 segundos. |
| `$cookiesamesite` | `'Lax'` | Política de cookie padrão quando um cookie não especifica um (controller.js). |
| `$cookiesecure` | `false` | O cookie Secure é atribuído quando não for fornecido nenhum cookie (controller.js). |
| `$csrfexpiration` | `'30 minutes'` | Durante quanto tempo um token CSRF é válido. |
| `$tapi` | `true` | Permite o driver de serviço TotalAPI incorporado; a operação de verificação especial passa por esta porta local (api.js). |
| `$tapiurl` | `'eu'` | Prefixo de hospedagem regional usado pelo driver TotalAPI (api.js). |
| `$tapimail` | `false` | Selecione o caminho de correio TotalAPI quando a função TotalAPI é ativada (mail.js). |
| `$tapilogger` | `false` | Permite a rota de logger TotalAPI quando o acesso ao serviço e seu segredo são configurados (index.js). |
| `$imprint` | `true` | Apresentação do banner de startups (index.js). |
| `$tms` | `false` | Ativa o endpoint WebSocket do TMS. |
| `$tmsmaxsize` | `256` | O tamanho máximo de uma mensagem TMS, em kB. |
| `$tmsurl` | `'/$tms/'` | O URL do endpoint do TMS. |
| `$tmsclearblocked` | `60` | Em minutos. |
| `$total5` | definido no arranque | A pasta do pacote `total5` (o framework lê dela os seus próprios ficheiros). |
| `$nodemodules` | definido no arranque | A pasta onde o `NPMINSTALL()` instala pacotes. |
| `secret_uid` | Set para o início | A entrada secreta utilizada pela utilidade de identificador criptografado curto; iniciada do hash do sistema (index.js, utils.js). |
| `$cryptoiv` | Set para o início | Iniciativa-vector buffer usado por assistentes de criptografia de framework; iniciado em startup (index.js, utils.js). |
| `$httpexpire` | Set para o início | Futuro UTC HTTP data de expiração iniciada e periodicamente atualizada pelo quadro (index.js, controller.js). |

Estas chaves não têm valor predefinido. Configuram o envio de email e são usadas por `MAIL()` e `HTMLMAIL()` (veja a receita de email):

| Chave | Significado |
|---|---|
| `mail_smtp` | O endereço do servidor SMTP. |
| `mail_smtp_options` | Um objeto com o resto das definições de ligação: `port`, `user`, `password`, `secure`... |
| `mail_from` | O endereço do remetente. |
| `mail_from_name` | O nome do remetente. |
| `mail_reply` | O endereço que recebe as respostas, adicionado a cada mensagem. |
| `mail_cc` | Um endereço de cópia, adicionado a cada mensagem. |
| `mail_bcc` | Um endereço de cópia oculta, adicionado a cada mensagem. |

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

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