# Klucze konfiguracyjne Total.js 5

> Konfiguruj Total.js 5 za pośrednictwem CONF: ustawienia aplikacji, odpowiedzi HTTP, domyślne e-maile i czas pracy.

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

Plik `config` posiada jedno ustawienie `key : value` na linii, a wartości są dostępne w globalnym obiekcie `CONF` (patrz receptę konfiguracji dla formatu pliku). klucze poniżej są zdefiniowane przez `total5` 0.0.19 z tymi domyślnymi; klucz, który nie jest tutaj i nie w drugiej tabeli jest twój. **Klucze, które zaczynają się od `$`, to ustawienia ramowe** i klucze `secret_` trzymają tajemnice.

Ustaw wartości aplikacji w pliku konfiguracyjnym i przeczytaj je za pośrednictwem CONF. Tabela określa standardy i cel każdego ustawienia.

| Klucz | Domyślnie | Notatka |
|---|---|---|
| `name` | `'Total.js'` | Nazwa aplikacji. W widoku drukuje ją `@{'%name'}`. |
| `version` | `'1.0.0'` | Wersja aplikacji wykorzystywana jest w wyniku startu, statystyce i domyślnym HTTP ETag suffix (index.js). |
| `author` | `''` | Autor aplikacji wyświetlany przez startup imprint when nonempty (index.js). |
| `secret` | `F.syshash` | Ustaw aplikację w tajemnicy w konfiguracji. |
| `secret_encryption` | `''` | Kluczowe czytanie przez szyfrowane drogi WebSocket; to odróżnia się od opcji szyfrowanego metadatu działania (websocket.js). |
| `secret_totalapi` | `''` | Fallback token wysłany przez wbudowany sterownik TotalAPI (api.js); utrzymać stronę serwera. |
| `secret_csrf` | `''` | Sekret tokenów CSRF. Pusty: sprawdzenie zawsze przechodzi. |
| `secret_tms` | `''` | Token, który klienci TMS muszą wysyłać w nagłówku `x-token`. |
| `$root` | `''` | Prefix URL stosowany do ścieżek i aktywów; dostosowuje również domyślny punkt końcowy API (routing.js, index.js). |
| `$cors` | `''` | Nazwy hostów oddzielone przecinkami. |
| `$api` | `'/api/'` | Domyślny punkt końcowy API. |
| `$sourcemap` | `true` | Ustawienie metadatu ładowania; LOAD ustawia go z trybu DEBUG końcowego lub wyłącza go do wybranych ładunków zasobowych (index.js). |
| `$httpreqlimit` | `0` | Limit żądań na IP. |
| `$httpcompress` | `true` | Umożliwia negocjowany gzip do kwalifikujących się odpowiedzi; dynamiczny ścieżka odpowiedzi sprawdza 256-bitowy próg (controller.js). |
| `$httpetag` | `''` | Wystarczy, aby ETags generowane w ramach; gdy jest pusty, konfiguracja wynika z wersji aplikacji (index.js, controller.js). |
| `$httpmaxsize` | `256` | KB. |
| `$httprangebuffer` | `5120` | 5 MB. |
| `$httptimeout` | `5` | 5 sekund. |
| `$httpfiles` | `an object` | Rozszerzenia plików, które są obsługiwane jako statyczne pliki, jako obiekt `{ extension: true }`. |
| `$httpchecktypes` | `true` | Tylko dla danych multipart. |
| `$httpmaxage` | `60` | W sekundach. |
| `$httpmaxkeys` | `33` | Maksymalna liczba kluczy do zapytania (utils.js); nie granica pola ciała JSON. |
| `$httpmaxkey` | `25` | Maksymalna długość klucza do zapytania wykorzystywana przez parzer zapytań (utils.js). |
| `$httpcacheoffset` | `''` | Np. 1 minute. |
| `$blacklist` | `''` | HTTP/WebSocket testy przetwarzania żądań, czy konfigurowana wartość zawiera klient IP (http.js, websocket.js). |
| `$xpoweredby` | `'Total.js'` | Wartość generowanego nagłówka odpowiedzi X-Powered-By; puste tłumi go w sprawdzonych ścieżkach odpowiedzi (controller.js). |
| `$minifyjs` | `true` | Minifikuje serwowane pliki JavaScript. |
| `$minifycss` | `true` | Minifikuje serwowane pliki CSS. |
| `$minifyhtml` | `true` | Minifikuje wysyłany HTML. |
| `$port` | `'auto'` | HTTP słucha port; automatycznie jest rozstrzygnięty na starcie, a opcje Total.run mogą go przekroczyć (index.js). |
| `$ip` | `'0.0.0.0'` | Adres HTTP słucha; opcje Total.run mogą go przekroczyć (index.js). |
| `$unixsocket` | `''` | Alternatywna trasa słuchania socketów Unix (index.js). pozwolenia na sockety i ustawienia proxy odwrotne są kwestiami rozmieszczania. |
| `$timezone` | `'utc'` | Strefa czasowa procesu (ustawiana w `process.env.TZ`). |
| `$insecure` | `false` | Konfiguracja ustawia środowisko weryfikacji procesu TLS z tego flagi (index.js). |
| `$performance` | `false` | Dostosowuje maksymalne sockety i tuning socketów (index.js); nie jest to dowód przyspieszenia aplikacji. |
| `$filtererrors` | `true` | Usuwa wzorce błędu w czasie pracy w rejestrze błędy ramowej (index.js). |
| `$cleartemp` | `true` | Kontrola startowania wybranych rozszerzeń plików generowanych/temp przez jasną rutynę (index.js). |
| `$customtitles` | `false` | W przypadku fałszywych, generator metadanych widoku dodaje nazwę aplikacji do tytułu strony nie-domowej (viewengine.js). |
| `$clearcache` | `10` | Interfejs serwisowy do ponownego ustawienia wewnętrznych przeglądarek / widoków / szablonów / zapytania-budowników (index.js). |
| `$imageconverter` | `'gm'` | Program, który wywołuje `Image`: `gm`, `im` lub `magick`. |
| `$imagememory` | `0` | Wyłączone, ponieważ np. GM v1.3.32 zgłasza błąd dotyczący pamięci. |
| `$stats` | `true` | Kontrola statystyki wyjścia/aktualizacji gałęzi; selektywne LOAD może go wyłączyć (index.js). |
| `$npmcache` | `'/var/www/.npm'` | Lokalizacja cache Npm przekazana przez NPMINSTALL dla gałęzi wypełniania uid-33 (index.js). |
| `$python` | `'python3'` | Komanda tłumacza wykorzystywana przez Python Execution i Pipe Assisters (index.js); zainstaluj Python oddzielnie. |
| `$wsmaxsize` | `256` | KB. |
| `$wscompress` | `true` | Umożliwia negocjacje w zakresie dopuszczalności WebSocket na połączeniach z serwerem (websocket.js). |
| `$wsencodedecode` | `false` | Początkowe ustawienie kodowania serwera WebSocket (websocket.js); sprawdź wymagany format przewodu przed jego zmianą. |
| `$wsmaxlatency` | `2000` | Przegląd prędkości w milisekundach stosowany przez kontrolę połączenia WebSocket (websocket.js). |
| `$proxytimeout` | `5` | 5 sekund. |
| `$cookiesamesite` | `'Lax'` | Podstawowe zasady cookie SameSite, gdy plik cookie nie określa jednego (controller.js). |
| `$cookiesecure` | `false` | Default Secure cookie przypisuje się, gdy nie jest dostarczany per-cookie override (controller.js). |
| `$csrfexpiration` | `'30 minutes'` | Jak długo ważny jest token CSRF. |
| `$tapi` | `true` | Umożliwia wbudowany sterownik usługowy TotalAPI; specjalna operacja kontroli przechodzi przez ten lokalny bramę (api.js). |
| `$tapiurl` | `'eu'` | Regionalny prefix nazwy hostingu używany przez kierowcę TotalAPI (api.js). |
| `$tapimail` | `false` | Wybierz ścieżkę pocztową TotalAPI, gdy jest włączona funkcja TotalAPI (mail.js). |
| `$tapilogger` | `false` | Umożliwia się przejście logera TotalAPI, gdy dostęp do usługi i jego sekrety są skonfigurowane (index.js). |
| `$imprint` | `true` | Umożliwia banner start-up (index.js) |
| `$tms` | `false` | Włącza punkt końcowy WebSocket TMS. |
| `$tmsmaxsize` | `256` | Maksymalny rozmiar wiadomości TMS, w kB. |
| `$tmsurl` | `'/$tms/'` | Adres URL punktu końcowego TMS. |
| `$tmsclearblocked` | `60` | W minutach. |
| `$total5` | ustawiane przy starcie | Folder pakietu `total5` (framework czyta z niego własne pliki). |
| `$nodemodules` | ustawiane przy starcie | Folder, w którym `NPMINSTALL()` instaluje pakiety. |
| `secret_uid` | Ustawienie na początek | Tajne wpływy wykorzystywane przez krótko szyfrowaną funkcję identyfikacyjną; inicjalizowane z systemu hash (index.js, utils.js). |
| `$cryptoiv` | Ustawienie na początek | Inicjalizacja-wektorowy buffer wykorzystywany przez asystentów szyfrowania ram; inicjalizacji na startu (index.js, utils.js). |
| `$httpexpire` | Ustawienie na początek | Przyszła data wygaśnięcia UTC HTTP jest inicjalizowana i okresowo odnowiona przez ramę (index.js, controller.js). |

Te klucze nie mają wartości domyślnej. Konfigurują wysyłanie poczty i są używane przez `MAIL()` i `HTMLMAIL()` (zobacz przepis o poczcie):

| Klucz | Znaczenie |
|---|---|
| `mail_smtp` | Adres serwera SMTP. |
| `mail_smtp_options` | Obiekt z pozostałymi ustawieniami połączenia: `port`, `user`, `password`, `secure`... |
| `mail_from` | Adres nadawcy. |
| `mail_from_name` | Nazwa nadawcy. |
| `mail_reply` | Adres, który otrzymuje odpowiedzi, dodawany do każdej wiadomości. |
| `mail_cc` | Adres kopii, dodawany do każdej wiadomości. |
| `mail_bcc` | Adres ukrytej kopii, dodawany do każdej wiadomości. |

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

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