Files
RustProxy/langs/pl_pl.json
T
2026-10-21 16:04:54 +02:00

2849 lines
207 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"meta": {
"locale": "pl-PL",
"name": "Polish",
"native_name": "Polski",
"direction": "ltr"
},
"translations": {
"webServiceStaticDeliverySection": "Dostarczanie plików statycznych",
"webServiceDynamicCompressionSection": "Kompresja dynamiczna",
"webServiceSidecarsSection": "Gotowe pliki skompresowane",
"webServicePhpSourceSection": "Źródło konfiguracji i połączenie PHP-FPM",
"webServicePhpRequestSection": "Obsługa żądań",
"webServicePhpLimitsSection": "Limity czasu i obciążenia",
"webServicePhpOverridesSection": "Parametry FastCGI i ustawienia php.ini",
"hostIdentitySection": "Host i domeny",
"streamBackendConnectionSection": "Backend i obciążenie",
"streamBackendHealthSection": "Kontrola dostępności",
"fileLogsSortAscending": "Sortuj rosnąco",
"fileLogsSortDescending": "Sortuj malejąco",
"policyRulesTitle": "Reguły i nagłówki",
"vhUaRateTitle": "Limity dla User-Agent",
"vhUaRatePattern": "Wzorzec User-Agent",
"vhAddUaRate": "Dodaj limit User-Agent",
"vhUaRateMax": "Maksymalnie 64 reguły limitów User-Agent",
"vhUaRateHelp": "Pierwszy pasujący wzorzec wygrywa. Dopasowanie bez rozróżniania wielkości liter; fragment lub *. Limity są osobne dla IP i vhosta, niezależne od limitów ogólnych i krajowych. Działają także po wyłączeniu limitu ogólnego.",
"configHistoryFullCompare": "Pełne porównanie JSON",
"configHistoryChangedFields": "Tylko zmienione pola",
"overview": "Przegląd",
"mainMenu": "Menu",
"routing": "Starsze trasy",
"configuration": "Konfiguracja",
"configStorageLabel": "ŹRÓDŁO KONFIGURACJI",
"configStorageLoading": "Sprawdzanie miejsca zapisu...",
"configStorageUnavailable": "Nie można odczytać miejsca zapisu konfiguracji",
"configStorageFile": "Plik JSON (aktywna konfiguracja)",
"configStorageSqlite": "Baza SQLite (aktywna konfiguracja)",
"configStoragePath": "Ścieżka",
"configStorageFileHelp": "Zapis w panelu i przywracanie rewizji aktualizują plik JSON. SQLite przechowuje historię i audyt.",
"configStorageSqliteHelp": "Aktywna konfiguracja i historia rewizji znajdują się w SQLite. Nie wybrano zewnętrznego pliku.",
"configStorageHistory": "Baza historii SQLite",
"manualConfig": "Konfiguracja ręczna",
"runtime": "ŚRODOWISKO",
"localOnly": "ADMINISTRACJA",
"logout": "Wyloguj",
"firstSlice": "NIEZALEŻNY RDZEŃ / JAWNY DOSTĘP",
"loginTitle": "Administracja",
"unlock": "Odblokuj administrację",
"tokenHelp": "Uruchom polecenie w drugim terminalu i wklej token poniżej.",
"token": "Lokalny token dostępu",
"connect": "Połącz z proxy",
"tokenNote": "Administracja domyślnie używa HTTP na loopback. Przed użyciem adresu spoza loopback włącz HTTPS panelu.",
"requests": "Żądania",
"activeExchanges": "Aktywne żądania",
"bodyLifetime": "Do zakończenia strumienia",
"bandwidth": "Przekazane dane",
"bothDirections": "W obu kierunkach",
"errors": "Błędy",
"errorDescription": "5xx / body / przerwane",
"liveTraffic": "RUCH NA ŻYWO",
"liveTransformed": "Transformowane",
"requestsPerSecond": "Żądania na sekundę",
"live": "NA ŻYWO",
"coreState": "STAN RDZENIA",
"configurationRevision": "Aktywna rewizja",
"backends": "Backendy",
"routes": "Trasy",
"connections": "Otwarte połączenia",
"uptime": "Czas działania",
"activity": "AKTYWNOŚĆ",
"accessLog": "Log dostępu",
"boundedLog": "Ostatnie 50 / bufor 4096",
"time": "Czas",
"request": "Żądanie",
"status": "Status",
"duration": "Czas obsługi",
"outcome": "Wynik",
"noTraffic": "Brak ruchu. Otwórz proxy, aby wysłać pierwsze żądanie.",
"reload": "Wczytaj konfigurację",
"addBackend": "Dodaj / edytuj backend",
"backendUrl": "Adres backendu (HTTP / HTTPS, IP / DNS)",
"allowPrivate": "Jawnie zezwól na prywatny IP / loopback",
"preserveHost": "Zachowaj oryginalny nagłówek Host",
"saveBackend": "Zapisz backend",
"clear": "Wyczyść",
"addRoute": "Dodaj / edytuj trasę",
"hostnames": "Hostname i aliasy, oddzielone przecinkami",
"pathPrefix": "Prefiks ścieżki (bez usuwania)",
"backend": "Backend",
"enabled": "Włączona",
"saveRoute": "Zapisz trasę",
"rawConfig": "Dokument konfiguracji",
"export": "Eksportuj JSON",
"configHelp": "Poprawny zapis jest stosowany atomowo. Błędne lub nieaktualne zmiany nie zastępują działającej konfiguracji.",
"apply": "Sprawdź, zapisz i zastosuj",
"noRestart": "Routing i polityki odpowiedzi działają od razu; zmiana portów wymaga restartu.",
"overviewTitle": "Ruch pod kontrolą.",
"overviewDescription": "Ruch, cache i pomiary systemu operacyjnego w jednym zwartym panelu.",
"routingTitle": "Połącz właściwe adresy.",
"routingDescription": "Dotychczasowy format backendów i tras pozostaje obsługiwany. Nowe konfiguracje mogą używać vhosta z własnym frontendem i pulą.",
"configurationTitle": "Jedno źródło prawdy.",
"configurationDescription": "Jedna konfiguracja: vhosty, listenery i wspolne polityki.",
"connected": "POŁĄCZONO Z LOKALNYM RDZENIEM",
"disconnected": "RDZEŃ NIEDOSTĘPNY",
"edit": "Edytuj",
"remove": "Usuń",
"privateAllowed": "ZGODA NA PRYWATNY IP",
"configured": "SKONFIGUROWANY / BEZ PROBE",
"disabled": "WYŁĄCZONA",
"emptyBackends": "Brak backendów. Dodaj jawny adres HTTP lub HTTPS.",
"emptyRoutes": "Brak tras. Nieznane hostname zwracają 404.",
"saving": "Zapisywanie…",
"unsavedChanges": "Niezapisane zmiany",
"saved": "Zastosowano konfigurację.",
"confirmDelete": "Usunąć ten element? Zmiana zadziała natychmiast.",
"confirmTitle": "Potwierdź operację",
"confirmationLabel": "POTWIERDZENIE",
"warningLabel": "OSTRZEŻENIE",
"continueAction": "Kontynuuj",
"cancelAction": "Anuluj",
"discardAction": "Odrzuć zmiany",
"errorContext": "{area}: {message}",
"stale": "Konfiguracja zmieniła się w innym miejscu. Wczytaj ją przed zapisem.",
"busy": "Trwa już zapis.",
"loginError": "Nie udało się zalogować.",
"fresh": "Wczytano konfigurację.",
"locked": "Wylogowano i unieważniono sesję.",
"backendUsed": "Backend jest używany przez trasę. Najpierw usuń lub zmień trasę.",
"renaming": "Nie można zmienić ID w formularzu. Użyj edytora JSON i zmień również powiązania.",
"complete": "zakończono",
"cancelled": "przerwano",
"body_error": "błąd body",
"proxy_or_upstream_error": "błąd proxy/backendu",
"security": "Bezpieczeństwo",
"sessionNote": "Lokalna administracja HTTP. Hasła używają Argon2id, a cookies sesji są HttpOnly. Nie udostępniaj panelu publicznie.",
"setupHelp": "Utwórz pierwsze konto administratora. Jednorazowy token odczytasz lokalnie w terminalu.",
"setupToken": "Jednorazowy token instalacyjny",
"username": "Nazwa użytkownika",
"password": "Hasło",
"confirmPassword": "Powtórz hasło",
"setupTitle": "Utwórz administratora",
"signIn": "Zaloguj się",
"createAndSignIn": "Utwórz konto i zaloguj",
"securityTitle": "Dostęp pod kontrolą.",
"securityDescription": "Jeden administrator. Odwoływalne sesje. Jawne polityki hostów i tras.",
"manualBackends": "RĘCZNE BACKENDY",
"routePolicies": "Kontrola dostępu i nagłówki",
"useRouteAcl": "Włącz ACL trasy",
"aclDefault": "Domyślna akcja",
"allow": "Zezwól",
"deny": "Zablokuj",
"aclRules": "Jedna reguła w wierszu: allow/deny oraz CIDR",
"aclHelp": "Podaj adres IPv4/IPv6 albo CIDR, np. 192.168.1.0/24 lub 10.0.0.5. Odmowa ma pierwszeństwo. Przy trybie krajów „tylko zezwolone” wystarczy dozwolony kraj LUB dozwolone IP; przy blokowaniu krajów blokowany kraj LUB deny IP odrzuca ruch. Uwierzytelnienie nadal obowiązuje.",
"routeHeaders": "Nagłówki request / response (JSON)",
"headersHelp": "Operacje: ustaw, dodaj, usuń. Nagłówki transportu, kodowania body i tożsamości klienta są chronione.",
"currentSession": "BIEŻĄCA SESJA",
"recoveryHelp": "Utrata dostępu? Uruchom lokalnie rust-proxy admin reset-password. Dotychczasowe sesje zostaną unieważnione.",
"revokeAll": "Wyloguj wszystkie sesje",
"changePassword": "Zmień hasło",
"currentPassword": "Obecne hasło",
"newPassword": "Nowe hasło (12-128 bajtów UTF-8)",
"savePassword": "Zmień i wyloguj",
"hostPolicies": "Polityki dostępu hostów",
"editHostPolicy": "Dodaj / zastąp politykę hosta",
"savePolicy": "Zastosuj politykę",
"auditRetention": "SQLITE / OSTATNIE 100 / LIMIT 10 000",
"audit": "Audyt administracyjny",
"reloadAudit": "Odśwież",
"actor": "Użytkownik",
"action": "Operacja",
"detail": "Szczegóły",
"noAudit": "Brak wpisów audytu.",
"noPolicies": "Brak ACL hostów. Dostęp mogą ograniczać reguły tras.",
"expires": "Sesja wygaśnie najpóźniej: ",
"passwordChanged": "Zmieniono hasło i unieważniono sesje. Zaloguj się ponownie.",
"passwordMismatch": "Hasła nie są takie same.",
"ruleSyntax": "Wpisz jedną regułę w wierszu, np. allow 127.0.0.1/32",
"confirmRevoke": "Wylogować wszystkie sesje, również bieżącą?",
"streamLive": "SSE na żywo",
"streamFallback": "Odpytywanie awaryjne",
"auth.required": "Sesja wygasla lub zostala odwolana. Zaloguj sie ponownie.",
"auth.invalid_credentials": "Nieprawidłowa nazwa użytkownika lub hasło.",
"auth.password_policy": "Haslo musi miec 12-128 bajtow UTF-8, bez znakow nowego wiersza.",
"auth.invalid_username": "Uzyj 3-64 liter, cyfr, kropek, myslnikow lub podkreslen.",
"auth.invalid_setup_token": "Niepoprawny token instalacyjny. Odczytaj go w lokalnym terminalu.",
"auth.already_initialized": "Administrator juz istnieje. Zaloguj sie.",
"auth.rate_limited": "Zbyt wiele prob. Ponow po 60 sekundach lub uzyj lokalnego resetu hasla.",
"auth.busy": "Trwa weryfikacja innych hasel. Ponow za chwile.",
"auth.csrf": "Niepoprawna ochrona zadania. Odswiez strone i ponow.",
"auth.invalid_host": "Użyj skonfigurowanego adresu administracji i dozwolonej nazwy hosta.",
"auth.invalid_origin": "Zablokowano dostep administracyjny z innego originu.",
"auth.credentials_changed": "Dane logowania zostaly zmienione. Zaloguj sie ponownie.",
"auth.unavailable": "Baza administracyjna jest chwilowo niedostepna.",
"events.too_many_viewers": "Osiagnieto limit odbiorcow SSE; pozostaje odpytywanie.",
"protocol": "Protokół upstream",
"protocolHelp": "HTTP/1.1 używa wyłącznie H1. Auto preferuje H2 przez TLS ALPN, a gdy jest niedostępny, używa HTTP/1.1 (bez TLS: H1). H2 wymaga HTTP/2 przez TLS lub h2c prior knowledge, bez obniżania do H1. WebSocket działa osobną ścieżką. Preserve Host jest dostępne tylko dla H1.",
"addressAllowlist": "Opcjonalna lista dozwolonych adresów (CIDR, po jednym w wierszu)",
"caPem": "Dodatkowy zaufany CA / certyfikat (PEM, opcjonalnie)",
"backendTlsHelp": "Szyfrowanie TLS pozostaje dostępne, ale weryfikacja certyfikatu i nazwy jest domyślnie wyłączona, dopóki nie włączysz jej jawnie. Prywatne adresy nadal wymagają zgody, także po rozwiązaniu DNS.",
"advancedTransport": "Transport i zaufanie",
"tls": "Certyfikaty",
"tlsTitle": "Szyfrowanie pod kontrolą.",
"tlsDescription": "Dokładne nazwy SNI. Prywatne pliki certyfikatów. Zmiany bez restartu.",
"certificateBindings": "Powiązania certyfikatów",
"addCertificate": "Dodaj certyfikat",
"certificateId": "ID certyfikatu",
"certificateFile": "Plik certyfikatu / ścieżka",
"privateKeyFile": "Plik klucza prywatnego / ścieżka",
"defaultCertificate": "Użyj jako certyfikatu domyślnego",
"saveCertificate": "Zastosuj certyfikat",
"reloadCertificates": "Wczytaj pliki certyfikatów",
"certificateHelp": "Możesz użyć plików zarządzanych przez RustProxy, pełnych ścieżek zewnętrznych, importu PEM albo ACME. Nazwy plików są ładowane z <data-dir>/certs. Ścieżki zewnętrzne są czytane bez kopiowania i można je przeładować po odnowieniu certyfikatu bez zmiany rewizji konfiguracji.",
"certificateHint": "Odnowienie zewnętrzne: pozostaw ścieżki fullchain.pem/privkey.pem w konfiguracji, odnów je przez Certbot/acme.sh, a następnie użyj Przeładuj certyfikat albo POST /api/certificates/{certificate_id}/reload.",
"emptyCertificates": "Brak jawnych powiązań SNI. Aktywny listener TLS używa wygenerowanego certyfikatu domyślnego.",
"certificateSafety": "Certyfikaty samopodpisane służą do testów. Certyfikat nie tworzy trasy. Zmiana dotyczy nowych połączeń TLS.",
"wsActive": "Tunele WebSocket",
"h2Requests": "Żądania HTTP/2",
"h2ActiveConnections": "Aktywne połączenia H2",
"tlsFailures": "Błędy handshake TLS",
"tlsListener": "Listener TLS",
"notEnabled": "Wyłączony",
"websocket_closed": "WebSocket zamknięty",
"defaultLabel": "DOMYŚLNY",
"language": "Język",
"settings": "Ustawienia",
"settingsTitle": "Ustawienia proxy.",
"settingsDescription": "Przelaczaj karty funkcji. Niezapisane zmiany pozostaja w formularzach.",
"cacheHitRatio": "Trafienia cache",
"processMemory": "Pamięć procesu",
"systemLoad": "Obciążenie systemu",
"systemChart": "Ostatnie próbki obciążenia CPU",
"systemMemory": "RAM użyta / łącznie",
"systemSwap": "Swap systemu",
"systemUptime": "Czas pracy systemu",
"loadAverage": "Load 1 / 5 / 15 min",
"cacheOverview": "Cache RAM",
"cacheObjects": "Obiekty / pamięć",
"cacheEvictions": "Usunięte / wygasłe",
"processDiagnostics": "Proces",
"platform": "Platforma",
"processCpu": "CPU (100% = 1 rdzeń)",
"fileDescriptors": "Deskryptory / limit",
"processThreads": "Wątki systemowe",
"processVirtualMemory": "Pamięć wirtualna / limit",
"processStartTime": "Start procesu",
"containerMemory": "RAM cgroup / limit",
"networkDiagnostics": "Sieć i odpowiedzi",
"hostScope": "Zakres systemu",
"networkRate": "RX / TX na sekundę",
"meanLatency": "Średni czas obsługi",
"filterLogs": "Filtruj host lub ścieżkę",
"filterResult": "Filtruj wynik",
"allResults": "Wszystkie",
"routeCache": "Cache dla trasy",
"inheritCache": "Dziedzicz ustawienia globalne",
"bypassCache": "Zawsze pomijaj cache",
"listeners": "Listenery",
"httpConnections": "Połączenia HTTP",
"httpConnectionsHelp": "Cykl życia połączeń i limity transportu dla HTTP/2 oraz HTTP/3.",
"http2Tab": "HTTP/2",
"http3Tab": "HTTP/3",
"http2Settings": "Połączenia HTTP/2",
"http2SettingsHelp": "HTTP/2 włącza się osobno dla każdego listenera. Tutaj ustawisz bezczynność, maksymalny czas życia i graceful drain po GOAWAY.",
"http2IdleTimeout": "Idle timeout (sekundy)",
"http2MaxLifetime": "Maksymalny czas życia połączenia (sekundy, 0 = wyłączony)",
"http2DrainTimeout": "Drain timeout (sekundy)",
"http2DrainHelp": "Te limity dotyczą tego listenera. Idle timeout obejmuje tylko nieużywane połączenia, maksymalny lifetime jest bezwzględny, a drain ogranicza czas aktywnych strumieni po GOAWAY. Zmiany wymagają restartu.",
"http2Save": "Zapisz ustawienia HTTP/2",
"http2NoEnabledListeners": "Żaden listener nie ma włączonego HTTP/2. Najpierw włącz HTTP/2 lub h2c w Ustawienia > Listenery.",
"http2ListenersDirty": "Najpierw zapisz oczekujące zmiany w Listenerach, a następnie edytuj ustawienia HTTP/2.",
"restartLabel": "RESTART",
"listenersHelp": "Nazwane adresy IP i porty. Zmiany wymagają restartu. Panel administracyjny pozostaje osobno.",
"httpAddress": "Adres nasłuchu i port HTTP",
"httpsAddress": "Adres nasłuchu i port HTTPS",
"enableHttps": "Włącz nasłuch HTTPS",
"lowPortsHelp": "Porty uprzywilejowane mogą wymagać CAP_NET_BIND_SERVICE. Nie uruchamiaj całej aplikacji jako root.",
"saveListeners": "Zapisz ustawienia portów",
"inheritListeners": "Użyj ustawień startowych",
"responseSettings": "Odpowiedź do klienta",
"hotApply": "BEZ RESTARTU",
"serverHeader": "Nagłówek Server",
"serverPreserve": "Zachowaj wartość backendu",
"serverHide": "Ukryj całkowicie",
"serverCustom": "Nadpisz / dodaj własną wartość",
"serverValue": "Własna wartość Server",
"compression": "Kompresja strumieniowa",
"compressionMin": "Minimalny rozmiar odpowiedzi (bajty)",
"compressionHelp": "Negocjuje Accept-Encoding według q klienta, a przy równym q używa priorytetu zstd → br → gzip → deflate. Cookie, Authorization, Set-Cookie oraz odpowiedzi private i no-store mogą być kompresowane. Istniejący Content-Encoding, zakresy, SSE, upgrade i no-transform są przekazywane bez rekompresji.",
"saveResponse": "Zastosuj ustawienia odpowiedzi",
"cacheSettings": "Cache",
"enableCache": "Włącz cache",
"cacheSafety": "Cache zapisuje kompletne, bezpieczne odpowiedzi GET. Authorization, cookies oraz odpowiedzi private/no-store nadal omijają cache. Pojedynczy zakres bajtów może być obsłużony z pełnego obiektu cache; multipart i nieobsługiwane zakresy przechodzą do originu.",
"cacheMemory": "Limit alokowanej pamięci HOT (MiB)",
"cacheObject": "Limit obiektu (KiB)",
"cacheEntries": "Maksymalna liczba wpisów",
"cacheMaxTtl": "Maksymalny TTL (sekundy)",
"cacheDefaultTtl": "Zapasowy TTL odpowiedzi publicznych (0 = wył.)",
"bypassQuery": "Pomijaj adresy z parametrami query",
"cachePrefixes": "Pomijane prefiksy ścieżek, po jednym w wierszu",
"cacheAgeHelp": "Trafienia zawierają Age, chyba że jawna reguła nagłówka odpowiedzi go usunie lub zastąpi. Takie reguły Age działają tylko na odpowiedzi wysyłanej do klienta i nie zmieniają świeżości cache. Liczniki działają również przy ukrytych nagłówkach diagnostycznych. Tylko zmiany wpływające na cache unieważniają niezgodne obiekty; podczas zarządzanej aktualizacji hot cache jest przenoszony do cold storage, jeśli cold tier jest włączony.",
"saveCache": "Zastosuj ustawienia cache",
"purgeCache": "Wyczyść cały cache",
"customHeaders": "Globalne reguły nagłówków",
"globalHeadersHelp": "Request trafia do backendu, response do klienta. Reguły trasy są stosowane po globalnych. Polityka Server ma ostateczne pierwszeństwo.",
"responseHeaders": "Odpowiedź do klienta",
"requestHeaders": "Żądanie do backendu",
"addHeader": "Dodaj regułę nagłówka",
"saveHeaders": "Zastosuj reguły nagłówków",
"unavailable": "Brak danych",
"threads": "wątków",
"realSample": "Pomiar",
"noKnownLimit": "nieznany / bez limitu",
"unlimited": "bez limitu",
"restartPending": "Zapisano zmianę portów. Uruchom ponownie RustProxy, aby ją zastosować.",
"activeListeners": "Aktualnie aktywne",
"headerLimit": "Maksymalnie 32 reguły w każdym kierunku.",
"headerOperation": "Operacja",
"header_set": "Ustaw",
"header_append": "Dodaj",
"header_remove": "Usuń",
"headerName": "Nazwa nagłówka",
"headerValue": "Wartość nagłówka",
"confirmInherit": "Przywrócić ustawienia portów z parametrów startowych i środowiska po restarcie?",
"confirmPurge": "Usunąć wszystkie obiekty cache i anulować zapis trwających pobrań?",
"cachePurged": "Cache wyczyszczony; usunięte wpisy",
"logsDropped": "odrzucone",
"updateAvailable": "Nowa wersja",
"vhosts": "Vhosty",
"vhostsTitle": "Vhosty i backendy",
"vhostsDescription": "Zarządzaj domenami, frontendami, backendami i politykami hostów.",
"vhHealthTitle": "Backendy",
"vhManage": "Zarządzaj vhostami",
"vhHealthEmpty": "Brak danych diagnostycznych backendów.",
"vhVhost": "Vhost",
"vhActive": "Aktywne",
"vhRequests": "Żądania",
"vhErrors": "Błędy",
"vhLatency": "Opóźnienie (EWMA)",
"vhTraffic": "Transfer/s",
"vhClientGeneration": "Gen. klienta",
"vhGenerationRequests": "Żądania gen.",
"vhGenerationAge": "Wiek gen.",
"vhClientRotations": "Rotacje",
"vhList": "Hosty wirtualne",
"vhSearch": "Szukaj vhostów",
"vhSearchPlaceholder": "Szukaj domeny, vhosta lub backendu",
"vhSearchEmpty": "Brak vhostów pasujących do wyszukiwania.",
"vhNew": "Nowy vhost",
"vhMigrate": "Migracja grupy starszych tras",
"vhImport": "Wczytaj do edytora",
"vhMigrationHint": "Migracja jest atomowa. Trasy tych samych hostów i backendu są grupowane; niejednoznaczne przypisanie hostów jest odrzucane.",
"vhEditor": "Konfiguracja vhosta",
"vhReset": "Odrzuć zmiany",
"vhSafetyHint": "Prywatny IP nie zastępuje uwierzytelniania. Zachowaj firewall i ACL. Preload HSTS jest opcjonalny; cookie affinity nie jest sesją logowania.",
"vhId": "Identyfikator vhosta",
"vhHosts": "Nazwy hostów",
"vhEnabled": "Włączony",
"vhFrontends": "Frontendy / adresy nasłuchu",
"vhAddFrontend": "Dodaj frontend",
"vhAddress": "IP:port (IPv6: [adres]:port)",
"vhTls": "TLS włączony",
"vhHttp2": "Preferuj HTTP/2 przez TLS; zachowaj HTTP/1.1",
"vhBackendPopupOpen": "Pokaż szczegóły backendów",
"vhBackendPopupTitle": "Backendy",
"vhBackendPopupAddress": "IP / host",
"vhBackendPopupProtocol": "Protokół",
"vhBackendPopupLastHttp": "Ostatnia odpowiedź HTTP",
"vhBackendPopupNoResponse": "Brak odpowiedzi HTTP",
"vhBackendPopupEmpty": "Brak skonfigurowanych backendów.",
"vhBackendPopupHint": "Ostatni kod HTTP pochodzi z rzeczywistego żądania proxy, a nie sondy. Dla DNS wyświetlany jest skonfigurowany host, nie rozwiązany adres IP.",
"vhBackendPool": "Backendy",
"vhAddBackend": "Dodaj backend",
"vhMemberId": "Identyfikator backendu",
"vhUrl": "Adres URL backendu",
"vhWeight": "Waga",
"vhBackup": "Tylko zapasowy",
"vhDrain": "Wstrzymaj nowe sesje",
"vhPrivate": "Zezwól na prywatny IP backendu",
"vhPreserveHost": "Zachowaj Host klienta / HTTP/2 :authority",
"vhBackendProtocolRecent": "Ostatnia wersja HTTP z odpowiedzi backendu na rzeczywiste żądanie. Inne połączenia mogą używać innego protokołu. Łącznie odpowiedzi:",
"vhBackendProtocolUnobserved": "Brak odpowiedzi backendu z ostatnich pięciu minut. Tryb Auto nie oznacza potwierdzonego protokołu.",
"vhProtocol": "Protokół backendu",
"vhProtocolHttp1": "HTTP/1.1 (TLS lub bez TLS)",
"vhProtocolAuto": "Auto (HTTPS ALPN: H2 + H1; HTTP: H1)",
"vhProtocolHttp2": "HTTP/2 zgodny wstecz (HTTPS: H2 + fallback H1; HTTP: h2c)",
"vhAddressAllowlist": "Dozwolone IP/CIDR backendu (opcjonalne)",
"vhTlsServerName": "Nazwa serwera TLS / SNI (opcjonalna)",
"vhTlsVerify": "Weryfikuj certyfikat i nazwę hosta backendu",
"vhTlsVerifyHelp": "Przy pominięciu ustawienia weryfikacja jest wyłączona. Włącz ją, gdy RustProxy ma weryfikować łańcuch i tożsamość certyfikatu backendu. Jeśli walidacja nie przechodzi, ustaw nazwę serwera TLS na nazwę DNS obecną w certyfikacie i/lub dodaj PEM prywatnego CA. Nie używaj adresu IP jako SNI.",
"vhCa": "Dodatkowy zaufany CA (PEM, opcjonalny)",
"vhBalancing": "Balansowanie i ponowne użycie połączeń",
"vhAlgorithm": "Algorytm",
"vhRoundRobin": "Płynny ważony round-robin",
"vhLeastConnections": "Najmniej aktywnych wymian, z wagami",
"vhLeastTraffic": "Najmniejszy transfer (EWMA), z wagami",
"vhAdaptive": "Adaptacyjny: aktywność + opóźnienie + transfer",
"vhIpHash": "Skrót IP klienta",
"vhSlowStart": "Łagodny powrót (sekundy)",
"vhRetryMax": "Ponowienia failover",
"vhRetryConnect": "Ponawiaj błędy połączenia",
"vhRetryTimeouts": "Ponawiaj timeout nagłówków odpowiedzi",
"vhRetryStatuses": "Ponawiane statusy HTTP",
"vhRetryHelp": "Retry działa tylko dla bezbody GET, HEAD i OPTIONS, wybiera inny zdrowy backend i nigdy nie ponawia WebSocketów ani żądań zapisu.",
"vhKeepalive": "Używaj ponownie połączeń do backendu (keepalive)",
"vhIdleTimeout": "Limit bezczynności w puli (sekundy)",
"vhMaxIdle": "Maks. bezczynnych połączeń / backend",
"vhTcpKeepalive": "Interwał keepalive TCP / HTTP/2 (sekundy)",
"vhHealth": "Zdrowie backendów",
"vhHealthMode": "Rodzaj testu",
"vhOff": "Wyłączone",
"vhTcp": "Połączenie TCP",
"vhHttp": "Status HTTP + czas odpowiedzi",
"vhHealthPath": "Ścieżka testu HTTP",
"vhHealthHost": "Własny Host testu HTTP (opcjonalny)",
"vhInterval": "Interwał (ms)",
"vhTimeout": "Limit czasu (ms)",
"vhSlow": "Próg wolnej odpowiedzi (ms; 0 = wył.)",
"vhFall": "Niepowodzenia przed wyłączeniem",
"vhRise": "Sukcesy przed przywróceniem",
"vhStatusMin": "Minimalny status HTTP",
"vhStatusMax": "Maksymalny status HTTP",
"vhHealthNote": "Sondy HTTP używają HTTP/1.1 i mierzą czas do nagłówków, nie czas całego body. Gdy pole Host jest puste, RustProxy automatycznie używa pierwszej dokładnej domeny DNS vhosta; jeśli jej nie ma, używa hosta backendu. Dla usług tylko h2c użyj TCP. Nowe backendy czekają na udaną sondę. Active health jest niezależny od passive health.",
"vhPassiveHealth": "Pasywne zdrowie backendu",
"vhPassiveEnabled": "Pozwól, aby błędy zwykłych requestów oznaczały backend jako niedostępny",
"vhPassiveHelp": "Domyślnie wyłączone. Błędy nadal są logowane i zliczane, ale zwykły ruch użytkowników nie zmienia stanu backendu bez świadomego włączenia.",
"vhPassiveConnect": "Zliczaj błędy połączenia",
"vhPassiveTimeouts": "Zliczaj timeouty",
"vhPassiveIo": "Zliczaj błędy I/O body/odczytu/zapisu",
"vhPassive5xx": "Zliczaj odpowiedzi HTTP 5xx",
"vhPassiveSlow": "Zliczaj wolne odpowiedzi",
"vhPassiveFall": "Pasywne błędy przed wyłączeniem (puste = active fall)",
"vhPassiveRise": "Pasywne sukcesy przed przywróceniem (puste = active rise)",
"vhPassiveWarning": "Włączenie 5xx lub wolnych odpowiedzi może wyłączyć cały backend po serii błędów z pojedynczego endpointu.",
"vhSticky": "Sticky sessions",
"vhStickyMode": "Tryb przypisania",
"vhCookie": "Nieprzezroczyste cookie proxy",
"vhCookieName": "Nazwa cookie (pusta = domyślna per vhost)",
"vhCookieTtl": "Ważność cookie (sekundy)",
"vhStickyNote": "Sticky cookie omija współdzielony cache. Drain zachowuje istniejące sesje cookie. Przypisanie po IP używa zweryfikowanego adresu klienta zgodnie z polityką zaufanych proxy.",
"vhSecurity": "Bezpieczeństwo",
"vhHsts": "Włącz HSTS (tylko odpowiedzi TLS)",
"vhHstsAge": "HSTS max-age (sekundy)",
"vhHstsSub": "HSTS includeSubDomains",
"vhHstsPreload": "HSTS preload (świadome włączenie)",
"vhNosniff": "X-Content-Type-Options: nosniff",
"vhFrame": "X-Frame-Options",
"vhPreserve": "Zachowaj wartość backendu",
"vhDeny": "DENY",
"vhSameorigin": "SAMEORIGIN",
"vhReferrer": "Referrer-Policy (opcjonalne)",
"vhCsp": "Content-Security-Policy (opcjonalne)",
"vhPermissions": "Permissions-Policy (opcjonalne)",
"vhAdvanced": "Zaawansowane: ścieżki, ACL i własne nagłówki",
"vhPaths": "Sciezki (JSON; opcjonalne backend_id przypina sciezke do jednego backendu)",
"vhAcl": "ACL vhosta (JSON lub null)",
"vhHeaders": "Reguły nagłówków żądania / odpowiedzi (JSON)",
"vhEmpty": "Brak vhostów. Dotychczasowe trasy nadal działają.",
"vhUnsaved": "Odrzucić niezapisane zmiany vhosta?",
"vhDelete": "Usunąć vhost? Gniazda nasłuchu zostaną zamknięte po restarcie.",
"vhConflict": "Vhost o takim identyfikatorze już istnieje.",
"vhRowLimit": "Osiągnięto maksymalną liczbę wierszy.",
"vhMigrationAmbiguous": "Hosty pokrywają się z innymi trasami. Uporządkuj przypisanie w JSON przed migracją.",
"vhMigrationPending": "Migracja starszych tras zostanie zatwierdzona przy zapisie.",
"vhMigrationNone": "Wybierz starszą trasę",
"vhJsonInvalid": "Nieprawidłowy JSON lub typ danych w ścieżkach, ACL lub nagłówkach.",
"vhUp": "Działa",
"vhDown": "Niedostępny",
"vhChecking": "Sprawdzanie",
"vhDraining": "Wygaszanie",
"vhDisabled": "Wyłączony",
"vhHealthDisabled": "Testy wyłączone",
"vhHealthUnknown": "Nieznany",
"vhNewLabel": "NOWY",
"vhEditLabel": "EDYCJA",
"vhFrontendNote": "Użyj IP przypisanego do serwera. Wildcard przyjmuje wszystkie IP danej rodziny; routing nadal sprawdza lokalny adres docelowy. Certyfikaty ustaw w zakładce TLS.",
"close": "Zamknij",
"inherit": "Dziedzicz",
"liveLogs": "Logi na żywo",
"logVhost": "Filtruj vhost",
"logAllVhosts": "Wszystkie vhosty",
"logAllMethods": "Wszystkie metody",
"logPause": "Wstrzymaj",
"logPaused": "WSTRZYMANO",
"logResume": "Wznów",
"logPin": "Przypnij",
"logUndock": "Otwórz modalnie",
"logColumns": "Kolumny",
"logColumnsRequired": "Co najmniej jedna kolumna Live Logs musi pozostać widoczna.",
"logLoadHistory": "Zwiększ bufor",
"logHistoryLoaded": "Bufor live zwiększono do {count} zachowanych wpisów.",
"logHost": "Host",
"logBufferHint": "Widok na żywo zaczyna od ostatnich 256 zakończonych wymian. Zwiększenie bufora wczytuje zachowaną historię i dalej dopisuje logi na żywo do 4096 wpisów, aż do zamknięcia okna. Eksport obejmuje aktualnie przefiltrowane wiersze.",
"settingsSecurityHint": "Konta i ACL są globalne. SSL, HSTS, nagłówki i cache konfigurujesz także wewnątrz vhosta.",
"theme": "Motyw",
"themeDark": "Ciemny",
"themeLight": "Jasny",
"density": "Gęstość interfejsu",
"densityCompact": "Kompaktowy",
"densityDense": "Gęsty",
"densityComfortable": "Przestronny",
"globalPages": "Domyślne odpowiedzi",
"pagesHelp": "Strony dla adresu IP, nieznanych hostów i błędów. Pusty status zachowuje kod odpowiedzi. Strony statyczne nie odpytują backendu.",
"pageInherit": "Domyślna / dziedziczona",
"pageWelcome": "Strona gratulacyjna",
"pageEmpty": "Pusta odpowiedź",
"pageHtml": "Własny HTML",
"pageStatus": "Kod odpowiedzi",
"pageOriginalStatus": "Oryginalny status",
"pageHtmlSource": "Kod HTML",
"pageUploadHtml": "Opcjonalny plik HTML (maks. 32 KiB)",
"pageTooLarge": "HTML nie może przekraczać 32 KiB w UTF-8.",
"customErrorPages": "Własne strony błędów",
"pageStaticHost": "Host statyczny / przerwa techniczna",
"pageMissingPath": "Niepasująca ścieżka",
"pageDirectIp": "Wejście bezpośrednio po IP",
"pageUnknownHost": "Nieznany host",
"pagesSafetyHint": "HTML to treść publiczna. ACL nadal działa przed odpowiedzią. Jawne HTTP 200 dla błędu ukrywa kod przed klientami i monitoringiem. Cała konfiguracja ma limit rozmiaru.",
"vhDetailsTab": "Szczegóły",
"vhSsl": "Certyfikaty SSL",
"vhCertificate": "Wybrany certyfikat",
"vhCertificateDefault": "Globalne SNI / certyfikat domyślny",
"vhCertificateFile": "Certyfikat / pełny łańcuch (PEM)",
"vhPrivateKeyFile": "Klucz prywatny (PEM)",
"vhUploadCertificate": "Wgraj i zweryfikuj parę",
"vhSelectCertificateFiles": "Wybierz plik certyfikatu i klucza prywatnego.",
"vhCertificateTooLarge": "Każdy plik PEM ma limit 128 KiB.",
"vhCertificateNeedsHosts": "Najpierw wpisz domeny vhosta w Szczegółach.",
"vhCertificateStaged": "Para zweryfikowana i zapisana. Zapisz vhost, aby aktywować certyfikat.",
"vhCertificateUploadHint": "Upload sprawdza zgodność klucza i domen. Klucz trafia do prywatnego pliku, nie do API. Zapis vhosta aktywuje wybór. Upload nie zapisuje pozostałych zmian. Zmiany listenerów wymagają restartu.",
"vhCompression": "Kompresja",
"vhCompressionHelp": "Kompresja i każdy kodek domyślnie dziedziczą ustawienia. Na tym poziomie można ograniczyć globalnie włączone kodeki, ale nie można włączyć kodeku wyłączonego w Ustawienia → Odpowiedź. Minimalny rozmiar pozostaje globalny.",
"compressionEnabled": "Kompresja dynamiczna",
"compressionZstd": "Zstandard (zstd)",
"compressionBr": "Brotli (br)",
"compressionGzip": "gzip",
"compressionDeflate": "deflate",
"vhCache": "Cache",
"vhCacheTtl": "Maks. TTL (sekundy, puste = dziedzicz)",
"vhCacheDefault": "Domyślny TTL public (puste = dziedzicz)",
"vhCacheObject": "Limit obiektu (KiB, puste = dziedzicz)",
"cacheEnabled": "Włącz cache",
"cacheBypassQuery": "Pomijaj adresy z parametrami",
"cacheStatusHeader": "Dodaj X-Cache",
"cacheHitsHeader": "Dodaj X-Cache-Hits",
"cacheRfcHeader": "Dodaj Cache-Status",
"cacheBypassPrefixes": "Pomijane prefiksy ścieżek",
"vhCacheCustomPrefixes": "Nadpisz odziedziczone pomijane ścieżki",
"vhCacheHint": "Polityka hosta może włączyć cache niezależnie od ustawienia globalnego. Vhosty współdzielą limit RAM i wpisów. Sticky cookie, dane prywatne i autoryzacja nadal omijają cache.",
"vhPurgeCache": "Wyczyść cache hosta",
"vhPurgeConfirm": "Wyczyścić cache tylko tego vhosta? Trwające zapisy tego hosta także zostaną unieważnione.",
"vhPages": "Strony błędów",
"vhHeadersOrder": "Kolejność: reguły globalne, vhost, ścieżka, następnie security/Server. Nadal dostępny jest zaawansowany JSON.",
"vhNewHealthHint": "Zapisz vhost, aby rozpocząć obserwację backendów.",
"listenerAdd": "Dodaj listener",
"listenerMigrate": "Zamień domyślne porty na nazwane listenery",
"listenerScopeHint": "Wewnętrzny / publiczny to etykieta, nie firewall. Nowe listenery nie udostępniają starych tras bez jawnego wyboru.",
"listenerLimit": "Maksymalnie 64 nazwane listenery.",
"listenerEndpoint": "Listener",
"listenerName": "Nazwa wyświetlana",
"listenerScope": "Etykieta",
"listenerInternal": "Wewnętrzny",
"listenerPublic": "Publiczny",
"listenerLegacy": "Udostępnij stare trasy",
"listenerInUse": "Listener jest przypisany do vhostów",
"listenerDuplicate": "Identyfikatory listenerów muszą być unikalne.",
"listenerChooseHint": "Wybierz nazwane listenery skonfigurowane w Ustawienia > Listenery. Wyłączony listener nie daje dostępu.",
"listenerMissing": "Brakujący listener",
"http3Settings": "HTTP/3 / QUIC",
"http3SettingsHelp": "HTTP/3 włącza się w Ustawienia > Listenery. Tutaj ustawisz ogłaszanie usługi oraz limity połączeń i strumieni.",
"http3NoTlsListeners": "Brak listenerów TLS. Najpierw dodaj i zapisz listener TLS.",
"http3NoEnabledListeners": "Żaden listener TLS nie ma włączonego HTTP/3. Najpierw włącz HTTP/3 w Ustawienia > Listenery.",
"http3ListenersDirty": "Najpierw zapisz oczekujące zmiany w Listenerach, a następnie edytuj ustawienia HTTP/3.",
"http3Save": "Zapisz ustawienia HTTP/3",
"h2Configure": "Ustaw limity HTTP/2",
"h3Enable": "Włącz HTTP/3 przez QUIC (UDP)",
"h3Configure": "Ustaw limity HTTP/3",
"h3Limits": "Limity HTTP/3 i ogłaszanie usługi",
"h3_alt_svc_max_age": "Ważność Alt-Svc (s)",
"h3_max_concurrent_connections": "Połączenia na listener",
"h3_max_concurrent_bidistream": "Strumienie dwukierunkowe na połączenie",
"h3_max_concurrent_unistream": "Strumienie jednokierunkowe na połączenie",
"h3_max_idle_timeout": "Bezczynność QUIC (s; 0 = bez limitu)",
"h3Help": "HTTP/3 wymaga TLS. Udostępnij TCP i UDP na tym samym porcie; HTTP/1.1 i HTTP/2 pozostają. Zero wyłącza lokalny timeout QUIC. Zmiana wymaga restartu.",
"h3TuningHelp": "Alt-Svc działa natychmiast; limity strumieni i bezczynności dotyczą nowych połączeń QUIC. Zmiana buforów UDP (domyślnie po 4 MiB) lub adresów listenerów wymaga restartu. Linux może ograniczać rozmiar przez net.core.rmem_max / wmem_max.",
"h3Requests": "Żądania HTTP/3",
"certImport": "Importuj certyfikat",
"certImportSave": "Importuj i zapisz w bibliotece",
"certLibraryHint": "Wgraj certyfikat/fullchain i klucz prywatny PEM. Zapisz raz, następnie przypisz certyfikat do jednego lub wielu vhostów.",
"certCheckDomains": "Domeny do sprawdzenia (po przecinku)",
"certAcmeLater": "Wydane certyfikaty trafiaja do biblioteki i sa przypisywane do vhostow.",
"certAdvanced": "Istniejące pliki / zaawansowane",
"certLegacyNames": "Stare nazwy SNI (opcjonalne; zalecane przypisanie w vhoście)",
"certAssigned": "Przypisane vhosty",
"certUnassigned": "Nieprzypisany",
"certInUse": "Certyfikat jest używany. Zmień przypisania vhostów i certyfikat domyślny przed usunięciem.",
"certDuplicate": "Ten identyfikator certyfikatu istnieje. Do bezpiecznej rotacji użyj nowego.",
"certManage": "Zarządzaj biblioteką certyfikatów",
"certSelectHint": "Wybierz zaimportowany certyfikat. Import i rotacja są w zakładce Certyfikaty. Przypisania są sprawdzane względem nazw vhosta.",
"vhTinyauth": "Uwierzytelnianie",
"vhTabAuth": "Uwierzytelnianie",
"taEnable": "Włącz ochronę Tinyauth",
"taUrl": "URL Tinyauth / punkt weryfikacji",
"taLogin": "Publiczny URL logowania",
"taRedirectForbidden": "Akceptuj przekierowanie Tinyauth dla 403 (ten sam origin)",
"taConnect": "Limit połączenia (s)",
"taTimeout": "Łączny limit weryfikacji (s)",
"taRequestHeaders": "Nagłówki klienta do Tinyauth",
"taResponseHeaders": "Zweryfikowane nagłówki tożsamości do aplikacji",
"taHelp": "Do adresu serwera dodawane jest /api/auth/nginx. Weryfikacja bez body działa przed cache i WebSocket. Chronione odpowiedzi mają private, no-store. Ustaw w Tinyauth zaufanie do rzeczywistego IP RustProxy.",
"vhResponsePolicy": "Identyfikacja odpowiedzi i diagnostyka",
"vhInherit": "Dziedzicz ustawienia globalne",
"diagnosticHeaders": "Diagnostyczne nagłówki odpowiedzi",
"diagInherit": "Dziedzicz nagłówki diagnostyczne",
"diagRequestId": "Udostępnij X-Request-ID",
"hideMockOrigin": "Ukryj X-Mock-Origin",
"diagHelp": "X-Request-ID jest opcjonalny. Pozostale naglowki odpowiedzi upstreamu kontroluj zwyklymi regulami naglowkow odpowiedzi.",
"forwardingSettings": "Tożsamość klienta / forwarding",
"forwardingHelp": "Domyślnie nagłówki forwarding od klienta są usuwane. Dodaj tylko kontrolowane proxy. Łańcuch jest sprawdzany od prawej do pierwszego niezaufanego adresu.",
"forwardingCanonical": "RustProxy generuje Forwarded, X-Forwarded-For, X-Real-IP, X-Forwarded-Host, X-Forwarded-Proto, X-Forwarded-Port i X-Forwarded-URI. Adres docelowy połączenia nigdy nie pochodzi z nagłówka.",
"trustedProxies": "Zaufane sieci proxy CIDR (po jednej w wierszu; /32 dla IPv4, /128 dla IPv6)",
"trustForwardedProto": "Ufaj X-Forwarded-Proto tylko od zaufanych proxy",
"listenerId": "ID listenera",
"cache": "Cache",
"cacheTitle": "Cache pod kontrolą.",
"cacheDescription": "Obiekty, skuteczność domen i dokładne przyczyny decyzji.",
"cacheRefresh": "Odśwież",
"cacheLive": "Na żywo (3 s)",
"cachePurgeScope": "Wyczyść wybrany zakres",
"cacheObjectCount": "Obiekty w pamięci",
"cacheSaved": "Dane odpowiedzi z RAM",
"cacheCounterScope": "Liczniki domen od zmiany konfiguracji",
"cacheDomains": "Domeny i skuteczność",
"cacheScopeHint": "Limity RAM, zapisy i usunięcia są globalne. Liczniki domen zerują się przy zmianie konfiguracji; czyszczenie obiektów ich nie zeruje.",
"cacheDomain": "Domena",
"cacheReasons": "Liczniki decyzji",
"cacheNoDomains": "Brak decyzji cache. Wyślij żądania do skonfigurowanego hosta.",
"cacheObjectList": "Zapisane obiekty",
"cachePrevious": "Poprzednie",
"cacheNext": "Następne",
"cacheObjectHint": "Najpierw ostatnio używane. Wiek HTTP (Age) obejmuje także czas w upstream/CDN; Czas w RustProxy to rzeczywista rezydencja w HOT/COLD. Wpisy nieświeże mogą nadal być widoczne. Kliknij Target lub Cache key / tags, aby skopiować wartość.",
"cachePath": "Ścieżka",
"cacheBodySize": "Treść",
"cacheAge": "Wiek",
"cacheResidentAgeValue": "Czas w RustProxy",
"cacheTtlRemaining": "Pozostały TTL",
"cacheNoObjects": "Brak zapisanych obiektów w tym zakresie. Sprawdź filtry vhosta oraz liczniki decyzji.",
"cacheLegacy": "Nieprzypisane",
"cacheGlobalLimit": "Limit globalny",
"cacheFills": "Aktywne zapisy (globalnie)",
"cacheRejected": "Odrzucone zapisy (globalnie)",
"cacheUpdated": "Aktualizacja",
"acmeTitle": "Let's Encrypt / ACME",
"acmeHelp": "Wydaj certyfikat ACME, dodaj go do biblioteki i przypisz do vhosta. Automatyczne odnawianie rozpocznie się po imporcie.",
"acmeEmail": "Email kontaktowy ACME",
"acmeDomains": "Nazwy DNS, rozdzielone przecinkami (wildcard tylko z DNS-01)",
"acmeEnvironment": "Środowisko CA",
"acmeStaging": "Staging - niezaufane przez przeglądarkę",
"acmeProduction": "Produkcja",
"acmeDnsServer": "IP serwera aktualizacji DNS",
"acmeDnsPort": "Port aktualizacji DNS",
"acmeKeyName": "Nazwa klucza TSIG",
"acmeSecret": "Sekret TSIG (base64)",
"acmeAlgorithm": "Algorytm TSIG",
"acmePropagation": "Oczekiwanie na propagację DNS (sekundy)",
"acmeSignQuery": "Podpisuj zapytanie SOA",
"acmeTos": "Akceptuje umowe subskrybenta Let's Encrypt i zezwalam na walidacje domen.",
"acmeConfirmProduction": "Potwierdzam wydanie produkcyjne (obowiązują limity CA).",
"acmeIssue": "Zamów certyfikat",
"acmeIdle": "Brak zadania wydania w tym procesie.",
"acmeImport": "Dodaj wydany certyfikat do biblioteki",
"acmeRenewalHint": "Pierwsze wydanie/import pozostaje ręczne. Profile zarządzanych certyfikatów są następnie sprawdzane automatycznie podczas działania RustProxy; po restarcie zapisany stan odnowień jest odtwarzany z SQLite.",
"acmeReplace": "Zastąpić certyfikat w bibliotece? Przypisania vhostów zostaną zachowane i ponownie sprawdzone.",
"acmeImported": "Certyfikat zapisany. Przypisz go w zakładce SSL vhosta.",
"certFuture": "Automatyczne odnawianie jest dostępne dla obsługiwanych dostawców ACME; obserwacje odnowień są zapisywane w SQLite.",
"cacheReason_cache_hit": "Użyto świeżego obiektu",
"cacheReason_cache_miss": "Brak pasującego świeżego obiektu",
"cacheReason_cache_disabled": "Cache wyłączony",
"cacheReason_route_disabled": "Cache wyłączony na trasie",
"cacheReason_request_cookie": "Cookie aplikacji",
"cacheReason_request_authorization": "Nagłówek Authorization",
"cacheReason_request_cache_control": "Dyrektywa klienta / twarde odświeżenie",
"cacheReason_request_pragma": "Pragma klienta",
"cacheReason_request_method": "Metoda inna niż GET",
"cacheReason_request_body": "Niepusta treść żądania",
"cacheReason_request_range": "Żądanie zakresu",
"cacheReason_request_conditional": "Żądanie warunkowe",
"cacheReason_request_upgrade": "Zmiana protokołu",
"cacheReason_query_excluded": "Wykluczone query",
"cacheReason_path_excluded": "Wykluczona ścieżka",
"cacheReason_request_cache_control_invalid": "Błędne dyrektywy cache klienta",
"cacheReason_response_status": "Odpowiedź inna niż 200",
"cacheReason_response_set_cookie": "Set-Cookie z backendu",
"cacheReason_response_cache_control": "Prywatność / dyrektywa backendu",
"cacheReason_response_cache_control_invalid": "Błędne dyrektywy backendu",
"cacheReason_response_vary": "Niedozwolony wariant Vary",
"cacheReason_response_range": "Odpowiedź częściowa",
"cacheReason_response_trailers": "Trailers odpowiedzi",
"cacheReason_response_ttl_size_or_metadata": "Odrzucony TTL, rozmiar lub metadane",
"cacheReason_response_headers_policy": "Reguła nagłówków blokuje zapis",
"cacheReason_configuration_changed": "Zmieniona konfiguracja",
"cacheReason_not_proxy_response": "Strona lokalna / odrzucone żądanie",
"cacheReason_tinyauth": "Treść chroniona Tinyauth",
"cacheReason_sticky_cookie": "Tryb cookie sticky session",
"acme.working": "Trwa zamawianie certyfikatu.",
"acme.ready_to_import": "Certyfikat sprawdzony; gotowy do dodania do biblioteki.",
"acme.certbot_not_installed": "Brak Certbota w PATH usługi. Zainstaluj Certbota i certbot-dns-rfc2136.",
"acme.certbot_failed_check_private_log": "Błąd Certbota. Sprawdź prywatne logi ACME; dokładna ścieżka jest pokazana przy błędzie operacji.",
"acme.production_confirmation": "Wymagane potwierdzenie wydania produkcyjnego.",
"acme.consent_required": "Zaakceptuj umowę i potwierdź wybrane środowisko CA.",
"acme.provider_timeout": "Przekroczono czas operacji CA. Przed ponowieniem sprawdź logi Certbota wskazane przy błędzie operacji.",
"acme.invalid_key_secret": "Nieprawidłowy sekret TSIG: wymagany base64 kodujący 16-512 bajtów.",
"acme.job_busy": "Inne zadanie certyfikatu już trwa.",
"acme.cancelled": "Zadanie certyfikatu anulowane podczas zamykania.",
"acme.certificate_validation_failed": "Walidacja certyfikatu, klucza lub domen nie powiodła się. Nic nie aktywowano.",
"acme.invalid_request": "Nieprawidłowe żądanie ACME.",
"acme.unknown_field": "Żądanie zawiera nieobsługiwane pole.",
"acme.invalid_id": "Identyfikator certyfikatu: 1-64 litery, cyfry, myślnik lub podkreślenie.",
"acme.invalid_email": "Podaj prawidłowy adres e-mail kontaktu ACME.",
"acme.invalid_domains": "Podaj od 1 do 16 nazw DNS.",
"acme.invalid_domain": "Podaj prawidłową nazwę DNS (ASCII/punycode).",
"acme.dns_names_only": "Certyfikat wymaga nazw DNS, nie adresów IP.",
"acme.invalid_environment": "Wybierz staging albo produkcję.",
"acme.tos_required": "ACME: tos required.",
"acme.invalid_dns_server": "Podaj adres IPv4 lub IPv6 serwera aktualizacji DNS.",
"acme.invalid_limits": "Port musi mieścić się w 1-65535, a czas propagacji w 10-900 s.",
"acme.invalid_key_algorithm": "Dozwolone algorytmy TSIG: HMAC-SHA256, HMAC-SHA384 i HMAC-SHA512.",
"acme.invalid_sign_query": "Opcja podpisywania SOA musi mieć wartość true albo false.",
"acme.unsafe_directory": "Katalog certyfikatów musi należeć do usługi i mieć prawa 0700; bez dowiązań.",
"acme.unsafe_output_path": "Plik wyniku wykracza poza prywatne archiwum Certbota.",
"acme.invalid_pem_size": "Plik PEM jest za duży lub nie jest zwykłym plikiem.",
"acme.invalid_pem": "Certbot nie zwrócił prawidłowego pliku PEM.",
"acme.profile_limit": "Osiągnięto limit 128 profili ACME. Sprawdź nieużywane profile lokalnie.",
"acme.profile_busy": "Ten profil ACME jest już używany przez inny proces.",
"acme.staging_limit": "Osiągnięto limit 128 par ACME. Usuń lokalnie wyłącznie nieużywane pliki.",
"acme.request_too_large": "Żądanie ACME przekracza 16 KiB.",
"acme.local_io_or_json_error": "Błąd lokalnego pliku lub formatu JSON. Sprawdź katalog i uprawnienia.",
"acme.no_certificate_directory": "Brak katalogu certyfikatów w konfiguracji uruchomienia.",
"acme.python_not_available": "Proces usługi nie może uruchomić python3. Sprawdź PATH i uprawnienia.",
"acme.worker_io": "Nie udała się komunikacja z lokalnym procesem ACME.",
"acme.invalid_worker_response": "Proces ACME zwrócił nieprawidłowy wynik.",
"acme.worker_failed": "Proces ACME zakończył się błędem.",
"acme.validation_worker_failed": "Nie udało się zakończyć walidacji pary certyfikatu i klucza.",
"cacheResidentLabel": "Pamięć cache",
"certificateFuture": "Dostawcy ACME: HTTP-01, Cloudflare, OVH i RFC2136. Odnawianie jest ręczne.",
"prometheusTitle": "Prometheus",
"prometheusHelp": "Osobny endpoint metryk, niezależny od sesji administratora. Domyślnie wyłączony.",
"prometheusEnable": "Włącz endpoint Prometheusa",
"prometheusListen": "IP i port eksportera",
"prometheusPath": "Ścieżka metryk",
"prometheusCidrs": "Dozwolone adresy kolektora (CIDR, po jednym w wierszu)",
"prometheusTokenEnv": "Nazwa zmiennej środowiskowej z tokenem",
"prometheusTokenHelp": "Podaj nazwę zmiennej, nie sekret. Token musi mieć co najmniej 32 znaki. Zmiana adresu lub tokenu wymaga restartu.",
"prometheusCollectors": "Grupy metryk",
"prometheusPreview": "Podgląd metryk",
"prometheusPreviewFailed": "Nie udało się pobrać metryk.",
"prometheusActive": "Aktywny endpoint",
"prometheusDisabled": "Endpoint metryk jest wyłączony.",
"certificateProvider": "Dostawca certyfikatu",
"providerHttp01": "Let's Encrypt - walidacja domeny (HTTP-01)",
"providerCloudflare": "Let's Encrypt - Cloudflare API (DNS-01)",
"providerOvh": "Let's Encrypt - OVH API (DNS-01)",
"providerRfc2136": "Let's Encrypt - RFC2136 / TSIG (DNS-01)",
"providerImport": "Import certyfikatu i klucza prywatnego (PEM)",
"providerExisting": "Istniejące pliki na serwerze / ścieżki zewnętrzne",
"providerHint_http01": "RustProxy uruchamia Certbota w trybie HTTP-01. Nie podajesz tutaj ścieżek do certyfikatu. Każda domena musi wskazywać na ten serwer, a publiczny TCP/80 musi trafiać do listenera HTTP. Wydana para trafia do magazynu certyfikatów RustProxy. Wildcard wymaga DNS-01.",
"providerHint_cloudflare": "RustProxy uruchamia Certbota DNS-01 z pluginem Cloudflare. Nie podajesz tutaj ścieżek do certyfikatu. Użyj tokenu Zone:DNS:Edit ograniczonego do wymaganych stref; wydana para trafia do magazynu RustProxy i może być odnawiana automatycznie.",
"providerHint_ovh": "RustProxy uruchamia Certbota DNS-01 z pluginem OVH. Nie podajesz tutaj ścieżek do certyfikatu. Podaj poświadczenia ograniczone do wymaganych stref DNS; wydana para trafia do magazynu RustProxy i może być odnawiana automatycznie.",
"providerHint_rfc2136": "RustProxy uruchamia Certbota DNS-01 przez RFC2136/TSIG. Nie podajesz tutaj ścieżek do certyfikatu. Serwer DNS musi przyjmować podpisane aktualizacje rekordów walidacyjnych; wydana para trafia do magazynu certyfikatów RustProxy.",
"providerHint_import": "Wybierz z komputera certyfikat/fullchain i odpowiadający klucz prywatny PEM. RustProxy sprawdzi parę i skopiuje ją do <data-dir>/certs; lokalna ścieżka z przeglądarki nie jest zapisywana.",
"providerHint_existing": "Wskaż pliki, które już istnieją na serwerze RustProxy. Wybierz nazwy plików z <data-dir>/certs albo pełne ścieżki zewnętrzne, np. /etc/letsencrypt/live/example.com/fullchain.pem i privkey.pem. Pliki zewnętrzne nie są kopiowane do backupu RustProxy.",
"acmeCfToken": "Token API Cloudflare",
"acmeOvhEndpoint": "Region API OVH",
"acmeOvhApplicationKey": "OVH application key",
"acmeOvhApplicationSecret": "OVH application secret",
"acmeOvhConsumerKey": "OVH consumer key",
"acme.invalid_provider": "Nieobsługiwany dostawca certyfikatu.",
"acme.invalid_api_credential": "Brak klucza API lub niedozwolone znaki w kluczu.",
"acme.invalid_ovh_endpoint": "Wybierz OVH Europa lub Kanada.",
"acme.http01_no_wildcard": "HTTP-01 nie obsługuje wildcardów. Wybierz dostawcę DNS-01.",
"acme.http01_listener_required": "HTTP-01 wymaga aktywnego listenera HTTP bez TLS.",
"cacheScopeLegacy": "Nieprzypisany / poprzedni zakres",
"certificateLibrary": "Certyfikaty",
"certificateWorkspaceHelp": "Zarządzaj zainstalowanymi certyfikatami, automatycznym odnawianiem i generowaniem/importem w osobnych widokach.",
"certificateTabInstalled": "Zainstalowane",
"certificateTabRenewal": "Odnowienie",
"certificateTabGenerate": "Generowanie",
"certificateInstalledTitle": "Zainstalowane certyfikaty",
"certificateInstalledHelp": "Lista certyfikatów dostępnych dla vhostów, redirectów, hostów 404 i panelu administracyjnego.",
"certificateGenerateTitle": "Generowanie i import",
"certificateGenerateHelp": "Wybierz metodę: Let's Encrypt/ACME, import plików PEM albo istniejące pliki z prywatnego katalogu RustProxy.",
"certificateOperationStatus": "Ostatnia operacja ACME",
"certificateNoRenewalOperation": "Brak operacji odnowienia w tym procesie.",
"certificateStateIdle": "Bezczynne",
"certificateStateRunning": "W toku",
"certificateStateReady": "Gotowe",
"certificateStateComplete": "Zakończone",
"certificateStateFailed": "Błąd",
"certbotLogs": "Logi Certbota",
"systemDiagnostics": "System / proces",
"vhWebsockets": "Obsługa WebSocket",
"vhLocations": "Własne lokalizacje",
"locationPath": "Prefiks lokalizacji",
"locationPool": "Backendy vhosta",
"locationMissing": "Brak backendu",
"locationLimit": "Host obsługuje do 64 lokalizacji.",
"locationAccess": "Dostęp do lokalizacji",
"locationHeaders": "Nagłówki lokalizacji",
"locationAddBackend": "Dodaj osobny backend",
"locationAdd": "Dodaj lokalizację",
"locationHelp": "Wygrywa najdłuższy pasujący prefiks. Ścieżka i query pozostają bez zmian. Wybierz backend hosta lub dodaj osobny. Uwierzytelnianie i ACL hosta obowiązują zawsze.",
"aclUse": "Włącz listę dostępu IP",
"aclAllow": "Zezwól",
"aclNetwork": "Adres IP/CIDR lub nazwa DNS",
"aclAction": "Akcja",
"aclAdd": "Dodaj regułę IP",
"authMode": "Uwierzytelnianie",
"authNone": "Brak",
"authTinyauth": "Tinyauth",
"authBasic": "HTTP Basic Auth",
"basicRealm": "Realm (nazwa logowania)",
"basicRequireTls": "Wymagaj HTTPS dla Basic Auth",
"basicForward": "Przekaż zweryfikowany Authorization do backendu",
"basicPassword": "Hasło (12-128 bajtów)",
"basicKeepPassword": "Puste pole zachowuje hasło",
"basicHashSaved": "Hasło ustawione",
"basicHashRequired": "Ustaw hasło dla każdego użytkownika.",
"basicAddUser": "Dodaj użytkownika",
"basicHelp": "Zapisywane są wyłącznie skróty Argon2id. Dane logowania nie trafiają do backendu, chyba że włączysz przekazywanie. Używaj go tylko z zaufanym backendem HTTPS lub w izolowanej sieci. Chronione hosty omijają współdzielony cache.",
"basic.too_many_users": "Maksymalnie 64 użytkowników na hosta.",
"basic.invalid_username": "Nieprawidłowa nazwa użytkownika.",
"basic.duplicate_username": "Powtórzona nazwa użytkownika.",
"basic.unsupported_hash": "Użyj skrótu Argon2id wygenerowanego przez RustProxy.",
"basic.invalid_hash": "Nieprawidłowy skrót hasła.",
"basic.invalid_realm": "Nieprawidłowa nazwa realm.",
"basic.users_required": "Basic Auth wymaga przynajmniej jednego użytkownika.",
"basic.busy": "Weryfikacja haseł jest zajęta. Spróbuj ponownie.",
"renewalTitle": "Automatyczne odnawianie",
"renewalHelp": "Certyfikaty ACME są sprawdzane co około 12 godzin, gdy RustProxy działa. Certbot określa termin odnowienia. Poprawne certyfikaty są wdrażane bez restartu listenerów. Zachowaj dane dostawcy i dostępność portu 80 dla HTTP-01.",
"renewalNone": "W bibliotece nie ma zarządzanych certyfikatów ACME.",
"renewalEnabled": "Automatyczne odnawianie włączone",
"renewalDisabled": "Automatyczne odnawianie wyłączone",
"renewalEnable": "Włącz odnawianie",
"renewalDisable": "Wyłącz odnawianie",
"renewalNow": "Sprawdź teraz",
"renewalDryRun": "Sprawdź odnowienie (dry run)",
"renewalLast": "Ostatnia kontrola",
"renewalNext": "Kolejna kontrola",
"renewalExpires": "Ważny do",
"acme.renewing": "Sprawdzanie odnowienia certyfikatu",
"acme.renewed": "Certyfikat odnowiony i wdrożony",
"acme.not_due": "Certyfikat nie wymaga jeszcze odnowienia",
"acme.renewal_test_ok": "Weryfikacja odnowienia poprawna; aktywny certyfikat bez zmian",
"acme.renewal_profile_missing": "Brak dostępu do zapisanego profilu odnowienia. Przywróć prywatny profil ACME.",
"acme.configuration_changed": "Konfiguracja certyfikatu zmieniła się podczas odnowienia. Nie wdrożono zmian.",
"acme.deployment_failed": "Odnowiony certyfikat nie przeszedł walidacji konfiguracji. Poprzedni nadal jest aktywny.",
"acme.not_managed": "Automatycznie można odnawiać tylko zarządzane certyfikaty ACME.",
"acme.certificate_not_found": "Certyfikat już nie istnieje.",
"acme.renewal_disabled": "Automatyczne odnawianie jest wyłączone.",
"acme.openssl_not_installed": "OpenSSL jest wymagany do odczytu dat ważności certyfikatu.",
"cacheReason_basic_auth": "Uwierzytelnianie HTTP Basic",
"locationPoolEligible": "Uwzględnij w domyślnej puli backendów",
"locationId": "Identyfikator lokalizacji",
"vhIpAccess": "Dostęp do vhosta według IP",
"apiDocs": "Dokumentacja",
"auth.invalid_request": "Nieprawidłowe żądanie. Sprawdź podane pola.",
"locationProxyHeaders": "Nagłówki żądania proxy (do backendu)",
"locationResponseHeaders": "Nagłówki odpowiedzi (do klienta)",
"locationHeadersHelp": "Ustaw nadpisuje nagłówek, dopisz dodaje wartość, usuń kasuje go. Reguły lokalizacji są stosowane po globalnych i vhosta. Wartości są dosłowne (bez zmiennych nginx). Nagłówkami transportu i zweryfikowanej tożsamości zarządza system.",
"headersAdvancedJson": "Zaawansowane reguły nagłówków (JSON)",
"headersInvalid": "Nieprawidłowa reguła nagłówka. Sprawdź nazwę, operację i wartość.",
"headersProtected": "Nie można tu nadpisać nagłówków transportu i tożsamości proxy. Użyj ustawień forwardingu, autentykacji lub odpowiedzi.",
"docsTitle": "Dokumentacja",
"docsSession": "Korzysta z sesji administratora. Operacje zapisu API wymagają ochrony CSRF.",
"docsSignIn": "Zaloguj się, aby otworzyć dokumentację",
"docsPanel": "Powrót do panelu",
"docsWrites": "Włącz operacje zapisu",
"docsWriteConfirm": "Ta operacja naprawdę zmieni RustProxy. Kontynuować?",
"docsExpired": "Sesja wygasła. Zaloguj się ponownie.",
"docsError": "Nie udało się wczytać dokumentacji.",
"docsAccount": "Zalogowano jako",
"docsReadOnly": "Domyślnie wykonywane są tylko odczyty. Strumienie SSE oraz logowanie i setup nie są tu uruchamiane.",
"docsLogout": "Wyloguj",
"authPrivateNote": "Dostęp tylko dla uprawnionych administratorów.",
"advanced": "Zaawansowane",
"docsLicenses": "Licencje Swagger UI",
"vhTrafficPolicy": "Polityka ruchu",
"vhGeneralDetailsSection": "Ustawienia podstawowe",
"vhWebsocketOptionsSection": "Opcje WebSocket",
"vhBalancerAlgorithmSection": "Strategia równoważenia ruchu",
"vhBalancerRetrySection": "Ponawianie żądań",
"vhBalancerKeepaliveSection": "Keepalive i ponowne użycie połączeń",
"vhSecurityHstsSection": "HSTS",
"vhSecurityHeadersSection": "Nagłówki bezpieczeństwa",
"vhUaBlockSection": "Blokowanie User-Agent",
"vhLocationIpAclSection": "Lokalne reguły IP/CIDR",
"vhSslSettings": "Ustawienia SSL",
"vhContentTypeSection": "Typ zawartości żądania (Content-Type)",
"vhContentTypeBlock": "Blokuj wybrane wartości Content-Type",
"vhContentTypeList": "Blokowane typy MIME (jeden w wierszu)",
"vhContentTypeRequired": "Aby włączyć blokowanie Content-Type, podaj co najmniej jeden typ MIME.",
"vhContentTypeHelp": "Przykłady: multipart/form-data, application/json lub image/*. Wielkość liter i parametry (np. boundary) nie mają znaczenia. Dopasowane żądania otrzymają HTTP 403 przed PHP, Web Serverem lub backendem. Błędne albo niejednoznaczne nagłówki Content-Type też będą odrzucane. Brak Content-Type nie jest blokowany. Blokowanie może uniemożliwić przesyłanie plików.",
"vhTrafficMethodsSection": "Metody HTTP",
"vhTrafficRateSection": "Limity zapytań dla adresów IP",
"vhTrafficCountrySection": "Dostęp według kraju",
"vhTrafficCountryRatesSection": "Limity zapytań dla krajów",
"vhHttp3Enabled": "Włącz HTTP/3 dla tego vhosta",
"vhCloudflareClientIp": "Używaj zweryfikowanego IP klienta z Cloudflare",
"vhTimingHeaders": "Udostępniaj diagnostykę Server-Timing",
"vhRateEnabled": "Włącz limit żądań per IP klienta",
"vhRateRequests": "Żądania na okno",
"vhRateWindow": "Okno (sekundy)",
"vhRateBurst": "Dopuszczalny burst",
"vhCountryMode": "Polityka dostępu krajów",
"vhCountryBlock": "Blokuj wskazane kraje",
"vhCountryAllow": "Zezwalaj tylko wskazanym krajom",
"vhCountryList": "Kraje (ISO 3166-1 alpha-2)",
"vhCountryPolicyHelp": "Reguły krajów korzystają z bazy GeoIP. W trybie „tylko zezwolone” dostęp daje wskazany kraj LUB jawnie dozwolone IP. W trybie blokowania ruch odrzuca wskazany kraj LUB jawnie zablokowane IP. Nieustalony kraj nie spełnia gałęzi kraju.",
"vhCountry": "Kraj",
"vhAddCountryRate": "Dodaj limit dla kraju",
"vhCountryRateLimit": "Dozwolone są maksymalnie 64 limity przypisane do krajów.",
"vhRateHelp": "Limit dla kraju nadpisuje podstawowy limit per IP. Przekroczenie daje 429, a zabroniony kraj 403.",
"vhHealthOffWarning": "Aktywne sondy backendu są wyłączone. Passive Backend Health jest konfigurowany osobno i pozostaje wyłączony, dopóki nie zostanie świadomie włączony.",
"vhFrontendSelectionOnly": "Wybierz listenery dla vhosta. Adresy IP, porty oraz dostępność H2/H3 konfiguruje się wyłącznie w Ustawienia > Listenery.",
"vhForceSsl": "Wymuś SSL (przekieruj HTTP do HTTPS)",
"vhForceSslHelp": "Żądania HTTP tego vhosta dostają przekierowanie 308 do HTTPS z zachowaniem ścieżki i parametrów. Wybierz co najmniej jeden listener zwykłego HTTP oraz co najmniej jeden listener TLS. Jeśli wybrano kilka portów TLS, używany jest port 443; w innym przypadku port docelowy TLS musi być jednoznaczny.",
"vhForceSslNeedsTls": "Wymuszenie SSL wymaga co najmniej jednego włączonego listenera TLS dla tego vhosta.",
"vhForceSslPortConflict": "Nie można jednoznacznie wybrać portu docelowego HTTPS: wybrane listenery TLS używają kilku niestandardowych portów. Wybierz jeden port TLS albo listener na porcie 443.",
"vhForwardClientIp": "Przekazuj IP klienta do backendu",
"vhForwardClientIpHelp": "Pozostaw włączone dla standardowego reverse proxy. Wyłącz, aby nie wysyłać do aplikacji nagłówków Forwarded, X-Forwarded-For i X-Real-IP; RustProxy, ACL, limity i Tinyauth nadal korzystają z prawdziwego IP klienta.",
"vhClientIpHidden": "IP klienta ukryte przed backendem",
"listenerMigrateInline": "Istniejący listener vhosta (zostanie zmigrowany)",
"vhDebugOriginPreset": "Zastosuj diagnostyczny preset HTTP/1.1",
"vhDebugOriginTlsWarning": "Ten preset pozostawia wyłączoną walidację certyfikatu TLS backendu. Połączenie jest szyfrowane, ale CA i nazwa hosta nie są sprawdzane. Kontynuować?",
"vhOriginPresetHelp": "Opcjonalny preset diagnostyczny, nie wymóg: pula ON, prywatny origin ON, HTTP/1.1, Preserve Host ON i weryfikacja TLS OFF. Tryby Auto/H2 również obsługują Preserve Host. Wyłączenie weryfikacji TLS pomija sprawdzanie certyfikatu; przy jej włączeniu ustaw nazwę z certyfikatu i ewentualne prywatne CA.",
"vhDebugOriginMismatch": "Ten origin HTTPS po IP ma włączoną weryfikację TLS bez nazwy serwera TLS. To działa tylko z certyfikatem zawierającym adres IP. Dla certyfikatu DNS ustaw nazwę serwera TLS i w razie potrzeby dodaj prywatne CA. Preserve Host i H1/Auto/H2 nie wymagają presetu diagnostycznego. Kontynuować?",
"vhCacheStaticCookie": "Ignoruj Cookie żądania dla wybranych rozszerzeń statycznych",
"vhCacheStaticCustom": "Użyj własnej listy rozszerzeń statycznych",
"vhCacheStaticExtensions": "Rozszerzenia statyczne (po jednym w linii, bez kropki)",
"vhCacheStaticHelp": "Dziedzicz ustawienie globalne albo nadpisz je dla vhosta. Ignorowanie Cookie stosuj tylko do plików, których treść nie zależy od sesji; Set-Cookie, private/no-store i Vary: Cookie nadal blokują zapis do shared cache.",
"cacheStaticTitle": "Cache statycznych zasobów",
"cacheStaticCookie": "Ignoruj Cookie żądania dla statycznych plików",
"cacheStaticExtensions": "Globalne rozszerzenia statyczne (po jednym w linii, bez kropki)",
"cacheStaticHelp": "Włączaj tylko dla plików, których treść nie zależy od sesji. Cookie żądania nie wpływa wtedy na klucz cache dla podanych rozszerzeń; odpowiedzi z Set-Cookie, private/no-store lub Vary: Cookie nadal nie są zapisywane we współdzielonym cache.",
"vhHttp2Enabled": "Włącz HTTP/2 dla tego vhosta",
"vhFrontendProtocolsHelp": "H2 i H3 są przełącznikami per vhost. Opcja jest aktywna tylko wtedy, gdy co najmniej jeden wybrany listener ma dany protokół włączony w Ustawienia > Listenery.",
"administration": "Panel administracyjny",
"administrationActiveHttp": "Aktywny panel HTTP",
"administrationActiveHttps": "Aktywny panel HTTPS",
"administrationCertificate": "Certyfikat",
"administrationGeneratedCertificate": "Domyślny certyfikat wygenerowany przez aplikację",
"administrationHelp": "HTTPS pozwala wystawić panel administracyjny poza loopback. Zwykły HTTP na porcie HTTPS jest automatycznie przekierowywany. Zmiany listenera i certyfikatu działają po restarcie.",
"administrationHosts": "Dodatkowe dozwolone hosty DNS",
"administrationHttps": "Włącz HTTPS dla panelu administracyjnego",
"administrationListen": "Adres nasłuchu",
"cacheOverhead": "Narzut",
"cacheResidentAge": "X-Cache-Resident-Age",
"controlPlane": "PANEL STEROWANIA",
"logging": "Logowanie",
"loggingTitle": "Strukturalne logi dostępu",
"loggingTabOutputs": "Wyjścia",
"loggingTabFormat": "Format JSON",
"loggingTabErrors": "Log błędów",
"loggingDescription": "Zapisuj konfigurowalne logi dostępu JSON do pliku, Logstash lub Loki.",
"loggingHelp": "Podgląd logów na żywo pozostaje w pamięci. Zewnętrzne wyjścia używają ograniczonej kolejki w tle i nie blokują obsługi żądań.",
"loggingFile": "Plik JSON",
"loggingPath": "Ścieżka pliku",
"loggingAddress": "Adres TCP",
"loggingTokenEnv": "Zmienna środowiskowa z tokenem Bearer",
"loggingLabels": "Etykiety (obiekt JSON)",
"loggingFormat": "Konfigurowalny format JSON",
"loggingFormatHelp": "Mapuj nazwy pól wyjściowych na pola źródłowe. Puste mapowanie zapisuje pełny standardowy wpis.",
"loggingFields": "Mapowanie pól (obiekt JSON)",
"loggingStatic": "Pola stałe (obiekt JSON)",
"loggingJsonInvalid": "Pola konfiguracji logów muszą zawierać poprawne obiekty JSON.",
"loggingQueue": "Kolejka wyjść",
"loggingDropped": "odrzuconych",
"loggingSent": "wysłanych",
"loggingCapacity": "pojemność",
"errorLogTitle": "Plik błędów",
"errorLogRoutingHelp": "Ostrzeżenia, błędy i paniki wątków trafiają do tego pliku, gdy jest włączony. Gdy wyłączony, trafiają do konsoli/systemd. W razie błędu zapisu używana jest konsola.",
"errorLogPath": "Ścieżka logu błędów",
"errorLogFormat": "Format",
"tls12": "TLS 1.2",
"tls13": "TLS 1.3",
"tlsPolicy": "Polityka TLS",
"tlsPolicyHelp": "To globalna polityka TLS dziedziczona przez każdy host TLS w aplikacji. Ustawienia per-vhost mogą ją tylko zawężać. HTTP/3 wymaga TLS 1.3.",
"tlsCiphers": "Szyfry (jeden na linię; puste = domyślne rustls)",
"tlsAvailableCiphers": "Dostępne szyfry",
"tlsPolicyVersionRequired": "Włącz co najmniej jedną wersję TLS.",
"vhTlsOverride": "Nadpisz globalną politykę TLS",
"vhTlsOverrideHelp": "Użyj tylko, gdy ten vhost wymaga innych wersji TLS lub szyfrów. Pusta lista szyfrów zachowuje domyślne rustls.",
"vhTlsHttp3Conflict": "HTTP/3 korzysta z globalnej polityki TLS. Wyłącz HTTP/3 dla tego vhosta przed użyciem innego nadpisania TLS.",
"vhListeners": "Listenery",
"vhProtocols": "Protokoły",
"loggingMode": "JSON / ASYNC / OGRANICZONA KOLEJKA",
"loggingPushUrl": "Adres Push URL",
"cacheHotObjects": "Obiekty hot",
"cacheHotMemory": "Pamięć hot",
"cacheColdObjects": "Obiekty cold",
"cacheColdDisk": "Dysk cold",
"cacheTierMoves": "Przeniesienia między warstwami",
"cacheColdHits": "trafień cold",
"cacheTier": "Warstwa",
"cacheStorage": "Pamięć / dysk",
"cacheColdTitle": "Trwały cache cold",
"cacheColdEnable": "Włącz trwałą warstwę dyskową",
"cacheColdHelp": "Wybierz, które obiekty z hot RAM mają trafiać na trwały dysk. Trafienie cold jest odczytywane asynchronicznie i promowane z powrotem do RAM. Metadane są w JSON, a body w plikach .body.",
"cacheColdPath": "Ścieżka cold (wewnątrz katalogu danych)",
"cacheColdBytes": "Limit dysku cold (MiB)",
"cacheColdEntries": "Limit obiektów cold",
"cacheColdAfter": "Przenieś po sekundach bezczynności",
"cacheHot": "Hot",
"cacheCold": "Cold",
"cacheReason_request_no_cache": "no-cache klienta / twarde odświeżenie wymaga rewalidacji",
"cacheReason_request_max_age": "max-age klienta wymaga rewalidacji",
"cacheReason_request_min_fresh": "min-fresh klienta wymaga rewalidacji",
"cacheReason_request_pragma_no_cache": "Pragma no-cache klienta / starszy tryb twardego odświeżenia",
"cacheReason_cache_revalidated": "Obiekt z cache potwierdzony przez backend",
"cacheReason_cache_conditional_hit": "Świeży obiekt obsłużył żądanie warunkowe",
"cacheReason_request_no_store": "no-store klienta omija cache",
"cacheReason_request_precondition": "Warunek klienta wymaga backendu",
"loggingPreset": "Preset formatu",
"loggingPresetCustom": "Własny",
"loggingPresetStandard": "Standard RustProxy",
"loggingPresetNginx": "JSON w stylu Nginx",
"loggingPresetEcs": "Nazwy pól w stylu ECS",
"loggingPresetMinimal": "Minimalny",
"loggingBuilder": "Graficzny konfigurator pól",
"loggingBuilderOpen": "Konfiguruj pola",
"loggingAdvancedJson": "Zaawansowane mapowanie JSON",
"loggingBuilderHelp": "Wybierz pola źródłowe i opcjonalnie zmień ich nazwy w JSON. Zastosowanie edytora graficznego normalizuje każde pole źródłowe do maksymalnie jednego klucza wyjściowego; duplikaty aliasów ustawisz w trybie zaawansowanym.",
"loggingSourceField": "Pole źródłowe",
"loggingOutputField": "Klucz JSON na wyjściu",
"loggingPreview": "Podgląd",
"loggingOutputRequired": "Każde włączone pole logu musi mieć klucz JSON na wyjściu.",
"loggingOutputDuplicate": "Klucze JSON na wyjściu muszą być unikalne.",
"aclProfiles": "Profile ACL",
"acl-profiles": "Profile ACL",
"acl-profilesTitle": "Wielokrotnego użytku profile ACL",
"acl-profilesDescription": "Definiuj wspólne reguły dostępu IP i krajów, a następnie przypinaj je do wielu vhostów.",
"aclProfilesIntro": "Profile dostępu można przypinać do wielu vhostów. Indywidualne reguły ACL i krajów w vhoście nadal działają i są egzekwowane razem z profilem.",
"aclProfilesReusable": "WSPÓLNA POLITYKA",
"aclProfileNew": "Nowy profil",
"aclProfileEdit": "Edycja profilu",
"aclProfileEditor": "Konfiguracja profilu",
"aclProfileId": "ID profilu",
"aclProfileName": "Nazwa wyświetlana",
"aclProfileIpEnabled": "Włącz ACL IP",
"aclProfileRules": "Reguły ACL — allow IP/CIDR lub nazwa DNS; deny tylko IP/CIDR (po jednej na wiersz)",
"aclProfileCombineHelp": "Wyjątki krajów i IP są łączone operatorem LUB w obrębie tego profilu. Jawne blokady IP i zablokowane kraje wygrywają; profil, vhost i lokalizacja nadal muszą przejść wszystkie swoje polityki.",
"aclProfilePolicyMode": "Wybierz bazową politykę",
"aclProfilePolicyModeHelp": "Do typowych przypadków użyj prostego trybu zezwoleń albo blokad. Tryb niestandardowy daje pełną kontrolę nad mieszanymi regułami.",
"aclProfileModeAllowExceptions": "Domyślnie blokuj",
"aclProfileModeAllowExceptionsHelp": "Zezwalaj wskazanym krajom LUB wskazanym adresom/sieciom IP.",
"aclProfileModeBlockExceptions": "Domyślnie zezwalaj",
"aclProfileModeBlockExceptionsHelp": "Blokuj wskazane kraje LUB wskazane adresy/sieci IP.",
"aclProfileModeCustom": "Niestandardowa",
"aclProfileModeCustomHelp": "Ustawiaj ręcznie akcję domyślną, tryb krajów i każdą regułę IP.",
"aclProfileCountryExceptions": "Wyjątki krajów",
"aclProfileUseCountries": "Uwzględniaj kraje",
"aclProfileAllowedCountries": "Dozwolone kraje (kody ISO)",
"aclProfileBlockedCountries": "Blokowane kraje (kody ISO)",
"aclProfileAllowedCountriesHelp": "Ruch z dowolnego wskazanego kraju będzie dozwolony nawet wtedy, gdy jego IP nie znajduje się na liście.",
"aclProfileBlockedCountriesHelp": "Ruch z dowolnego wskazanego kraju będzie blokowany nawet wtedy, gdy jego IP byłoby inaczej dozwolone.",
"aclProfileCustomCountryHelp": "W trybie niestandardowym zachowanie krajów ustawiasz poniżej. Zablokowany kraj zawsze odmawia dostępu.",
"aclProfileIpExceptions": "Wyjątki IP / CIDR",
"aclProfileAddIpException": "Dodaj wyjątek IP",
"aclProfileAllowedIpsHelp": "Dodaj adres IPv4/IPv6 albo CIDR. Te adresy są dozwolone dodatkowo, niezależnie od wybranych krajów.",
"aclProfileBlockedIpsHelp": "Dodaj adres IPv4/IPv6 albo CIDR. Te adresy są blokowane dodatkowo, niezależnie od wybranych krajów.",
"aclProfileCustomIpHelp": "Każda reguła IP może niezależnie zezwalać albo blokować. Zwykły adres IP bez maski jest akceptowany jako pojedynczy host.",
"aclProfileBulkExceptions": "Wklej wiele adresów IP / CIDR",
"aclProfilePreview": "Efekt reguły",
"aclProfilePreviewDefaultDeny": "DOMYŚLNIE: BLOKUJ",
"aclProfilePreviewDefaultAllow": "DOMYŚLNIE: ZEZWALAJ",
"aclProfilePreviewAllowedCountries": "ZEZWÓL KRAJ",
"aclProfilePreviewBlockedCountries": "BLOKUJ KRAJ",
"aclProfilePreviewAllowedIps": "ZEZWÓL IP / DNS",
"aclProfilePreviewBlockedIps": "BLOKUJ IP",
"aclProfilePreviewIpRules": "REGUŁY IP",
"aclProfilePreviewNoExceptions": "Brak skonfigurowanych wyjątków",
"aclProfilePreviewBlocksAll": "Ten profil blokuje teraz cały ruch. Dodaj kraj lub wyjątek IP, aby zezwolić na dostęp.",
"aclProfilePreviewAllowsAll": "Ten profil zezwala teraz na cały ruch. Dodaj kraj lub wyjątek IP, aby coś zablokować.",
"aclProfilePreviewAllowNote": "Dostęp jest przyznany, gdy pasuje dozwolony kraj LUB adres klienta pasuje do dozwolonego IP/CIDR.",
"aclProfilePreviewBlockNote": "Dostęp jest blokowany, gdy pasuje blokowany kraj LUB adres klienta pasuje do blokowanego IP/CIDR.",
"aclProfilePreviewCustomNote": "Tryb niestandardowy używa priorytetów backendu: jawne deny IP i blokowany kraj odmawiają dostępu; dozwolony kraj i jawne allow IP mogą spełnić tę samą politykę.",
"aclProfileOr": "LUB",
"aclProfileCountriesShortAllow": "Dozwolone kraje",
"aclProfileCountriesShortBlock": "Blokowane kraje",
"aclProfileIpsShortAllow": "Dozwolone IP",
"aclProfileIpsShortBlock": "Blokowane IP",
"aclProfileIpRulesShort": "reguł IP/DNS",
"aclProfileIpOff": "ACL IP wyłączony",
"aclProfileCountriesOff": "Filtrowanie krajów wyłączone",
"aclProfileAttached": "Przypięty do",
"aclProfileInUse": "Profil jest przypięty do vhostów",
"aclProfilesEmpty": "Brak profili ACL wielokrotnego użytku.",
"aclProfileCountryInvalid": "Kody krajów muszą mieć dwuliterowy format ISO.",
"aclProfileCountryRequired": "Dodaj co najmniej jeden kraj albo wyłącz wyjątki krajów.",
"aclProfileDuplicate": "Profil ACL o tym ID już istnieje.",
"vhAclProfile": "Profile ACL",
"vhAclProfileNone": "Bez wspólnego profilu",
"vhAclProfileHelp": "Wybierz maksymalnie 8 profili ACL. Rozwiń listę, by zobaczyć domyślną akcję, reguły IP i ograniczenia krajów. Lokalne ACL Vhosta i pozostałe ograniczenia nadal działają niezależnie.",
"vhInlineAclHelp": "Lokalne reguły IP/CIDR są niezależne od profili ACL i również ograniczają dostęp. Zezwolenie w jednym miejscu nie znosi blokady w drugim.",
"multiAclWarning": "Wiele profili ACL: jawne blokady IP i zablokowane kraje mają pierwszeństwo przed zezwoleniami we wszystkich profilach. Jawne zezwolenia są łączone (LUB); gdy żadna reguła nie pasuje, wszystkie wartości domyślne muszą zezwalać. Lokalne ACL vhosta, lokalizacje i globalne ACL pozostają dodatkowymi ograniczeniami (ORAZ). Nie zaleca się łączenia reguł „zezwól wszystkim” i „blokuj” — łatwo przypadkowo otworzyć albo zablokować dostęp.",
"vhCertificateMismatchForce": "Wymuś niedopasowany certyfikat (świadoma akceptacja ryzyka)",
"vhCertificateMismatchWarning": "RustProxy pozwoli przypisać domenę do certyfikatu, który jej nie obejmuje. Przeglądarki i klienci TLS nadal mogą odrzucić połączenie z powodu niezgodności nazwy. Zalecany jest prawidłowy certyfikat.",
"vhCertificateMismatchConfirm": "Przypisać do tych domen certyfikat, który może ich nie obejmować? Wyjątek dotyczy tylko tego vhosta i nie usuwa ostrzeżeń po stronie przeglądarek. Potwierdź akceptację ryzyka.",
"aclPickerChoose": "Wybierz profile ACL",
"aclPickerSelected": "Wybrane profile: {count}",
"aclPickerSearch": "Szukaj nazwy, ID lub reguły…",
"aclPickerNone": "Nie wybrano profili",
"aclPickerNoProfiles": "Najpierw utwórz profil ACL w kontroli dostępu.",
"aclPickerNoMatches": "Brak pasujących profili ACL",
"aclPickerLimit": "Maksymalnie 8 profili. Usuń jeden przed dodaniem następnego.",
"aclPickerMoreRules": "kolejnych reguł",
"aclPickerNoRules": "Brak wyjątków IP",
"aclPickerNoIpRules": "Brak ACL IP",
"aclPickerDefaultAllow": "Domyślnie ZEZWÓL",
"aclPickerDefaultDeny": "Domyślnie BLOKUJ",
"aclPickerBlockedCountries": "Blokuj kraj",
"aclPickerAllowedCountries": "Zezwól kraj",
"dockerCertMismatchUnavailable": "Aby wymusić niezgodność, wybierz konkretny certyfikat w ustawieniach agenta Docker. Dziedziczony certyfikat domyślny nie wymaga wyjątku.",
"dockerFrontendProtocols": "Protokoły",
"dockerFrontendProtocolsHelp": "Ustawienie dla tego Docker Vhosta, zależne od wybranych listenerów agenta. Nie zmienia HTTP/HTTPS do kontenera.",
"dockerHttp1Always": "Zawsze dostępny",
"dockerHttp2Enabled": "HTTP/2 (H2)",
"dockerHttp3Enabled": "HTTP/3 (H3/QUIC)",
"dockerCertMismatchForce": "Zaakceptuj niezgodność domeny z certyfikatem tego Docker Vhosta",
"dockerCertMismatchWarning": "Certyfikat frontendu wybrany dla agenta może nie obejmować tej domeny ani jej aliasów. Wymuszenie pozwala zapisać przypisanie, ale przeglądarka nadal może zgłosić błąd TLS. Zaleca się zgodny certyfikat.",
"dockerCertMismatchConfirm": "Potwierdzić przypisanie niezgodnego certyfikatu do Docker vhosta? Przeglądarki mogą odrzucić połączenie. Wyjątek wyłącza kontrolę zgodności nazw tylko dla tej publikacji i jej aliasów.",
"vhHostAdd": "Dodaj hostname",
"vhHostsHelp": "Dodaj wiele domen (np. domena1.local i domena2.local), zatwierdzając Enterem lub przecinkiem. Wszystkie korzystają z tego samego vhosta i backendu. Wildcard tylko w postaci *.domena.pl.",
"vhHostInvalid": "Nieprawidłowy hostname lub wzorzec wildcard.",
"vhHostRequired": "Dodaj co najmniej jeden hostname.",
"vhLifetimeChart": "Przebieg ruchu od otwarcia panelu",
"vhReqPerSecond": "żąd./s",
"vhPeak": "max",
"listenerAddresses": "Adresy nasłuchu",
"listenerAddressesInvalid": "Podaj 1–16 unikalnych adresów nasłuchu.",
"listenerAddressesExplicit": "Przy wielu adresach wybierz konkretne IP; 0.0.0.0 i :: nie są dozwolone.",
"ruleSyntaxLine": "Nieprawidłowa reguła ACL w wierszu",
"vhForceSslNeedsHttp": "Wymuszenie SSL wymaga co najmniej jednego wybranego listenera zwykłego HTTP (bez TLS). Listener nazwany „HTTP” może mimo nazwy mieć włączony TLS w Ustawienia > Listenery.",
"aclProfileRuleBuilder": "Reguły IP",
"aclProfileBulkRules": "Wklej / importuj reguły",
"aclProfileBulkHelp": "Wklej po jednej regule „allow|deny CIDR” w wierszu. Niewidoczne odstępy Unicode są normalizowane, a błąd wskazuje dokładny wiersz.",
"aclProfileImportRules": "Importuj reguły",
"aclProfileRulesImported": "Reguły ACL zaimportowano do edytora graficznego.",
"streamWidgetOverview": "Przegląd Stream",
"streamWidgetTraffic": "Ruch Stream",
"streamWidgetSessions": "Sesje Stream",
"streamWidgetHealth": "Stan backendów Stream",
"streamWidgetUnavailable": "Brak danych Stream",
"streamWidgetActiveConfigured": "aktywne / skonfigurowane",
"streamWidgetAttention": "wymagają uwagi",
"streamWidgetHealthyUnhealthy": "zdrowe / niedostępne",
"streamWidgetUnverified": "niezweryfikowane",
"streamWidgetEmptyPools": "pule bez backendu",
"streamWidgetSettingsHelp": "Karty Stream są domyślnie ukryte. Zmiana widoczności nie wpływa na routing ani monitorowanie.",
"streamBackendPool": "Pula backendów",
"streamBackend": "Backend",
"streamBackendId": "ID backendu",
"streamBackendName": "Nazwa backendu",
"streamBackendAddress": "Adres / port",
"streamBackendWeight": "Waga (1–16)",
"streamBackendMaxSessions": "Limit sesji (opcjonalnie)",
"streamBackendDrain": "Drain: bez nowych sesji",
"streamBackendAdd": "Dodaj backend",
"streamBackendDuplicate": "ID backendów muszą być unikalne.",
"streamBackendLimit": "Maksymalnie 32 backendy na Stream.",
"streamBackendRequired": "Wymagany jest co najmniej jeden backend.",
"streamBalance": "Algorytm balansowania",
"streamRoundRobin": "Ważony Round Robin",
"streamLeastSessions": "Najmniej połączeń / sesji",
"streamDetailMetrics": "Szczegółowe metryki",
"streamBackendDetailMetrics": "Szczegółowe metryki backendu",
"streamMetricsFromStream": "Z ustawień Stream",
"streamMetricsDefaultOff": "Domyślnie wyłączone",
"streamMetricsHelp": "Domyślnie szczegółowe metryki Stream są wyłączone. Każdy backend może nadpisać to ustawienie. Eksport do Prometheus wymaga osobno globalnego include_streams; podstawowe liczniki działają zawsze.",
"streamInherit": "Dziedzicz",
"streamMetricsOn": "Włączone",
"streamMetricsOff": "Wyłączone",
"streamHealthMode": "Test stanu",
"streamHealthOff": "Wyłączony (niezweryfikowany)",
"streamHealthTcp": "Połączenie TCP",
"streamHealthUdp": "Sonda UDP (wymagana odpowiedź)",
"streamHealthInterval": "Interwał sondy (sekundy)",
"streamHealthTimeout": "Timeout sondy (ms)",
"streamHealthRise": "Próg sukcesów (rise)",
"streamHealthFall": "Próg błędów (fall)",
"streamHealthPayload": "Dane UDP (hex)",
"streamHealthExpected": "Oczekiwana odpowiedź UDP (hex)",
"streamHealthUdpHelp": "Sonda UDP działa tylko przy zdefiniowanych danych i oczekiwanej odpowiedzi. Samo UDP connect nie dowodzi dostępności.",
"streamHealthState_healthy": "zdrowy",
"streamHealthState_unhealthy": "niedostępny",
"streamHealthState_checking": "sprawdzanie",
"streamHealthState_disabled": "wyłączony",
"streamHealthState_unverified": "niezweryfikowany",
"streamHosts": "Hosty stream",
"streamsHelp": "Surowe przekazywanie TCP/UDP na osobnych portach. Ruch stream omija vhosty HTTP, ACL, cache, nagłówki i kompresję.",
"streamAdd": "Dodaj host stream",
"saveStreams": "Zapisz hosty stream",
"streamRestartHelp": "Zmiana listenera stream wymaga restartu RustProxy.",
"streamRestartPending": "Zapisano zmiany streamów. Uruchom ponownie RustProxy, aby je zastosować.",
"streamActive": "Aktualnie aktywne streamy",
"streamNone": "Brak aktywnych hostów stream",
"streamEndpoint": "Endpoint stream",
"streamId": "ID streamu",
"streamName": "Nazwa wyświetlana",
"streamProtocol": "Protokół",
"streamListen": "Adres nasłuchu",
"streamUpstream": "Adres upstream",
"streamConnectTimeout": "Timeout połączenia TCP (sekundy)",
"streamIdleTimeout": "Timeout bezczynności/sesji (sekundy)",
"streamMaxConnections": "Maks. połączeń/sesji",
"streamTcp": "TCP",
"streamUdp": "UDP",
"streamLimit": "Obsługiwane jest maksymalnie 128 hostów stream.",
"streamDuplicate": "ID hostów stream muszą być unikalne.",
"streams": "Streamy",
"streamsTitle": "Proxy TCP / UDP",
"streamsDescription": "Zarządzaj surowymi listenerami Layer 4, upstreamami i statystykami ruchu na żywo.",
"streamsPageIntro": "Streamy TCP/UDP są niezależnymi proxy Layer 4. Każdy stream ma własny listener i upstream oraz omija warstwę vhostów HTTP, ACL i cache.",
"streamLayer4": "LAYER 4 / TCP + UDP",
"streamList": "Streamy",
"streamSearch": "Szukaj streamów",
"streamSearchPlaceholder": "ID, nazwa, listener lub upstream…",
"streamSearchEmpty": "Brak streamów pasujących do wyszukiwania.",
"streamEmpty": "Brak streamów TCP/UDP. Dodaj listener, aby rozpocząć proxowanie ruchu Layer 4.",
"streamNew": "Nowy stream",
"streamAddListener": "Dodaj listener TCP/UDP",
"streamEditor": "Konfiguracja streamu",
"streamEditLabel": "EDYCJA",
"streamNewLabel": "NOWY",
"streamDetailsTab": "Szczegóły",
"streamNetworkTab": "Listener i upstream",
"streamLimitsTab": "Limity",
"streamNetwork": "Listener i upstream",
"streamLimits": "Limity połączeń / sesji",
"streamDedicatedListenerHelp": "Listener streamu jest tworzony razem ze streamem i jest niezależny od listenerów HTTP/HTTPS.",
"streamLimitsHelp": "Limity dotyczą równoległych połączeń TCP lub sesji UDP per klient. Timeout łączenia TCP nie jest używany przez UDP.",
"streamListenAdd": "Dodaj adres nasłuchu",
"streamListenHelp": "Wpisz jeden adres IP:port i naciśnij Enter. Zmiana listenera zacznie działać po restarcie RustProxy.",
"streamListenInvalid": "Adres listenera musi być pojedynczą wartością IP:port bez spacji i przecinków.",
"streamListenRequired": "Dodaj adres nasłuchu.",
"streamDelete": "Usunąć ten stream? Aktywny listener pozostanie do restartu RustProxy.",
"streamPendingRestart": "Oczekuje na restart",
"streamRunning": "Działa",
"streamActiveSessions": "Aktywne połączenia / sesje",
"streamSessionsTotal": "Połączenia / sesje",
"streamErrors": "Błędy",
"streamRejected": "Odrzucone",
"streamTransferred": "Przesłano",
"streamTrafficChart": "Ruch na żywo",
"streamClientToUpstream": "klient → upstream",
"streamUpstreamToClient": "upstream → klient",
"streamNoLiveMetrics": "Statystyki pojawią się, gdy stream będzie aktywny po restarcie.",
"streamIdleShort": "Timeout bezczynności",
"listenerAddressAdd": "Dodaj adres nasłuchu",
"listenerAddressesHelp": "Naciśnij Enter lub przecinek, aby dodać adres. Wiele adresów korzysta z tej samej polityki listenera; wildcard 0.0.0.0/:: nie może być mieszany z konkretnymi adresami.",
"cacheColdOnIdle": "Przenoś stare/nieużywane obiekty do cold storage",
"cacheColdOnLru": "Przenoś obiekty wyrzucane z hot LRU do cold storage",
"cacheColdOnShutdown": "Przy łagodnym restarcie zrzucaj hot cache do cold storage",
"certificateCovers": "Domeny certyfikatu",
"certificateCoverageUnknown": "Brak danych o domenach (DNS SAN). Wczytaj ponownie pliki certyfikatów lub zaimportuj certyfikat ponownie.",
"certificateDetails": "Szczegóły certyfikatu",
"certificateFiles": "Pliki certyfikatu / klucza",
"redirects": "Przekierowania",
"redirectsTitle": "Przekieruj świadomie.",
"redirectsDescription": "Lokalne hosty przekierowań z jawnym dopasowaniem, celem, kodem oraz obsługą ścieżki i query.",
"redirectsPageIntro": "Hosty przekierowań odpowiadają lokalnie, bez otwierania połączenia do backendu. Reguły mogą dopasować protokół i ścieżkę, a następnie przekierować do URL, innego hosta lub ścieżki.",
"redirectLayer": "PRZEKIEROWANIA HTTP",
"redirectList": "Hosty przekierowań",
"redirectSearch": "Szukaj przekierowań",
"redirectSearchPlaceholder": "ID, domena, cel…",
"redirectNew": "Nowe przekierowanie",
"redirectEmpty": "Brak skonfigurowanych hostów przekierowań.",
"redirectSearchEmpty": "Brak przekierowań pasujących do wyszukiwania.",
"redirectEditor": "Konfiguracja przekierowania",
"redirectId": "ID przekierowania",
"redirectName": "Nazwa",
"redirectHosts": "Domeny źródłowe",
"redirectFrontend": "FRONTEND",
"redirectListeners": "Listenery",
"redirectBehavior": "ZACHOWANIE",
"redirectRules": "Reguły",
"redirectAddRule": "Dodaj regułę",
"redirectRulesHelp": "Wygrywa najdłuższa pasująca ścieżka. 307/308 zachowują metodę żądania; 301/302/303 mogą ją zmienić po stronie klienta.",
"redirectSafetyHint": "Host przekierowania nie łączy się z backendem. Globalne ACL hostów nadal obowiązują. Unikaj reguł kierujących bezwarunkowo do samych siebie.",
"redirectRule": "Reguła",
"redirectRuleId": "ID reguły",
"redirectSourceScheme": "Protokół wejściowy",
"redirectSchemeAny": "HTTP lub HTTPS",
"redirectSchemeHttp": "HTTP",
"redirectSchemeHttps": "HTTPS",
"redirectSchemePreserve": "Zachowaj protokół wejściowy",
"redirectMatchType": "Dopasowanie ścieżki",
"redirectMatchPrefix": "Prefiks",
"redirectMatchExact": "Dokładnie",
"redirectSourcePath": "Ścieżka źródłowa",
"redirectTargetType": "Typ celu",
"redirectTargetUrl": "Pełny URL",
"redirectTargetHost": "Host / aplikacja",
"redirectTargetPath": "Ścieżka na tym samym hoście",
"redirectTarget": "Cel",
"redirectTargetScheme": "Protokół celu",
"redirectPathMode": "Obsługa ścieżki",
"redirectPathAppend": "Dopisz pełną ścieżkę źródłową",
"redirectPathStrip": "Usuń dopasowany prefiks i dopisz resztę",
"redirectPathReplace": "Użyj tylko skonfigurowanej ścieżki celu",
"redirectQueryMode": "Obsługa query",
"redirectQueryPreserve": "Zachowaj query źródłowe",
"redirectQueryDrop": "Usuń query źródłowe",
"redirectStatus": "Status HTTP",
"redirect301": "301 Moved Permanently",
"redirect302": "302 Found",
"redirect303": "303 See Other",
"redirect307": "307 Temporary Redirect (zachowaj metodę)",
"redirect308": "308 Permanent Redirect (zachowaj metodę)",
"redirectCacheSeconds": "max-age cache przeglądarki/proxy (sekundy; 0 = no-store)",
"redirectHostsRequired": "Dodaj co najmniej jedną domenę źródłową.",
"redirectListenersRequired": "Wybierz co najmniej jeden listener.",
"redirectRulesRequired": "Dodaj co najmniej jedną regułę przekierowania.",
"redirectDuplicate": "Przekierowanie o tym ID już istnieje.",
"redirectUnsaved": "Odrzucić niezapisane zmiany przekierowania?",
"redirectNewLabel": "NOWE",
"administrationSessionDays": "Czas ważności sesji administratora (dni)",
"administrationSessionDaysHelp": "Sesje przeglądarkowe mają bezwzględny czas ważności 7–30 dni. Zmiana działa od razu; zmiana hasła i „wyloguj wszystkie sesje” nadal natychmiast unieważniają sesje.",
"vhLocalListenerRisk": "Zezwól na lokalny listener RustProxy jako backend (ryzyko)",
"vhLocalListenerRiskHelp": "Ta opcja pojawia się, gdy URL backendu bezpośrednio wskazuje skonfigurowany lub aktywny listener administracyjny RustProxy. localhost, 127.0.0.1 i ::1 są traktowane jako równoważne adresy loopback na tym samym porcie panelu. Jej włączenie może wystawić panel lub utworzyć pętlę proxy; adres prywatny/loopback nadal wymaga opcji „Zezwól na prywatny IP backendu”.",
"vhLocalListenerRiskConfirm": "Ta opcja może kierować żądania do lokalnego listenera RustProxy, w tym portu administracyjnego, oraz utworzyć pętlę lub wystawić control plane. Akceptujesz to ryzyko?",
"cacheResidentHistory": "Historia zajętości RAM cache",
"networkHistory": "Historia RX / TX",
"responseLatencyHistory": "Historia czasu odpowiedzi",
"sourceIp": "IP źródłowe",
"cacheColdOnAge": "Przenoś obiekty do cold po maksymalnym czasie w hot RAM",
"cacheColdMaxHot": "Maksymalny czas w hot RAM (sekundy)",
"cacheColdPolicyHelp": "Czas bezczynności określa, jak długo obiekt nie był używany. Wiek hot określa ciągły czas przebywania w RAM nawet przy dalszych odczytach. Presja LRU i zrzut przy łagodnym zamknięciu są niezależnymi regułami.",
"documentation": "Dokumentacja",
"locationPathPattern": "Ścieżka / wzorzec regex",
"locationMatchType": "Sposób dopasowania",
"locationMatchPrefix": "Prefiks",
"locationMatchPriority": "Priorytetowy prefiks (^~)",
"locationMatchExact": "Dokładna ścieżka (=)",
"locationMatchRegex": "Regex (~)",
"locationMatchRegexI": "Regex bez rozróżniania wielkości liter (~*)",
"locationMatch_prefix": "prefiks",
"locationMatch_prefix_priority": "prefiks priorytetowy",
"locationMatch_exact": "dokładne",
"locationMatch_regex": "regex",
"locationMatch_regex_insensitive": "regex i",
"locationAction": "Akcja",
"locationProxyAction": "Proxy do backendu",
"locationReturnAction": "Własna odpowiedź (return)",
"locationProxyShort": "proxy",
"locationReturnShort": "odpowiedź lokalna",
"locationHandling": "Obsługa żądania",
"locationRewriteMode": "Przepisanie ścieżki do backendu",
"locationRewritePreserve": "Zachowaj oryginalną ścieżkę",
"locationRewriteStrip": "Usuń dopasowany prefiks",
"locationRewriteReplace": "Zastąp dopasowany prefiks",
"locationRewriteRegex": "Zamiana regex",
"locationRewriteValue": "Ścieżka / wyrażenie zastępujące",
"locationRewriteHelp": "Parametry query są zachowywane. Przepisywanie prefiksu działa na znormalizowanej ścieżce routingu. Zamiana regex obsługuje grupy Rust regex, np. $1. Wynik jest walidowany przed wysłaniem do backendu.",
"locationResponseStatus": "Kod odpowiedzi",
"locationResponseType": "Content-Type",
"locationResponseBody": "Treść odpowiedzi",
"headersVisualBuilder": "Graficzny konfigurator",
"locationDocsTitle": "Dokumentacja Custom locations",
"headersDocsTitle": "Dokumentacja reguł nagłówków",
"locationDocsIntro": "Custom locations są oceniane wewnątrz wybranego vhosta po autentykacji i ACL hosta. Nie mogą omijać zabezpieczeń vhosta.",
"locationDocsPrefix": "Prefiks: dopasowuje pełny prefiks segmentów ścieżki. Wygrywa najdłuższy prefiks. Priorytetowy prefiks działa jak nginx ^~ i blokuje pierwszeństwo regexów.",
"locationDocsExact": "Dokładne: pasuje wyłącznie do dokładnej znormalizowanej ścieżki, jak nginx location = /path.",
"locationDocsRegex": "Regex: po obsłudze exact/prioritetowego prefiksu wygrywa pierwszy pasujący regex. Dostępny jest tryb czuły i nieczuły na wielkość liter. Używana jest składnia Rust regex; look-around i backreference w samym wzorcu są celowo niedostępne.",
"locationDocsReturn": "Własna odpowiedź: RustProxy odpowiada lokalnie wybranym kodem HTTP, Content-Type i body bez otwierania połączenia do backendu. Reguły nagłówków odpowiedzi lokalizacji nadal obowiązują.",
"locationDocsRewrite": "Przepisanie ścieżki backendu: zachowanie oryginału, usunięcie/zamiana prefiksu albo zamiana z grupami regex. Oryginalny query string jest zachowany.",
"locationDocsAccess": "ACL IP lokalizacji, nadpisanie cache i reguły nagłówków są łączone z polityką vhosta. Lokalizacja nie może wyłączyć autentykacji ani ACL hosta.",
"locationDocsLimits": "Do 64 lokalizacji na vhost. Regexy i body odpowiedzi mają limity; nagłówki transportu, zweryfikowanej tożsamości i protokołu WebSocket pozostają zarządzane przez system.",
"headersDocsIntro": "Reguły nagłówków są stosowane kolejno: globalne → vhost → pasująca lokalizacja. Do zwykłej konfiguracji użyj graficznego konfiguratora; JSON pozostaje trybem zaawansowanym.",
"headersDocsSet": "Ustaw: zastępuje wszystkie istniejące wartości nagłówka skonfigurowaną wartością dosłowną.",
"headersDocsAppend": "Dopisz: dodaje kolejną wartość bez usuwania istniejących.",
"headersDocsRemove": "Usuń: kasuje nagłówek przed wysłaniem do backendu albo klienta.",
"headersDocsProtected": "Chronionych nagłówków transportu/tożsamości (Host, Connection, Content-Length, Forwarded/X-Forwarded-*, nagłówki dowodu WebSocket itd.) nie można tu nadpisywać.",
"headersDocsOrder": "Wartości są dosłowne; zmienne nginx nie są interpretowane. Reguły request działają przed nałożeniem kanonicznych danych forwardingu, a response przed końcową polityką bezpieczeństwa/diagnostyki RustProxy.",
"cacheColdPolicyTitle": "Polityka hot → cold",
"headerRule": "Reguła nagłówka",
"headerRulesEmpty": "Brak reguł. Dodaj regułę poniżej.",
"headerRuleHelp": "Wybierz Ustaw, Dodaj lub Usuń. Nagłówki transportowe, tożsamości forwardingu i protokołu WebSocket pozostają chronione.",
"locationPreviewTitle": "Podgląd efektywnego działania",
"locationPreviewMatch": "Dopasowanie",
"locationPreviewHandling": "Obsługa",
"locationPreviewRewrite": "Ścieżka do backendu",
"locationPreviewCache": "Cache",
"locationPreviewAccess": "Dostęp",
"locationPreviewHeaders": "Reguły nagłówków",
"locationPreviewDisabled": "Ta lokalizacja jest wyłączona i nie będzie dopasowywać żądań.",
"locationPreviewBackendSkipped": "backend nie jest wywoływany",
"locationPreviewVhostAcl": "Tylko autentykacja i ACL vhosta",
"locationPreviewCustomAcl": "Polityka vhosta + ACL lokalizacji",
"locationPreviewRequestRules": "request",
"locationPreviewResponseRules": "response",
"locationPreviewQueryPreserved": "query string jest zachowywany",
"locationDocsMatchHeading": "1. Dopasowanie i kolejność",
"locationDocsActionHeading": "2. Proxy, rewrite i odpowiedź lokalna",
"locationDocsPolicyHeading": "3. Dostęp, cache i nagłówki",
"locationDocsExamplesHeading": "Popularne przykłady",
"locationDocsExampleExact": "Endpoint health: Dokładna ścieżka (=) /health + Własna odpowiedź 200 odpowiada lokalnie bez łączenia z backendem.",
"locationDocsExampleStatic": "Pliki statyczne: Priorytetowy prefiks (^~) /static/ blokuje przejęcie przez regex; dla tej lokalizacji można osobno włączyć cache.",
"locationDocsExampleRegex": "Wersjonowane API: Regex (~) ^/api/v[0-9]+/ może wybrać backend i używać grup zamiany regex, np. $1.",
"cacheOutcomeHistory": "Aktywność HIT / MISS / BYPASS",
"cacheHotMemoryHistory": "Zajętość RAM HOT / limit",
"cacheTransientMemoryHistory": "Zajętość RAM przejściowego / limit",
"cacheColdStorageHistory": "Zajętość COLD / limit",
"processCpuHistory": "Historia CPU procesu",
"processRssHistory": "Historia RSS procesu",
"cacheMemoryBreakdown": "Cache hot / pamięć przejściowa",
"cacheTransientBreakdown": "Fill / kolejka cold / I/O cold",
"cacheColdStorageUsage": "Zajętość COLD / limit",
"cacheColdStorageObjects": "obiektów",
"cacheTransientMemory": "Pamięć przejściowa cache",
"cacheTransientShort": "RAZEM",
"cacheFillShort": "fill",
"cacheQueueShort": "kolejka cold",
"cacheIoShort": "I/O cold",
"processRssTotal": "RSS łącznie",
"memoryCacheHot": "RAM cache HOT / limit",
"memoryCacheTransient": "RAM przejściowy cache / limit",
"memoryTransform": "RAM zarezerwowany przez transformacje / budżet",
"memoryTransformInflight": "Aktywne transformacje / limit",
"memoryNonCacheRss": "RSS procesu poza cache",
"transformMemoryUsage": "Rezerwacja RAM transformacji",
"transformConcurrencyUsage": "Aktywne sloty transformacji",
"transformBudgetShort": "budżet",
"processRssAnon": "RSS anonimowy",
"processRssFile": "RSS plików / współdzielony",
"processDataSwap": "Obszar danych / swap",
"memoryAccountingHint": "RSS pokazuje rzeczywisty ślad pamięci procesu. HOT i pamięć przejściowa cache są księgowane przez RustProxy, a pamięć transformacji jest konserwatywną rezerwacją aktywnej pracy. RSS poza cache to RSS pomniejszony o księgowany cache i obejmuje m.in. transformacje, połączenia, TLS, logowanie, Tokio/runtime, narzut alokatora i inne bufory, więc nie wszystkie wiersze należy sumować.",
"memoryAccountingInfo": "Informacje o rozliczaniu pamięci",
"logTransport": "Transport",
"logWebSocket": "WebSocket",
"logUpstreamError": "Błąd upstreamu",
"listenerDefaultPortsHint": "Nowy vhost automatycznie wybiera standardowy listener HTTP :80, jeśli jest dostępny.",
"vhBackendDiagnostics": "Diagnostyka backendu",
"vhBackendHeader": "Udostępniaj wybrany backend (X-RustProxy-Backend)",
"vhBackendTimingHeader": "Udostępniaj czas odpowiedzi backendu (X-RustProxy-Backend-Time)",
"vhBackendDiagnosticsHelp": "Opcjonalne nagłówki odpowiedzi. Czas backendu oznacza czas od wysłania żądania do otrzymania nagłówków odpowiedzi; odpowiedzi obsłużone bez kontaktu z originem nie raportują backendu.",
"authModeHelp": "Wybierz jedną metodę uwierzytelniania. Lista dostępu IP poniżej działa niezależnie i może być używana razem z dowolną metodą.",
"taAdvanced": "Zaawansowane ustawienia Tinyauth",
"notfound": "Hosty 404",
"notfoundTitle": "Hosty 404 pod kontrolą.",
"notfoundDescription": "Rezerwuj domeny, które mają lokalnie zwracać kod, zaślepkę albo własny HTML.",
"notfoundPageIntro": "Hosty 404 rezerwują wybrane domeny i odpowiadają lokalnie bez łączenia z backendem. Mogą używać tych samych listenerów i certyfikatów co vhosty.",
"notfoundLayer": "ODPOWIEDŹ LOKALNA",
"notfoundList": "Hosty 404",
"notfoundSearch": "Szukaj hostów 404",
"notfoundSearchPlaceholder": "ID, nazwa lub domena…",
"notfoundNew": "Nowy host 404",
"notfoundEditor": "Konfiguracja hosta 404",
"notfoundId": "ID hosta",
"notfoundName": "Nazwa wyświetlana",
"notfoundFrontend": "FRONTEND",
"notfoundBehavior": "ODPOWIEDŹ",
"notfoundResponse": "Odpowiedź lokalna",
"notfoundMode": "Typ odpowiedzi",
"notfoundModeWelcome": "Zaślepka RustProxy",
"notfoundModeEmpty": "Tylko status / pusta",
"notfoundModeHtml": "Własny HTML",
"notfoundStatus": "Status HTTP",
"notfoundHtml": "Własny HTML",
"notfoundResponseHelp": "Host nigdy nie otwiera połączenia do backendu. Wbudowana zaślepka ma no-store i celowo nie dodaje opcjonalnych nagłówków diagnostycznych ani Server RustProxy.",
"notfoundHosts": "Domeny",
"notfoundNewLabel": "NOWY",
"notfoundHostsRequired": "Dodaj co najmniej jedną domenę.",
"notfoundListenersRequired": "Wybierz co najmniej jeden listener.",
"notfoundHtmlRequired": "Własny HTML nie może być pusty.",
"notfound204Empty": "Odpowiedzi HTTP 204, 205 i 304 muszą używać trybu Pusta.",
"notfoundDuplicate": "Host 404 o takim ID już istnieje.",
"notfoundUnsaved": "Odrzucić niezapisane zmiany hosta 404?",
"notfoundEmpty": "Brak skonfigurowanych hostów 404.",
"notfoundSearchEmpty": "Brak hostów 404 pasujących do wyszukiwania.",
"prometheusTrustedNoToken": "Zezwól zaufanym CIDR na odczyt bez tokenu",
"prometheusTrustedNoTokenHelp": "Klient nadal musi pasować do listy dozwolonych CIDR. Włączaj tylko w prywatnej, zaufanej sieci monitoringu; nagłówki przekazywane nie są używane do tej decyzji.",
"docker-vhosts": "Docker vhosty",
"docker-vhostsTitle": "Usługi Dockera pod nazwami.",
"docker-vhostsDescription": "Wykrywaj wystawione porty Dockera i mapuj uslugi na nazwy w domenie agenta, wlasne domeny oraz aliasy bez zapisywania obserwowanego stanu do SQLite.",
"dockerVhosts": "Docker vhosty",
"dockerVhostsIntro": "Wystawione porty TCP wykryte przez skonfigurowane agenty Dockera. Dla każdej usługi ustaw krótką nazwę w domenie agenta albo dowolny FQDN, dodaj aliasy, wybierz IP hosta Dockera oraz sprawdzaj i konfiguruj stan backendu na żywo.",
"dockerDiscovery": "WYKRYWANIE DOCKERA",
"dockerRefresh": "Odśwież agentów",
"dockerAgentsSettings": "Ustawienia agentów Dockera",
"dockerAgents": "Agenty Dockera",
"dockerDesiredState": "STAN ŻĄDANY / SQLITE",
"dockerAgentsHelp": "Skonfiguruj osobnego agenta dla każdego hosta Dockera. Domyślnie agent używa HTTPS ze stałym certyfikatem self-signed; wklej jego fingerprint SHA-256, aby przypiąć certyfikat. Każdy agent ma własną domenę bazową i opcjonalne domyślne IP backendu.",
"dockerAgentAdd": "Dodaj agenta Dockera",
"dockerAgentsSave": "Zapisz i połącz agentów",
"dockerAgent": "AGENT DOCKERA",
"dockerAgentNew": "Nowy agent",
"dockerAgentId": "ID agenta",
"dockerAgentName": "Nazwa wyświetlana",
"dockerAgentEndpoint": "Adres agenta",
"dockerAgentToken": "Token Bearer",
"dockerBaseDomain": "Domena bazowa",
"dockerTargetOverride": "Nadpisanie IP docelowego",
"dockerTargetAuto": "automatyczne",
"dockerListeners": "Listenery",
"dockerListenersRequired": "Wybierz co najmniej jeden listener dla agenta Docker.",
"dockerNoAgents": "Brak skonfigurowanych agentów Dockera.",
"dockerNoAgentsConfigured": "Najpierw skonfiguruj agenta Dockera w Ustawieniach.",
"dockerPublish": "Wystaw",
"dockerPreserveHost": "Zachowaj Host",
"dockerServiceMissing": "Brak w ostatnim odczycie",
"dockerConnected": "POŁĄCZONO",
"dockerError": "BŁĄD",
"dockerWaiting": "OCZEKIWANIE",
"dockerAgentDisabled": "Ten agent Dockera jest wyłączony.",
"dockerNoObservation": "Oczekiwanie na pierwszy odczyt agenta. RustProxy zaktualizuje status po sprawdzeniu w tle.",
"dockerHost": "Host Dockera",
"dockerDetectedIp": "Wykryte IP",
"dockerEffectiveIp": "IP routingu",
"dockerNoPublishedPorts": "Agent nie zgłosił wystawionych portów TCP.",
"dockerAssignmentsSave": "Zapisz Docker vhosty",
"dockerDefaultTarget": "Domyslne IP backendu",
"dockerDetectedIps": "Wykryte adresy IP hosta",
"dockerHostname": "Nazwa hosta",
"dockerHostnameHelp": "Krotka nazwa uzyje {domain}; pelny FQDN uzyje wlasnej domeny.",
"dockerAliases": "Aliasy",
"dockerAliasAdd": "Dodaj alias",
"dockerAliasesHelp": "Dodawaj aliasy klawiszem Enter lub przecinkiem. Krótkie nazwy użyją domeny bazowej agenta, a pełne FQDN pozostaną bez zmian.",
"dockerBackendIp": "IP hosta backendu",
"dockerBackendIpAuto": "Auto / domyslne agenta",
"dockerBackendScheme": "Protokol backendu",
"dockerBindingIp": "binding Dockera",
"dockerAgentDefaultIp": "domyslne agenta",
"dockerAgentEndpointHelp": "Dla domyślnej konfiguracji agenta użyj https://. Zwykły HTTP pozostaje tylko dla zgodności i jest wyraźnie oznaczony jako niezabezpieczony.",
"dockerTlsFingerprint": "SHA-256 certyfikatu TLS",
"dockerTlsFingerprintHelp": "Dla domyślnego certyfikatu self-signed wklej fingerprint wypisany przez install.sh albo rustproxy-docker-agent --print-fingerprint. Zostaw puste wyłącznie dla certyfikatu zaufanego przez publiczne CA.",
"dockerTlsPinned": "TLS PRZYPIĘTY",
"dockerTlsPublicCa": "TLS / PUBLICZNE CA",
"dockerTlsPlain": "ZWYKŁY HTTP",
"dockerTlsPlainHelp": "Token agenta i dane inventory nie są chronione przez TLS na tym endpointcie.",
"dockerTlsPublicCaHelp": "Łańcuch certyfikatu i nazwa hosta są weryfikowane względem publicznych CA.",
"dockerAgentConnectionFailed": "Ostatni odczyt agenta nie powiódł się",
"dockerUnknownPollError": "Ostatni odczyt agenta nie powiódł się.",
"dockerAgentVersion": "Wersja agenta",
"dockerLastChecked": "Ostatnie sprawdzenie",
"dockerNeverChecked": "nigdy",
"dockerJustNow": "przed chwilą",
"dockerSecondsAgo": "{seconds} s temu",
"dockerMinutesAgo": "{minutes} min temu",
"dockerBackendMissing": "BRAK USŁUGI",
"dockerBackendNotActive": "NIEWYSTAWIONY",
"dockerBackendChecking": "SPRAWDZANIE",
"dockerBackendHealthOff": "HEALTH WYŁ.",
"dockerBackendUp": "UP",
"dockerBackendDown": "DOWN",
"dockerBackendDraining": "WYGASZANIE",
"dockerBackendNoMetrics": "Metryki runtime pojawią się po aktywacji dynamicznego backendu.",
"dockerHealthCheck": "Badanie backendu",
"dockerHealthSummary": "Aktywne testy TCP/HTTP; pasywne zdrowie jest konfigurowane osobno",
"dockerPassiveHealth": "Pasywne zdrowie backendu",
"dockerPassiveHealthSummary": "Domyślnie wyłączone; wymaga świadomego użycia zwykłego ruchu do decyzji health",
"dockerHealthMode": "Tryb",
"dockerHealthHttp": "HTTP",
"dockerHealthTcp": "TCP",
"dockerHealthOff": "Wyłączone",
"dockerHealthPath": "Ścieżka HTTP",
"dockerHealthHost": "Nagłówek Host health-checka",
"dockerHealthHostAuto": "host backendu / automatycznie",
"dockerHealthInterval": "Interwał (ms)",
"dockerHealthTimeout": "Timeout (ms)",
"dockerHealthSlow": "Próg wolnej odpowiedzi (ms)",
"dockerHealthFall": "Błędy do oznaczenia DOWN",
"dockerHealthRise": "Sukcesy do oznaczenia UP",
"dockerHealthStatusMin": "Min. status HTTP",
"dockerHealthStatusMax": "Maks. status HTTP",
"dockerHealthLatency": "Opóźnienie",
"dockerHealthResult": "Ostatni probe",
"dockerHealthRequests": "Żądania",
"dockerHealthErrors": "Błędy",
"dockerHealthActive": "Aktywne",
"loggingPerVhost": "Osobny plik per vhost",
"loggingDirectory": "Katalog logów per-vhost",
"loggingPerVhostHelp": "Po włączeniu każdy vhost zapisuje do własnego pliku JSONL. Ruch niedopasowany trafia do _unmatched.jsonl.",
"listenerStartupLocked": "Tego adresu ustawionego przy starcie procesu/systemd nie można zmienić ani usunąć. Pozostałe adresy i opcje listenera nadal można edytować.",
"administrationStartupLocked": "Ten adres jest ustawiony przy starcie procesu/systemd i nie można go tutaj zmienić.",
"notfoundStatusInvalid": "Wybierz obsługiwany status błędu HTTP.",
"tlsEffectiveCiphers": "Aktualnie używane szyfry",
"certificateManaged": "Zarządzany przez ACME",
"certManagedReadOnly": "Certyfikaty zarządzane przez ACME są odnawiane automatycznie i nie można ich edytować jak własnych certyfikatów z plików.",
"vhWebsocketTransport": "Transport WebSocket",
"vhWebsocketHttp1": "HTTP/1.1 Upgrade (zalecane)",
"vhWebsocketRfc9220": "RFC 9220 Extended CONNECT przez HTTP/3",
"vhWebsocketTransportHelp": "Włącz WebSocket osobnym przełącznikiem, a następnie wybierz transport. Tryby H2/H3 używają Extended CONNECT, a HTTP/1.1 Upgrade pozostaje fallbackiem.",
"dockerLiveView": "Widok live",
"dockerPollInterval": "Interwał odpytywania agenta (s)",
"dockerPollIntervalHelp": "Jak często RustProxy pobiera inventory Dockera z tego agenta. Widok live czyta tylko stan z pamięci RustProxy.",
"dockerAgentPollEvery": "Interwał agenta",
"dockerSearch": "Szukaj Docker vhostów",
"dockerSearchPlaceholder": "Szukaj usługi, hosta, aliasu lub agenta...",
"dockerShowHidden": "Pokaż ukryte",
"dockerHideHidden": "Ukryj ukryte",
"dockerHideVhost": "Ukryj z widoku",
"dockerUnhideVhost": "Pokaż w widoku",
"dockerCertificate": "Certyfikat frontendu",
"dockerCertificateHelp": "Certyfikat przypisany do wszystkich generowanych vhostów tego agenta. Domyślna opcja używa standardowego wyboru TLS/SNI.",
"dockerDefaultAcl": "Domyślne profile ACL",
"dockerDefaultAclNone": "Bez domyślnego profilu ACL",
"dockerDefaultAclHelp": "Wybierz maksymalnie 8 profili dziedziczonych przez Docker Vhosty bez własnego wyboru. Brak zaznaczenia przy aplikacji oznacza dziedziczenie.",
"dockerApplyService": "Zastosuj zmiany",
"dockerAccessControl": "Kontrola dostępu",
"dockerAclSummary": "Opcjonalny profil ACL i reguły IP per aplikacja",
"dockerAclProfile": "Profile ACL",
"dockerAclProfileNone": "Bez profilu ACL",
"dockerAclProfileInherit": "Domyślny agenta",
"dockerAclInline": "Użyj dodatkowego ACL per aplikacja",
"dockerAclDefault": "Domyślna akcja ACL",
"dockerAclRules": "Reguły IP/CIDR",
"dockerAclHelp": "Jedna reguła w linii, np. allow 10.0.0.0/8. Profil i ACL per aplikacja są egzekwowane łącznie.",
"dockerProxyTimeouts": "Timeouty proxy",
"dockerProxyTimeoutsHelp": "Jawne limity per aplikacja: domyślnie połączenie 10 s, nagłówki odpowiedzi 120 s, odczyt 60 s i wysyłanie 60 s.",
"dockerHostnameRequired": "Przed wystawieniem wymagany jest hostname.",
"dockerForceSsl": "Przekieruj HTTP do HTTPS",
"dockerForceSslUnavailable": "Wymaga aktywnego listenera zwykłego HTTP oraz jednego jednoznacznego listenera TLS dla tego agenta.",
"dockerWebsockets": "WebSockety",
"dockerCompression": "Kompresja",
"dockerCompressionHelp": "Włącz lub wyłącz kompresję dla tego vhosta Docker. Dostępne kodeki i ich priorytet wynikają z globalnych ustawień Response.",
"dockerCache": "Cache",
"vhProxyTimeouts": "Timeouty proxy",
"vhProxyConnectTimeout": "Proxy connect timeout (s)",
"vhProxyHeaderTimeout": "Proxy response header timeout (s)",
"vhProxyReadTimeout": "Proxy read timeout (s)",
"vhProxySendTimeout": "Proxy send timeout (s)",
"vhProxyTimeoutsHelp": "Domyślnie: połączenie 10 s, nagłówki odpowiedzi 120 s, odczyt 60 s i wysyłanie 60 s. Read/send to timeout bezczynności podczas streamowania body.",
"notfoundModeBuiltin": "Zaślepka aplikacyjna dla statusu",
"pageBuiltin": "Wbudowana strona statusu",
"vhOpenBrowser": "Otwórz",
"securityPasswordHint": "Wymaga obecnego hasła i wyloguje wszystkie sesje.",
"securityAccessControl": "KONTROLA DOSTĘPU",
"securityPoliciesHint": "Lista polityk pozostaje widoczna; edytor otwieraj tylko przy dodawaniu lub zmianie reguł.",
"securityPolicyEditorHint": "Zakres hostów, domyślna akcja i reguły CIDR.",
"securityAuditOpen": "Audyt administracyjny",
"securityAuditHint": "Ostatnie operacje administracyjne są pobierane dopiero po otwarciu tego okna.",
"dockerConfigureService": "Konfiguruj vhost",
"dockerTrafficStatistics": "Statystyki ruchu",
"dockerExpandAllMetrics": "Rozwiń wszystkie statystyki",
"dockerCollapseAllMetrics": "Zwiń wszystkie statystyki",
"dockerAliasesShort": "aliasów",
"dockerAgentDetails": "Szczegóły agenta",
"dockerServices": "Usługi",
"dockerOpenApp": "Otwórz aplikację",
"dockerLiveAccessLogsHelp": "Logi żądań HTTP dla tego Docker vhosta, nie stdout/stderr kontenera.",
"networkInterfacesHistory": "Ruch według interfejsów",
"networkInterfaceRate": "RX / TX",
"networkNoInterfaces": "Brak dostępnych interfejsów sieciowych innych niż loopback.",
"networkInterfacesCount": "{count} interfejsów",
"logExpandBuffer": "Zwiększ bufor",
"logExpandedBuffer": "Bufor 4096",
"logBufferExpanded": "Bufor live zwiększono do {count} zachowanych wpisów.",
"vhIdRenameHelp": "Zmiana ID vhosta tworzy nową tożsamość metryk/logów/cache i resetuje bieżącą historię health/traffic. Hostname’y i skonfigurowane ID backendów pozostają bez zmian.",
"vhIdRenameConfirm": "Zmienić ID vhosta z {old} na {new}? Bieżąca historia health/traffic oraz tożsamość metryk/cache tego vhosta zostaną rozpoczęte od nowa.",
"cacheDomainFilter": "Pokaż",
"cacheDomainFilterAll": "Wszystkie domeny",
"cacheDomainFilterEnabled": "Cache włączony",
"cacheDomainFilterDisabled": "Cache wyłączony",
"cacheNoDomainsFiltered": "Brak domen pasujących do tego filtra.",
"cacheColdCleanup": "Wyczyść cold cache",
"cacheColdCleanupHelp": "Operacja działa asynchronicznie i korzysta z tego samego mechanizmu eviction co automatyczny GC cold cache.",
"cacheColdUnusedSeconds": "Nieużywane co najmniej przez (sekundy, opcjonalnie)",
"cacheColdOldestCount": "Usuń maksymalnie najstarszych obiektów",
"cacheColdHitsZero": "Tylko obiekty z hits = 0",
"cacheColdCleanupStart": "Uruchom czyszczenie",
"cacheColdCleanupRunning": "Trwa czyszczenie cold cache…",
"cacheColdCleanupDone": "Usunięto {count} obiektów i zwolniono {bytes}.",
"cacheColdCleanupFailed": "Czyszczenie cold cache nie powiodło się.",
"cacheColdCleanupInvalidJob": "Czyszczenie cold cache nie zwróciło identyfikatora zadania.",
"cacheColdGcInterval": "Interwał GC cold cache (sekundy)",
"cacheColdGcMaxDelete": "Maksymalna liczba usunięć na przebieg GC",
"transformSettings": "Transformacja odpowiedzi statycznych",
"transformEnable": "Włącz globalnie silnik transformacji",
"transformHelp": "Transformacja odbywa się po dekodowaniu upstreamu, a przed zapisem do cache i kompresją dla klienta. Każdy vhost musi zostać włączony osobno.",
"transformJavascript": "Minifikacja JavaScript",
"transformCss": "Minifikacja CSS",
"transformHtml": "Minifikacja HTML",
"transformSvg": "Optymalizacja SVG",
"transformJson": "Kompaktowanie JSON",
"transformExtensions": "Dozwolone rozszerzenia plików, po jednym w linii",
"transformMaxBody": "Maksymalny rozmiar transformowanej odpowiedzi (KiB)",
"transformResourcePresetTitle": "Preset zasobów",
"transformResourcePresetHelp": "Presety ustawiają limit pamięci tymczasowej, maksymalny rozmiar transformowanej odpowiedzi i globalny limit równoległych transformacji. Typy treści i lista rozszerzeń pozostają bez zmian.",
"transformPresetConservative": "Oszczędny RAM",
"transformPresetRecommended": "Rekomendowany",
"transformPresetPerformance": "Wydajność",
"transformPresetUber": "Uber wydajność",
"transformMemoryBudget": "Budżet pamięci tymczasowej transformacji (MiB)",
"transformMaxInflight": "Maksymalna liczba równoległych transformacji",
"transformMaxInflightShort": "równolegle",
"transformResourceCurrent": "Aktualne limity",
"transformBudgetTooSmallWarning": "Budżet pamięci jest mniejszy niż pesymistyczny koszt buforów dla jednej maksymalnej skompresowanej odpowiedzi. Takie odpowiedzi mogą zostać pominięte z powodem memory_pressure.",
"transformBudgetHighWarning": "Limit pamięci transformacji przekracza 50% efektywnej pamięci RAM hosta/cgroup:",
"transformSafety": "Cache-Control: no-transform jest zawsze respektowane. Przetransformowana reprezentacja otrzymuje nowy ETag i jest zapisywana do cache przed gzip, Brotli lub zstd.",
"saveTransform": "Zastosuj ustawienia transformacji",
"vhTransform": "Transformacja",
"vhTransformEnable": "Włącz transformacje dla tego vhosta",
"vhTransformExtensionsCustom": "Nadpisz globalne rozszerzenia transformacji",
"vhTransformHelp": "Globalny silnik również musi być włączony. Ustawienia formatów dziedziczą politykę globalną, chyba że zostaną jawnie nadpisane.",
"dockerTransform": "Transformuj odpowiedzi statyczne",
"vhPassive5xxWarning": "Zliczanie HTTP 5xx może wyłączyć cały backend po serii błędów aplikacyjnych z pojedynczego endpointu.",
"vhPassiveSlowWarning": "Zliczanie wolnych odpowiedzi może wyłączyć backend po serii poprawnych odpowiedzi przekraczających próg slow-response.",
"transform": "Transformacja",
"transformTitle": "Transformacja odpowiedzi statycznych.",
"transformDescription": "Skuteczność transformacji, oszczędność, pominięcia i ponowne użycie z cache.",
"transformApplied": "Przetransformowane odpowiedzi",
"transformExamined": "Sprawdzone",
"transformCacheHits": "HIT-y transformowanych obiektów",
"transformCacheHitsHelp": "Obsłużone bez ponownego uruchamiania transformacji",
"transformSaved": "Bajty oszczędzone przed kompresją",
"transformReduction": "Średnia redukcja",
"transformReductionHelp": "Dla odpowiedzi, których reprezentacja faktycznie się zmieniła",
"transformSkipped": "Pominięte / fail-open",
"transformErrors": "Błędy body / transportu",
"transformAvgTime": "Średni czas",
"transformByType": "Transformacje według typu",
"transformType": "Typ",
"transformSkipReasons": "Powody pominięcia / fail-open",
"transformNoSkips": "Brak pominiętych transformacji w tym zakresie.",
"transformNoSkipsShort": "Brak pominięć",
"transformVhosts": "Skuteczność per vhost",
"transformScopeHint": "Liczniki są diagnostyką runtime w pamięci. HIT transformowanego obiektu z cache nie uruchamia transformera ponownie.",
"transformNoData": "Brak aktywności transformacji.",
"transformBadge": "transformowany",
"cacheLiveChartTitle": "Aktywność cache na żywo",
"cacheLiveChartHelp": "HIT / MISS / BYPASS na sekundę dla wybranego zakresu",
"liveChartSamples": "Próbki",
"transformLiveChartTitle": "Aktywność transformacji na żywo",
"transformLiveChartHelp": "Zastosowane / HIT cache / pominięte / błędy na sekundę dla wybranego zakresu",
"transformChartApplied": "Zastosowane",
"transformChartCacheHits": "HIT cache",
"transformChartSkipped": "Pominięte",
"cacheInvalidationTitle": "Purge / BAN cache",
"cacheInvalidationOperation": "Operacja",
"cacheInvalidationSelector": "Selektor",
"cacheInvalidationValue": "Wartość",
"cacheInvalidationHost": "Host (opcjonalnie)",
"cacheBanTtl": "TTL BAN (sekundy)",
"cacheInvalidationHelp": "Wybrany vhost ogranicza zakres operacji. Exact i prefix uwzględniają query string. Operacje regex i prefix / wymagają dodatkowego potwierdzenia.",
"cacheRunInvalidation": "Wykonaj operację",
"cacheActiveBans": "Aktywne reguły BAN",
"cacheBanExpires": "Wygasa",
"cacheNoBans": "Brak aktywnych reguł BAN.",
"cacheTarget": "Target",
"cacheKeyTags": "Klucz cache / tagi",
"cachePurgeUrl": "Purge URL",
"cacheRemoveBan": "Usuń BAN",
"cacheBanCreated": "Utworzono BAN",
"cacheConfirmPurgeUrl": "Usunąć ten URL z cache RAM i cold storage?",
"cacheConfirmRemoveBan": "Usunąć tę regułę BAN?",
"cacheWideInvalidationConfirm": "To szeroka operacja unieważniania i może objąć wiele obiektów cache. Kontynuować?",
"cacheCollapseWaiters": "oczekuje",
"cacheCollapsed": "scalone",
"actions": "Akcje",
"cacheCollapseTitle": "Scalanie żądań",
"cacheCollapseEnable": "Scalaj równoczesne fille dla jednego klucza cache",
"cacheCollapseTimeout": "Limit oczekiwania followera (ms)",
"cacheCollapseFallback": "Fallback po timeout",
"cacheCollapseFallbackOrigin": "Origin",
"cacheCollapseFallbackStale": "Stale, jeśli dostępny",
"cacheStaleErrorTitle": "Polityka stale-if-error",
"cacheSieTimeout": "Timeout",
"cacheSieConnection": "Błąd połączenia",
"cacheSieDns": "Błąd DNS",
"cacheSieTls": "Błąd TLS",
"cacheSieStatuses": "Statusy HTTP 5xx dopuszczające stale fallback",
"cacheProactiveTitle": "Proaktywne odświeżanie",
"cacheProactiveEnable": "Odświeżaj próbkę obiektów cache przed wygaśnięciem",
"cacheProactiveBefore": "Odśwież przed wygaśnięciem (sekundy)",
"cacheProactivePercent": "Próbkowane obiekty (%)",
"cacheProactiveInflight": "Maksymalna liczba równoległych odświeżeń",
"cacheProactiveHelp": "Używa rewalidacji validatorów, deterministycznego próbkowania i globalnego limitu współbieżności, aby zapobiegać lawinie odświeżeń.",
"cacheInvalidationOpen": "Purge / Ban",
"cacheBanListOpen": "Aktywne BAN-y",
"cacheBanRemoved": "Reguła BAN została usunięta",
"tunnelsOpen": "Aktywne tunele",
"tunnelsTitle": "Aktywne WebSockety / tunele",
"tunnelsReload": "Odśwież",
"tunnelsEmpty": "Brak aktywnych tuneli.",
"tunnelId": "ID",
"tunnelClient": "Klient",
"tunnelHost": "Host",
"tunnelUpstream": "Upstream",
"tunnelProtocol": "Protokół",
"tunnelDuration": "Czas",
"tunnelRx": "RX",
"tunnelTx": "TX",
"tunnelKill": "Zamknij",
"tunnelKilled": "Tunel zamknięty przez administratora",
"tunnelKillConfirm": "Zamknąć ten tunel?",
"tunnelKillReason": "Powód zamknięcia",
"tunnelKillReasonPlaceholder": "Zamknięcie administracyjne",
"tunnelKillReasonDefault": "panel administracyjny",
"listenerH2c": "h2c HTTP/2 bez TLS (prior knowledge + Upgrade z HTTP/1.1)",
"vhWebsocketRfc8441": "RFC 8441 Extended CONNECT przez HTTP/2",
"wsH1": "H1 Upgrade",
"wsH2Rfc8441": "H2 RFC 8441",
"wsH3Rfc9220": "H3 RFC 9220",
"wsEstablished": "Utworzone",
"httpProtocolMix": "Miks protokołów HTTP",
"wsProtocolMix": "Miks protokołów WebSocket",
"vhWebsocketMode": "Transport WebSocket",
"vhWebsocketDisabled": "Wyłączony",
"vhWebsocketH1": "HTTP/1.1 Upgrade",
"vhWebsocketH2Fallback": "HTTP/2 RFC 8441 + fallback H1",
"vhWebsocketH3Fallback": "HTTP/3 RFC 9220 + fallback H1",
"vhWebsocketH2H3Fallback": "HTTP/2 + HTTP/3 + fallback H1",
"vhMaxConcurrentRequests": "Maks. równoległych żądań",
"vhBackendQueueTimeout": "Timeout kolejki pojemności (ms)",
"vhBackendCapacityHelp": "0 równoległych żądań oznacza brak limitu. Timeout kolejki równy 0 natychmiast zwraca HTTP 503 po osiągnięciu limitu backendu.",
"vhLastFailure": "Ostatni błąd",
"vhLastRecovery": "Ostatni powrót",
"certificateIssuerName": "Wystawca certyfikatu",
"certificateValidFrom": "Ważny od",
"certificateDaysRemaining": "Pozostało dni",
"certificateExpired": "Certyfikat wygasł",
"certificateExpiresSoon": "Certyfikat wkrótce wygaśnie",
"certificateRenewalStatus": "Status odnawiania",
"certificateRenewalError": "Ostatni błąd odnawiania",
"vhActiveHealth": "Active health",
"vhPassiveFailures": "Błędy passive health",
"certificateAdminRestartRequired": "TLS panelu administracyjnego używa konfiguracji ładowanej przy starcie; uruchom ponownie RustProxy, aby odświeżyć ten certyfikat.",
"cacheTabGeneral": "Ogólne",
"cacheTabResilience": "Odporność",
"cacheTabCold": "Cold cache",
"cacheTabDiagnostics": "Statyczne i diagnostyka",
"certificateApiTitle": "API certyfikatów",
"certificateApiHelp": "Twórz osobne poświadczenia Key ID + Bearer Token dla automatyzacji certyfikatów. Nowe tokeny są domyślnie tylko do reload i są ograniczone do wskazanych ID certyfikatów. Włącz deploy tylko dla automatyzacji, która musi wysyłać materiał certyfikatu.",
"certificateApiKeyId": "Key ID",
"certificateApiToken": "Bearer token (opcjonalna własna wartość)",
"certificateApiTokenHelp": "Pozostaw pole puste, aby wygenerować silny token. Jawna wartość każdego tokenu jest pokazywana tylko raz; RustProxy zapisuje wyłącznie jego hash.",
"certificateApiRotate": "Generuj / obróć token",
"certificateApiView": "Podgląd ustawień",
"certificateApiHide": "Ukryj ustawienia",
"certificateApiEdit": "Edytuj ustawienia",
"certificateApiSave": "Zapisz ustawienia",
"certificateApiSaved": "Ustawienia API certyfikatów zapisane. Dotychczasowy token pozostał bez zmian.",
"certificateApiCancelEdit": "Anuluj edycję",
"certificateApiEditNote": "Możesz zmienić komentarz, uprawnienia i dozwolone ID certyfikatów bez zmiany tokenu. Key ID pozostaje bez zmian.",
"certificateApiRegenerate": "Regeneruj token",
"certificateApiRegenerateConfirm": "Regenerować token {key}? Poprzedni token natychmiast przestanie działać. Po regeneracji skopiuj nowy token.",
"certificateApiRegenerated": "Token zregenerowany. Skopiuj go teraz — poprzedni token został unieważniony.",
"certificateApiCreatedAt": "Utworzony / ostatnio zmieniony",
"certificateApiPermissions": "Uprawnienia",
"certificateApiTokenLabel": "Bearer token",
"certificateApiTokenHidden": "Niedostępny (zapisany wyłącznie hash). Regeneruj, aby uzyskać nowy token.",
"certificateApiRevoke": "Unieważnij token",
"certificateApiOneTimeToken": "Skopiuj ten token teraz",
"certificateApiCurlHelp": "Automatyzacja zewnętrzna wysyła Key ID i Bearer Token przez HTTPS (lub HTTP po loopback). Token reload musi używać /api/certificates/{id}/reload; token API nie może wywołać globalnego reload wszystkich certyfikatów.",
"certificateApiUnknown": "Ładowanie statusu API certyfikatów…",
"certificateApiConfigured": "API certyfikatów włączone",
"certificateApiDisabled": "API certyfikatów wyłączone",
"certificateApiLastUsed": "ostatnio użyty",
"certificateApiRotated": "Token API certyfikatów został utworzony / zmieniony. Skopiuj go teraz.",
"certificateApiRevoked": "Token API certyfikatów został unieważniony.",
"certificateApiRevokeConfirm": "Unieważnić token zewnętrznego API certyfikatów? Certbot i integracje API używające go natychmiast przestaną działać.",
"certificate_api.invalid_token": "Nieprawidłowy Key ID lub Bearer Token API certyfikatów.",
"certificate_api.https_required": "Zewnętrzny token API certyfikatów wymaga HTTPS, chyba że żądanie pochodzi z loopback.",
"certificate_api.invalid_token_format": "Token API certyfikatów musi mieć 32–128 bezpiecznych znaków URL.",
"certificate_api.invalid_key_id": "Nieprawidłowy Key ID API certyfikatów.",
"vhWebsocketLegacySupport": "Włącz zgodność ze starym WebSocket",
"vhWebsocketLegacySupportHelp": "Dla starszych urządzeń i serwerów embedded. Handshake WebSocket do upstreamu używa HTTP/1.1, Host i Origin są dopasowane do skonfigurowanego adresu backendu, a stary format odpowiedzi 101 jest tolerowany. Zwykły ruch HTTP pozostaje bez zmian.",
"vhWebsocketLegacyBadge": "WebSocket legacy",
"runtimeInformation": "Informacje środowiska",
"runtimeInformationHelp": "Wartości raportuje uruchomiony proces RustProxy. Są dostępne tylko w uwierzytelnionym API administratora.",
"runtimePlatform": "Platforma",
"statisticsSource": "Źródło statystyk",
"dataDirectory": "Katalog danych",
"databaseLocation": "Baza danych",
"connectionActivity": "Aktywność połączeń",
"reloadCertificate": "Przeładuj certyfikat",
"certificateApiComment": "Komentarz",
"certificateApiCertificateIds": "Dozwolone ID certyfikatów",
"certificateApiCertificateIdsHelp": "Podaj jedno lub więcej ID certyfikatów oddzielonych przecinkiem lub nową linią. Dla każdego innego ID token zostanie odrzucony.",
"certificateApiCertificateIdsRequired": "Podaj co najmniej jedno ID certyfikatu dla tego tokenu.",
"certificateApiAllowDeploy": "Zezwól także na deploy",
"certificateApiAllowDeployHelp": "Dla hooka odnowienia Certbot/acme.sh pozostaw wyłączone. Tryb tylko reload jest zalecanym wariantem least-privilege.",
"certificateApiScopeReloadOnly": "tylko reload",
"certificateApiScopeDeployReload": "deploy + reload",
"certificateApiAllowedIds": "dozwolone ID",
"certificateApiConfiguredCount": "Tokeny API certyfikatów: {count} / {max}",
"certificateApiNeverUsed": "nigdy nie użyty",
"certificateApiRevokeAll": "Unieważnij wszystkie tokeny",
"certificateApiRevokeOneConfirm": "Unieważnić token API certyfikatów {key}? Automatyzacja używająca tego tokenu natychmiast przestanie działać.",
"certificateApiRevokeAllConfirm": "Unieważnić wszystkie tokeny API certyfikatów? Cała automatyzacja zewnętrzna korzystająca z tych tokenów natychmiast przestanie działać.",
"certificate_api.invalid_comment": "Komentarz tokenu API certyfikatów może mieć maksymalnie 256 znaków i nie może zawierać znaków sterujących.",
"certificate_api.limit_reached": "Osiągnięto limit tokenów API certyfikatów.",
"certificate_api.not_found": "Nie znaleziono tokenu API certyfikatów.",
"certificate_api.invalid_certificate_ids": "Token API certyfikatów wymaga 1-32 poprawnych ID certyfikatów.",
"certificate_api.target_required": "Token API certyfikatów nie może przeładować wszystkich certyfikatów naraz; użyj endpointu reload dla konkretnego ID.",
"certificate_api.certificate_forbidden": "Ten token API certyfikatów nie ma dostępu do wskazanego ID certyfikatu.",
"certificate_api.deploy_forbidden": "Ten token API certyfikatów ma tylko uprawnienie reload. Włącz deploy przy rotacji wyłącznie, jeśli automatyzacja musi wysyłać certyfikat.",
"networkInterfacesVisibleCount": "{visible} / {total} interfejsów",
"hideMetric": "Ukryj",
"showMetric": "Pokaż",
"hiddenInterfaces": "Ukryte interfejsy",
"networkNoVisibleInterfaces": "Wszystkie wykryte interfejsy są ukryte w tej przeglądarce.",
"cacheMemorySizingTitle": "Dobór pamięci",
"cacheMemorySizingHelp": "Presety korzystają z efektywnej pamięci dostępnej dla RustProxy (RAM hosta ograniczony limitem cgroup, jeśli występuje). Ustawiają HOT, pamięć przejściową, rozmiar obiektu, liczbę wpisów i kolejkę demotion; limit dysku COLD pozostaje bez zmian.",
"cachePresetConservative": "Oszczędny",
"cachePresetRecommended": "Zalecany",
"cachePresetPerformance": "Wydajnościowy",
"cachePresetSelected": "Wybrany",
"cachePresetCustom": "Własny",
"cacheColdPresetTitle": "Preset polityki COLD",
"cacheColdPresetHelp": "Preset zalecany włącza przenoszenie po bezczynności/LRU/zamknięciu, dobiera kolejkę COLD do pamięci przejściowej i ustawia zachowawcze czasy GC. Ścieżka, limit dysku i limit obiektów pozostają bez zmian.",
"cacheTransientLimit": "Limit pamięci przejściowej (MiB)",
"cacheEvictionLimit": "Maks. usunięć LRU na przyjęcie obiektu",
"cacheColdQueueLimit": "Limit RAM kolejki COLD (MiB)",
"cacheMemoryNotDetected": "Nie wykryto pamięci",
"cacheMemoryPresetUnavailable": "Automatyczne presety wymagają telemetrii RAM hosta lub limitu cgroup.",
"cacheMemoryCgroup": "Efektywny RAM cgroup",
"cacheMemoryDetected": "Wykryty RAM",
"cacheQueueOverTransientWarning": "Limit kolejki COLD nie może przekraczać limitu pamięci przejściowej.",
"cacheMemoryHighWarning": "Ostrzeżenie: budżety HOT + pamięć przejściowa zajmują dużą część efektywnego RAM:",
"cachePresetTransientShort": "przejściowa",
"cachePresetObjectShort": "maks. obiekt",
"cachePresetQueueShort": "kolejka COLD",
"cacheLogicalShort": "logiczne",
"cacheLimitShort": "limit",
"cacheMemoryPressureShort": "presja pamięci",
"cacheNukeLimitShort": "limit LRU",
"cacheMemoryPresetTooSmall": "Automatyczne presety cache są wyłączone poniżej 256 MiB efektywnego RAM; jeśli to celowe, skonfiguruj cache ręcznie.",
"cacheMemoryRecommendedFor": "Zalecane dla wykrytej pamięci:",
"cacheMemoryHeadroomWarning": "Ostrzeżenie: dodatkowy budżet cache jest duży względem aktualnie dostępnej pamięci hosta/cgroup:",
"cacheObjectOverTransientWarning": "Maksymalny rozmiar obiektu przekracza limit pamięci przejściowej; obiekty zbliżone do tego rozmiaru przejdą bez zapisania w cache.",
"vhCacheGlobalDisabled": "Globalny cache jest wyłączony. Ten vhost nie może włączyć cache, dopóki cache globalny pozostaje wyłączony.",
"responseLatencyInfo": "Informacje o czasie odpowiedzi",
"responseLatencyHint": "Wartość to skumulowana średnia długość zakończonych wymian HTTP od startu procesu. Wykres pokazuje kolejne próbki tej średniej; nie jest to percentyl ani czas pojedynczego żądania.",
"web-server": "Serwer WWW",
"web-serverTitle": "Serwuj lokalne pliki.",
"web-serverDescription": "Twórz wielokrotnego użytku usługi WWW i podpinaj je do vhostów lub lokalizacji.",
"webServer": "Serwer WWW",
"webServerIntro": "Tutaj utwórz lokalne usługi WWW, a następnie podepnij je do vhosta lub lokalizacji.",
"webServiceList": "Usługi WWW",
"webServiceSearch": "Szukaj usług WWW",
"webServiceSearchPlaceholder": "Szukaj nazwy, ID lub document root",
"webServiceNew": "Nowa usługa WWW",
"webServiceEditor": "Konfiguracja usługi WWW",
"webServiceTabGeneral": "Ogólne",
"webServiceTabRouting": "Routing",
"webServiceTabMime": "MIME",
"webServiceTabCacheHeaders": "Cache i nagłówki",
"webServiceTabDelivery": "Serwowanie",
"webServiceTabPhp": "PHP-FPM",
"webServiceTabSecurity": "Bezpieczeństwo",
"webServiceId": "ID usługi",
"webServiceName": "Nazwa",
"webServiceRoot": "Document root",
"webServiceIndex": "Pliki index",
"webServiceDirectoryListing": "Listowanie katalogu",
"webServiceMimeOverrides": "Nadpisania MIME",
"webServiceMimeBuiltin": "Wbudowane mapowania",
"webServiceMimeHelp": "Opcjonalne nadpisania rozszerzenie → Content-Type, po jednym na linię. Format: ext = media/type.",
"webServiceMimeInvalid": "Nadpisania MIME muszą mieć unikalny format 'ext = media/type', po jednym wpisie na linię.",
"webServiceDefaultMime": "Domyślny typ MIME",
"webServiceCacheControl": "Cache-Control",
"webServiceCacheRules": "Reguły Cache-Control",
"webServiceCacheRulesHelp": "Bardziej szczegółowe reguły są sprawdzane przed polityką domyślną. Użyj ext:css albo mime:image/.",
"webServiceCacheRulesInvalid": "Reguły Cache-Control muszą mieć format dopasowanie = wartość, np. ext:css = public, max-age=3600.",
"webServiceResponseHeaders": "Nagłówki odpowiedzi",
"webServiceResponseHeadersHelp": "Stałe nagłówki tej usługi WWW. Reguły vhosta/lokalizacji są nakładane później i mogą je nadpisać.",
"webServiceResponseHeadersInvalid": "Nagłówki odpowiedzi muszą mieć unikalny format Nazwa-Nagłówka = wartość, po jednym wpisie na linię.",
"webServiceCacheHelp": "Gdy cache vhosta jest włączony, odpowiedzi serwera WWW spełniające warunki są buforowane również w RustProxy. Odpowiedzi prywatne i no-store nie są buforowane.",
"webServiceTryFiles": "try_files",
"webServiceTryFilesHelp": "Jeden kandydat na linię. Obsługuje $uri, $query_string oraz końcowy status błędu typu =404.",
"webServiceRewrites": "Reguły rewrite",
"webServiceRewritesHelp": "Jedna reguła regex na linię. Użyj wzorzec => /cel dla rewrite wewnętrznego albo wzorzec => 301:/cel dla przekierowania.",
"webServiceRewritesInvalid": "Reguły rewrite muszą mieć format wzorzec => /cel albo wzorzec => 301:/cel (301/302/307/308).",
"webServiceCompression": "Kompresja dynamiczna",
"webServiceSendfile": "Linux sendfile (zero-copy)",
"webServiceSendfileAuto": "Auto (HTTP/1.1 bez TLS)",
"webServiceSendfileHelp": "Dla statycznych plików GET od 64 KiB w Linuksie przez HTTP/1.1 bez TLS, przy wyłączonym cache, transformacjach i bez kompresji. TLS, HTTP/2, HTTP/3, Range i pliki skompresowane korzystają ze standardowego strumieniowania. Zmiana opcji nie czyści cache.",
"webServiceCompressionHelp": "Domyślnie dziedziczy politykę vhosta/globalną. Tutaj można ograniczyć poszczególne kodeki; kodeki wyłączone globalnie pozostają niedostępne, a minimalny rozmiar pozostaje globalny.",
"webServicePrecompressed": "Serwuj gotowe pliki skompresowane",
"webServicePrecompressedBr": "Brotli (.br)",
"webServicePrecompressedGzip": "Gzip (.gz)",
"webServiceDownloadExtensions": "Rozszerzenia do pobierania",
"webServiceDownloadExtensionsHelp": "Pliki z tymi rozszerzeniami otrzymają Content-Disposition: attachment.",
"webServiceRangeHelp": "Statyczne i prekompresowane reprezentacje zachowują walidatory, pojedyncze i wieloczęściowe zakresy bajtów, odpowiedzi 206/416 oraz streaming.",
"webServicePhpEnabled": "Włącz PHP-FPM / FastCGI",
"webServicePhpEndpoint": "Endpoint PHP-FPM",
"webServicePhpEndpointHelp": "Unix: unix:/run/php/php-fpm.sock. TCP: tcp:127.0.0.1:9000 albo tcp:[::1]:9000. TCP jest celowo ograniczone do adresów loopback.",
"webServicePhpExtensions": "Rozszerzenia PHP",
"webServicePhpPassAuthorization": "Przekazuj nagłówek Authorization",
"webServicePhpConnectTimeout": "Timeout połączenia (ms)",
"webServicePhpRequestTimeout": "Łączny timeout żądania FastCGI (ms)",
"webServicePhpConcurrency": "Maks. równoległych żądań PHP",
"webServicePhpBodyLimit": "Limit body żądania PHP (bajty, 0 = bez limitu)",
"webServicePhpHeaderLimit": "Maks. bajtów nagłówków odpowiedzi FastCGI",
"webServicePhpStderrLimit": "Maks. bajtów stderr PHP-FPM w logu",
"webServicePhpCustomParams": "Własne parametry FastCGI",
"webServicePhpCustomParamsHelp": "Jedna linia NAME = wartość, np. APP_ENV = production. Nazwy: A-Z, cyfry i podkreślenia; bez HTTP_*, PHP_VALUE, PHP_ADMIN_VALUE i podstawowych parametrów CGI.",
"webServicePhpCustomParamsInvalid": "Własne parametry FastCGI muszą mieć unikalny format NAZWA = wartość, po jednym wpisie na linię.",
"webServicePhpCustomDataTooLarge": "Własne parametry FastCGI i nadpisania PHP INI mogą łącznie zajmować maksymalnie 128 KiB.",
"webServicePhpValues": "Nadpisania PHP INI (PHP_VALUE)",
"webServicePhpValuesHelp": "Jedna dyrektywa = wartość w wierszu, np. memory_limit = 256M, upload_max_filesize = 64M, post_max_size = 64M. O możliwości zmiany decyduje PHP-FPM.",
"webServicePhpValuesInvalid": "Nadpisania PHP INI muszą mieć unikalny format dyrektywa = wartość, po jednym wpisie na linię.",
"webServicePhpDocsButton": "Składnia i bezpieczeństwo FastCGI",
"webServicePhpDocsTitle": "Konfiguracja PHP-FPM / FastCGI",
"webServicePhpDocsIntro": "RustProxy łączy się bezpośrednio z istniejącą pulą PHP-FPM. Na tym samym hoście preferuj socket Unix. TCP jest akceptowane wyłącznie na loopback i nie jest publicznym/sieciowym transportem FastCGI.",
"webServicePhpDocsEndpointTitle": "Składnia endpointu",
"webServicePhpDocsEndpoint": "Użyj unix: z pełną ścieżką gniazda albo tcp: z adresem IP loopback i portem. Nazwy DNS i publiczne adresy TCP są zabronione. Oddziel pule PHP-FPM aplikacji z różnymi ograniczeniami INI.",
"webServicePhpDocsCustomTitle": "Własne parametry FastCGI",
"webServicePhpDocsCustom": "Jedna linia NAME = wartość (nazwa zaczyna się literą i zawiera A-Z, cyfry lub podkreślenie). Wartości są statyczne. SCRIPT_FILENAME, HTTP_* i PHP_VALUE/PHP_ADMIN_VALUE są zastrzeżone.",
"webServicePhpDocsValuesTitle": "Nadpisania PHP INI",
"webServicePhpDocsValues": "Każda linia trafia do PHP_VALUE. Zaufane ustawienia administracyjne wpisuj osobno w PHP_ADMIN_VALUE; żadne z tych pól nie izoluje procesów korzystających z tej samej puli PHP-FPM.",
"webServicePhpDocsLimitsTitle": "Limity i nagłówki",
"webServicePhpDocsLimits": "Timeout żądania obejmuje wymianę FastCGI. Limit body jest egzekwowany podczas streamingu i po przekroczeniu zwraca 413; 0 wyłącza limit body po stronie RustProxy. Limity nagłówków odpowiedzi i stderr ograniczają pamięć/dane diagnostyczne. Dozwolone są maks. 64 własne parametry FastCGI i 64 nadpisania PHP INI, łącznie do 128 KiB danych własnych. Przekazywanie Authorization można wyłączyć, gdy aplikacja nie potrzebuje HTTP_AUTHORIZATION.",
"webServicePhpDocsSecurity": "Nie umieszczaj sekretów we własnych parametrach ani PHP_VALUE, jeśli nie akceptujesz ich przechowywania w zwykłej konfiguracji Web Service. Używaj osobnej, nieuprzywilejowanej tożsamości puli PHP-FPM i nie wystawiaj PHP-FPM do publicznej sieci.",
"webServicePhpHelp": "RustProxy komunikuje się bezpośrednio przez FastCGI z długowieczną pulą PHP-FPM. PHP nie jest uruchamiane osobno dla każdego żądania, a kod źródłowy PHP nie jest serwowany, gdy obsługa PHP jest wybrana.",
"webServicePhpSymlinkConflict": "PHP-FPM wymaga obecnie polityki symlinków Deny.",
"webServiceSymlinkPolicy": "Polityka symlinków",
"webServiceSymlinkDeny": "Zabroń",
"webServiceSymlinkInsideRoot": "Zezwól tylko wewnątrz document root (Linux)",
"webServiceSafety": "Document root jest ścisłą granicą dostępu do filesystemu. Domyślnie symlinki są blokowane. Linux może opcjonalnie podążać wyłącznie do celów pozostających w document root; PHP-FPM wymaga obecnie polityki blokującej symlinki.",
"webServiceSelect": "Wybierz usługę WWW",
"webService": "Usługa WWW",
"webServiceUsedBy": "Używana przez",
"webServiceUnused": "Niepodpięta",
"webServiceEmpty": "Brak usług WWW.",
"webServiceSearchEmpty": "Brak usług WWW pasujących do wyszukiwania.",
"webServiceInUse": "Usługa WWW jest nadal używana przez",
"webServiceDelete": "Usunąć tę usługę WWW?",
"webServiceIndexRequired": "Pliki index są opcjonalne.",
"webServiceDuplicate": "Usługa WWW o tym ID już istnieje.",
"webServiceRequired": "Wybierz usługę WWW.",
"sourceType": "Typ źródła",
"sourceReverseProxy": "Reverse Proxy",
"sourceWebServer": "Serwer WWW",
"sourceHelp": "Vhost przechowuje tylko wybór źródła. Ustawienia Serwera WWW pozostają w wybranej, wielokrotnego użytku usłudze WWW.",
"locationWebServerAction": "Serwer WWW",
"locationWebServerShort": "Serwer WWW",
"docsReader": "Reader",
"docsApi": "API",
"docsReaderSearch": "Szukaj w dokumentacji",
"docsReaderSearchPlaceholder": "Szukaj tytułu lub ścieżki",
"docsReaderEmpty": "Brak dokumentów pasujących do wyszukiwania.",
"docsCategoryProject": "Projekt",
"docsCategoryGuides": "Dokumentacja funkcjonalna",
"docsCategoryTechnical": "Techniczna",
"docsCategoryAudits": "Audyty i historia",
"docsCategoryHistorical": "Historyczne",
"webServiceIndexHelp": "Opcjonalne. Pozostaw puste, aby pominąć wyszukiwanie indexu; przy włączonym listingu od razu zostanie pokazana lista plików.",
"webServiceNoIndex": "Brak plików index",
"vhBackendRequired": "Reverse Proxy wymaga co najmniej jednego backendu. Dodaj backend albo zmień źródło na Serwer WWW.",
"vhListenerRequired": "Wybierz co najmniej jeden listener dla tego vhosta.",
"traffic": "Ruch",
"trafficTitle": "Ruch per vhost.",
"trafficDescription": "Ograniczone statystyki żądań: kraje, User-Agenty, adresy IP klientów, ścieżki, trasy i wyniki obsługi.",
"trafficSinceStart": "Od startu procesu",
"trafficResponseBytes": "Bajty odpowiedzi",
"trafficRequestBytes": "Bajty żądań",
"trafficMeanLatency": "Średnie opóźnienie",
"trafficDroppedSamples": "Odrzucone próbki statystyk",
"trafficBoundedLabel": "OGRANICZONE / ASYNCHRONICZNE",
"trafficDimensionsTitle": "Wymiary ruchu",
"trafficApproxHelp": "Listy TOP są przybliżone i mają stały limit, aby ruch o dużej liczbie unikalnych wartości nie zwiększał pamięci proxy bez ograniczeń.",
"trafficTopCountries": "Top kraje",
"trafficTopUserAgents": "Top User-Agenty",
"trafficTopClientIps": "Top adresy IP klientów",
"trafficClientIp": "IP klienta",
"trafficTopPaths": "Top ścieżki",
"trafficTopRoutes": "Top trasy",
"trafficMethods": "Metody",
"trafficStatusClasses": "Klasy statusów",
"trafficCacheOutcomes": "Wyniki cache",
"trafficValue": "Wartość",
"trafficOther": "Pozostałe",
"trafficNoCountryData": "Zbieranie kraju jest wyłączone albo baza GeoIP jest niedostępna.",
"trafficNoUserAgentData": "Brak zebranych danych User-Agent.",
"trafficNoData": "Brak danych o ruchu.",
"trafficUserAgentEnabled": "Zbieranie User-Agent włączone",
"trafficUserAgentDisabled": "Zbieranie User-Agent wyłączone",
"trafficCountryEnabled": "Zbieranie kraju włączone",
"trafficCountryDisabled": "Zbieranie kraju wyłączone",
"trafficCountryNoDb": "Zbieranie kraju włączone, baza GeoIP niedostępna",
"trafficUpdated": "Odświeżono",
"loggingCaptureTitle": "Zbierane wymiary żądania",
"loggingCaptureUserAgent": "Zbieraj User-Agent",
"loggingCaptureCountry": "Zbieraj kraj z GeoIP",
"loggingCaptureCountryHelp": "Lookup kraju jest opcjonalny i domyślnie wyłączony. Włącz go tylko, gdy potrzebujesz kraju w logach/statystykach; reguły ACL/rate-limit per kraj nadal użyją GeoIP, gdy jest to wymagane.",
"cacheAutoTrimEnabled": "Automatycznie zwalniaj nieużywaną pamięć cache HOT",
"cacheAutoTrimAfter": "Czas bezczynności przed trim HOT (sekundy)",
"cacheAutoTrimTarget": "Docelowe użycie HOT po trim (%)",
"cacheAutoTrimHelp": "Gdy pamięć HOT przekracza próg, w ograniczonych partiach usuwane są wyłącznie obiekty nieużywane przez ustawiony czas. Aktywny working set nie jest czyszczony.",
"webServiceTabHtaccess": ".htaccess",
"webServiceHtaccessEnabled": "Włącz zgodność z .htaccess",
"webServiceHtaccessFilename": "Plik konfiguracyjny",
"webServiceHtaccessRecursive": "Skanuj podkatalogi",
"webServiceHtaccessStrict": "Tryb ścisły dla niewspieranych dyrektyw",
"webServiceHtaccessDocs": "Dokumentacja zgodności",
"webServiceHtaccessHelp": "RustProxy kompiluje ograniczony podzbiór zgodny z Apache podczas zastosowania Web Service. Pliki nie są parsowane przy każdym żądaniu; po zmianie .htaccess na dysku zastosuj Web Service ponownie.",
"webServiceHtaccessDocsTitle": "Zgodność .htaccess",
"webServiceHtaccessDocsIntro": "To warstwa zgodności przeznaczona do migracji, a nie pełne środowisko Apache. Wspierane dyrektywy są kompilowane do reguł Web Servera RustProxy.",
"webServiceHtaccessDocsSupportedTitle": "Wspierany podzbiór",
"webServiceHtaccessDocsRewriteTitle": "Zgodność rewrite",
"webServiceHtaccessDocsRewrite": "Warunki rewrite obsługują testy REQUEST_FILENAME (-f, -d, -s), REQUEST_URI, REQUEST_METHOD, QUERY_STRING, HTTP_HOST, HTTPS, DOCUMENT_ROOT, THE_REQUEST i nagłówki HTTP. Flagi: L, END, R, R=301/302/307/308, QSA, NC, F, OR. PT/NE są akceptowane jako no-op. E= jest akceptowane jako no-op zgodności, ponieważ nagłówki HTTP żądania i tak trafiają do PHP-FPM.",
"webServiceHtaccessDocsPhpTitle": "PHP-FPM",
"webServiceHtaccessDocsPhp": ".htaccess może dodawać rozszerzenia PHP przez AddHandler, ale endpoint PHP-FPM, timeouty i limit współbieżności nadal są kontrolowane w zakładce PHP-FPM Web Service. Składnia Apache SetHandler wskazująca socket proxy celowo nie jest akceptowana.",
"webServiceHtaccessDocsReloadTitle": "Ładowanie i limity",
"webServiceHtaccessDocsReload": "Pliki są odczytywane i kompilowane podczas „Validate, save and apply”. RustProxy nie parsuje .htaccess przy każdym żądaniu. Po zmianie pliku zastosuj konfigurację ponownie. Skan ma limity: 128 plików, głębokość 16, 128 KiB na plik i 1 MiB łącznie.",
"webServiceHtaccessDocsUnsupportedTitle": "To nie jest pełny Apache",
"webServiceHtaccessDocsUnsupported": "ErrorDocument, SetEnvIf, Redirect/RedirectMatch i FallbackResource nie są zaimplementowane w tej warstwie. Ogólne Files/FilesMatch, niewspierane dyrektywy uwierzytelniania/autoryzacji, handlery inne niż PHP i SetHandler są odrzucane nawet przy wyłączonym trybie ścisłym, ponieważ ich ciche pominięcie mogłoby osłabić kontrolę dostępu lub ujawnić kod źródłowy. Pliki .htaccess/.htpasswd są zawsze blokowane przed wysłaniem przez HTTP. Pozostałe niewspierane dyrektywy niesecurity są logowane i ignorowane, chyba że włączono tryb ścisły.",
"webServiceHtaccessDocsSecurity": "ACL vhost/location, uwierzytelnianie, strony błędów i reguły odpowiedzi nadal mają nadrzędną rolę. .htaccess nie może wyjść poza document root, wybrać dowolnego socketu FastCGI ani nadpisać chronionych nagłówków transportowych.",
"webServicePresetTitle": "Preset konfiguracji",
"webServicePreset": "Preset",
"webServicePresetCustom": "Własny",
"webServicePresetStatic": "Strona statyczna",
"webServicePresetSpa": "SPA",
"webServicePresetPhpGeneric": "PHP ogólny",
"webServicePresetDownloads": "Pliki / repozytorium pobrań",
"webServicePresetAction": "Akcja presetu",
"webServicePresetApply": "Zastosuj preset",
"webServicePresetHelp": "Preset wypełnia zwykłe ustawienia Web Service i wszystko nadal można edytować. Document root, ID/nazwa usługi i endpoint PHP-FPM nie są zmieniane.",
"webServicePresetChoose": "Wybierz preset przed jego zastosowaniem.",
"webServicePresetApplied": "Preset zastosowany. Sprawdź wygenerowane ustawienia przed zapisem.",
"webServicePresetHintStatic": "Strona statyczna: indeksy HTML, prekompresowane pliki i reguły cache dla CSS/JS/obrazów/fontów.",
"webServicePresetHintSpa": "SPA: fallback do index.html przez try_files, prekompresowane assety i długi cache zasobów statycznych.",
"webServicePresetHintPhpGeneric": "PHP ogólny: PHP-FPM włączony, index.php pierwszy, bez front-controllera dla brakujących plików.",
"webServicePresetHintWordpress": "WordPress: PHP-FPM, index.php i routing front-controller. Document root ustaw na publiczny katalog WordPressa.",
"webServicePresetHintDrupal": "Drupal: PHP-FPM, index.php i routing front-controller z cache zasobów statycznych.",
"webServicePresetHintLaravel": "Laravel: PHP-FPM i routing front-controller. Document root ustaw na katalog public/ aplikacji.",
"webServicePresetHintSymfony": "Symfony: PHP-FPM i routing front-controller. Document root ustaw na katalog public/ aplikacji.",
"webServicePresetHintJoomla": "Joomla: PHP-FPM, index.php i routing front-controller z cache zasobów statycznych.",
"webServicePresetHintPrestashop": "PrestaShop: PHP-FPM, index.php i routing front-controller z cache zasobów statycznych.",
"webServicePresetHintDownloads": "Pobrania: directory listing włączony, obsługa Range i typowe archiwa/dokumenty wymuszane jako załączniki.",
"webServiceHardeningTitle": "Utwardzenie",
"webServiceHardeningAttacks": "Blokuj typowe próby ataków",
"webServiceHardeningHeaders": "Usuwaj zbędne nagłówki ujawniające technologię",
"webServiceHardeningSecurityHelp": "Przełączniki utwardzenia są widoczne obok wyboru presetu w zakładce Ogólne. Po zastosowaniu presetu pozostają niezależnymi ustawieniami.",
"trafficTabOverview": "Przegląd",
"trafficTabClients": "Klienci",
"trafficTabRequests": "Żądania",
"trafficTabDelivery": "Obsługa odpowiedzi",
"trafficVolume": "Wolumen ruchu",
"vhMethodMode": "Polityka metod HTTP",
"vhMethodList": "Metody HTTP (jedna na linię)",
"vhMethodHelp": "Zezwalaj tylko na podane metody albo blokuj podane metody dla tego vhosta. Reguła łączy się z polityką lokalizacji.",
"locationAclProfile": "Profil ACL",
"locationMethodMode": "Polityka metod HTTP",
"locationMethodList": "Metody HTTP (jedna na linię)",
"locationMethodAllow": "Zezwalaj tylko",
"locationMethodBlock": "Blokuj wskazane",
"locationMethodHelp": "Polityka lokalizacji łączy się z polityką vhosta. Przykład: GET, HEAD i POST.",
"locationCountryMode": "Polityka dostępu krajów",
"locationCountryList": "Kody krajów (jeden na linię)",
"locationCountryHelp": "Polityka krajów lokalizacji łączy się z polityką vhosta/profilu. GeoIP jest odczytywany tylko, gdy jest potrzebny.",
"configHistory": "Historia rewizji",
"configHistoryRetention": "SQLITE / OSTATNIE 512 REWIZJI",
"configHistoryHelp": "Wybierz oznaczony dzień, aby zobaczyć zachowane rewizje konfiguracji i ich zmiany. Historia jest zapisywana od wersji 0.25.3.",
"configHistoryChanges": "ZMIANY",
"configHistorySelectDay": "Wybierz dzień.",
"configHistoryRevision": "Rewizja",
"configHistoryRevisionShort": "rew.",
"configHistoryBefore": "Przed",
"configHistoryAfter": "Po",
"configHistoryBaseline": "To najstarsza zachowana baza; wcześniejsza rewizja nie jest dostępna do porównania.",
"configHistoryNoChanges": "Nie znaleziono różnic w konfiguracji.",
"configHistoryDiffLimit": "Podgląd różnic ograniczono do 200 zmienionych ścieżek.",
"configHistoryMissing": "(brak)",
"configHistoryEntries": "rewizji",
"configHistorySummary": "Zachowane rewizje: {count}",
"configHistoryEmpty": "Brak zachowanych rewizji.",
"configHistoryLoading": "Wczytywanie historii rewizji...",
"configHistoryFailed": "Nie udało się wczytać historii rewizji.",
"configHistoryRestoreAction": "Przywróć rewizję",
"configHistoryRestoreConfirm": "Przywrócić rewizję {revision}? Zostanie zwalidowana i zapisana jako nowa rewizja po bieżącej rewizji {current}. Dotychczasowa historia zostanie zachowana.",
"configHistoryRestored": "Rewizja {revision} została przywrócona jako nowa rewizja {new_revision}.",
"about": "O projekcie",
"aboutTitle": "O RustProxy",
"aboutAuthor": "Autor",
"aboutLicense": "Licencja",
"aboutLicenseValue": "GNU AGPL v3",
"aboutOpenSourceText": "RustProxy jest projektem open source. Kod źródłowy jest publicznie dostępny do wglądu, rozwoju i współtworzenia.",
"aboutRepository": "Oficjalne repozytorium źródłowe",
"aboutPackagesRepository": "Oficjalne repozytorium pakietów",
"aboutPythonRuntime": "Środowisko Python certyfikatów",
"runtimePython": "Python",
"runtimePip": "pip",
"runtimeCertbot": "Certbot",
"runtimeAcmeMode": "Tryb ACME",
"runtimeAvailable": "Dostępny",
"runtimeUnavailable": "Niedostępny",
"vhPoolRecycleRequests": "Odśwież pulę upstream po liczbie żądań (0 = wył.)",
"vhPoolRecycleSeconds": "Maks. wiek puli upstream (sekundy, 0 = wył.)",
"vhHttp1MaxBuffer": "Maks. bufor odczytu HTTP/1 upstream (bajty)",
"vhPoolRecycleHelp": "Odświeżanie podmienia tylko generację klienta Hyper danego backendu; aktywne wymiany kończą się normalnie. Domyślne limity ograniczają retencję pamięci puli/TLS bez przeładowania vhosta ani cache. Limit żądań: 0 lub 1000..10000000; limit czasu: 0 lub 60..604800.",
"backendSearch": "Szukaj backendów",
"backendSearchPlaceholder": "Szukaj vhosta, backendu lub stanu",
"backendSortBy": "Sortuj według",
"backendSortAscending": "Sortowanie rosnące",
"backendSortDescending": "Sortowanie malejące",
"backendColumns": "Kolumny",
"backendSearchEmpty": "Brak backendów pasujących do wyszukiwania.",
"vhQuickEnable": "Włącz",
"vhQuickDisable": "Wyłącz",
"vhEnableHint": "Określa, czy ten vhost przyjmuje ruch.",
"backendColumnsRequired": "Co najmniej jedna kolumna tabeli backendów musi pozostać widoczna.",
"logs": "Logs",
"storedLogs": "Zapisane logi",
"fileLogsSearchHelp": "Składnia wyszukiwania",
"fileLogsSearchHelpTitle": "Wyszukiwanie po polach jak w Kibanie",
"fileLogsSearchHelpText": "Używaj warunków pole:wartość. Warunki łączy AND; znak ! przed warunkiem wyklucza wynik. Cudzysłowy zachowują spacje.",
"fileLogsParsedFields": "Sparsowane pola",
"fileLogsRawJson": "Surowy JSON",
"filelogs": "Logs",
"filelogsTitle": "Przeglądarka zapisanych logów",
"filelogsDescription": "Przeszukuj skonfigurowane logi RustProxy na dysku niezależnie od bufora Live Logs.",
"fileLogsTitle": "Przeglądarka zapisanych logów",
"fileLogsMode": "LOKALNIE / TYLKO ODCZYT / LIMITY",
"fileLogsHelp": "Przeszukuje logi access/error RustProxy w ustalonych limitach i parsuje pola bez ujawniania ścieżek systemu plików.",
"fileLogsSettingsHelp": "Przeglądaj skonfigurowane pliki access/error z filtrami po stronie serwera. Logowanie do plików może być wyłączone, a Live Logs nadal korzysta z bufora pamięci.",
"openLogs": "Otwórz Logs",
"fileLogsSource": "Źródło",
"fileLogsAllSources": "Wszystkie skonfigurowane pliki",
"fileLogsNoSources": "Brak dostępnych skonfigurowanych plików logów.",
"fileLogsEvent": "Zdarzenie",
"fileLogsPageSize": "Rozmiar strony",
"fileLogsRecord": "Żądanie / przyczyna",
"fileLogsEmpty": "Brak rekordów pasujących do filtrów.",
"fileLogsDetails": "Szczegóły rekordu",
"fileLogsSelectRecord": "Wybierz rekord, aby zobaczyć jego JSON.",
"fileLogsSearchPlaceholder": "req: GET AND !country: Poland",
"fileLogsTruncated": "osiągnięto limit skanowania",
"fileLogsSummary": "{from}–{to} z {total} wyników · przeskanowano {bytes} / {lines} linii",
"fileLogsMatchedBy": "Dopasowanie przez",
"fileLogsSni": "SNI",
"fileLogsAuthority": "Authority / Host",
"fileLogsColumnsRequired": "Co najmniej jedna kolumna zapisanych logów musi pozostać widoczna.",
"fileLogsSourcesRead": "Skonfigurowane pliki",
"search": "Szukaj",
"all": "Wszystkie",
"clientIp": "IP klienta",
"vhost": "Vhost",
"previous": "Poprzednia",
"next": "Następna",
"refresh": "Odśwież",
"applyFilters": "Zastosuj filtry",
"appearance": "Wygląd",
"appearanceEyebrow": "INTERFEJS",
"appearanceHelp": "Te preferencje są zapisywane dla konta administratora i obowiązują również w kolejnych sesjach.",
"languageAutomatic": "Automatycznie (przeglądarka)",
"interfaceScale": "Skala interfejsu",
"interfaceScaleHelp": "Skaluj cały interfejs administracyjny, łącznie z modalami i nakładkami, bez zmiany powiększenia przeglądarki.",
"timeFormat": "Format czasu",
"timeFormat24": "24-godzinny",
"timeFormat12": "12-godzinny",
"chartStyle": "Styl wykresów",
"chartStyleDefault": "Domyślny",
"chartStyleSoft": "Łagodny",
"chartStyleTechnical": "Techniczny",
"chartStyleHighContrast": "Wysoki kontrast",
"chartStylePreview": "Podgląd",
"draftDockTitle": "Szkice",
"draftUntitled": "Nowy",
"draftRestore": "Otwórz szkic",
"draftDiscard": "Usuń szkic",
"draftDiscardConfirm": "Usunąć ten niezapisany szkic?",
"draftMinimized": "Szkic przeniesiono do docka.",
"chartStyleNeon": "Neonowy",
"chartStyleMonochrome": "Monochromatyczny",
"chartStyleWarm": "Ciepły",
"chartStyleCool": "Chłodny",
"settingsSearch": "Znajdź ustawienia",
"settingsSearchPlaceholder": "Szukaj ustawień, sekcji i opcji...",
"settingsSearchResults": "Pasujące sekcje",
"appearanceReset": "Przywróć wygląd",
"appearanceResetDone": "Przywrócono domyślne ustawienia wyglądu",
"appearanceInterfaceSection": "INTERFEJS",
"appearanceInterfaceTitle": "Interfejs",
"appearanceChartsSection": "WYKRESY",
"appearanceDataSection": "TABELE / LOGI",
"appearanceDashboardSection": "DASHBOARD",
"resetSection": "Resetuj sekcję",
"appearanceSectionResetDone": "Ustawienia sekcji zostały zresetowane",
"chartStylePalettes": "Palety stylów wykresów",
"tableDensity": "Gęstość tabel i logów",
"densityNormal": "Normalna",
"densityUltra": "Ultra kompaktowa",
"tableDensityHelp": "Zmienia wysokość wierszy i odstępy w logach niezależnie od globalnej skali interfejsu.",
"dashboardLayout": "Układ dashboardu",
"dashboardDensity": "Gęstość dashboardu",
"dashboardDensityHelp": "Steruje rozmiarem kafelków telemetrii w Overview bez zmiany reszty interfejsu.",
"dashboardWidgets": "Kafelki Overview",
"dashboardWidgetsHelp": "Pokazuj, ukrywaj i układaj wszystkie bloki Overview, także wykresy, diagnostykę i tabelę backendów.",
"dashboardWidgetsScrollHelp": "Przewijaj kafelki poziomo lub rozwiń całą listę.",
"dashboardWidgetsMoveEarlier": "Przesuń kafelek wcześniej",
"dashboardWidgetsMoveLater": "Przesuń kafelek później",
"dashboardWidgetsScrollNext": "Przewiń kafelki w prawo",
"dashboardWidgetsScrollBack": "Przewiń kafelki w lewo",
"dashboardWidgetsCompact": "Widok kompaktowy",
"dashboardWidgetsShowAll": "Pokaż wszystkie",
"dashboardWidgetVisible": "Widoczny",
"moveUp": "Przenieś wyżej",
"moveDown": "Przenieś niżej",
"draftDockCollapse": "Zwiń szkice",
"draftDockExpand": "Rozwiń szkice",
"draftAgeNow": "teraz",
"draftAgeMinutes": "{count} min",
"draftAgeHours": "{count} godz.",
"draftAgeDays": "{count} d",
"buttonStyle": "Styl przycisków",
"buttonStyleNormal": "Normalny",
"buttonStyleCompact": "Kompaktowy",
"buttonStyleHelp": "Normalny używa odświeżonych przycisków; Kompaktowy przywraca mniejsze przyciski ze źródłowego interfejsu we wszystkich akcjach i zakładkach modali.",
"entityEnableHint": "Określa, czy ten element jest aktywny.",
"setupCommandExample": "Przykład dla standardowej instalacji usługi:",
"certificateRuntimeTitle": "Środowisko ACME",
"certificateRuntimePreparing": "Przygotowanie",
"certificateRuntimeManaged": "Python aplikacji",
"certificateRuntimeSystem": "Fallback systemowy",
"certificateRuntimeUnavailable": "Niedostępne",
"certificateRuntimePath": "Środowisko aplikacji",
"acme.runtime_checking": "Sprawdzanie lokalnego środowiska Python do zarządzania certyfikatami.",
"acme.runtime_initializing": "Tworzenie prywatnego środowiska Python w katalogu danych RustProxy i instalowanie modułów Certbota przez pip.",
"acme.runtime_ready": "Prywatne środowisko Python/pip do zarządzania certyfikatami jest gotowe.",
"acme.runtime_fallback": "Nie można użyć prywatnego środowiska. RustProxy korzysta z systemowego Pythona i Certbota dostępnego w PATH.",
"acme.runtime_python_missing": "Python nie jest dostępny w tym systemie. Automatyczne generowanie i odnawianie ACME są niedostępne; import PEM i istniejące pliki certyfikatów nadal działają.",
"acme.runtime_pip_missing": "Python jest dostępny, ale RustProxy nie może utworzyć lokalnego środowiska pip, a systemowy Certbot nie jest dostępny. Zainstaluj Python z venv/pip albo pakiety Certbota. Import PEM i istniejące pliki nadal działają.",
"acme.runtime_setup_failed": "RustProxy nie może utworzyć lokalnego środowiska Python/pip, a systemowy Certbot nie jest dostępny. Sprawdź dostęp do sieci/pakietów albo zainstaluj Certbota z dystrybucji. Import PEM i istniejące pliki nadal działają.",
"acme.runtime_venv_failed": "Python i pip są dostępne, ale RustProxy nie może utworzyć prywatnego środowiska w katalogu danych. Sprawdź obsługę venv/virtualenv oraz uprawnienia do katalogu danych. Systemowy Certbot nie jest dostępny.",
"acme.runtime_venv_pip_failed": "Prywatne środowisko Python zostało utworzone, ale nie udało się uruchomić w nim pip/ensurepip. Sprawdź instalację Python venv/ensurepip. Systemowy Certbot nie jest dostępny.",
"acme.runtime_certbot_install_failed": "Prywatne środowisko Python działa, ale pip nie może zainstalować pakietów Certbota. Sprawdź dostęp do PyPI/proxy/DNS/TLS. Systemowy Certbot nie jest dostępny.",
"acme.runtime_certbot_validation_failed": "Pakiety ACME zostały zainstalowane, ale Certbot lub jedna z wymaganych wtyczek nie przechodzi walidacji. Usuń katalog acme-python i uruchom RustProxy ponownie albo sprawdź zgodność lokalnego Pythona.",
"acme.runtime_data_dir_missing": "Katalog danych RustProxy jest niedostępny, więc nie można utworzyć prywatnego środowiska Python. Import PEM i istniejące pliki certyfikatów nadal działają.",
"geoipUpdatesTitle": "Aktualizacje GeoIP",
"geoipUpdatesHelp": "Pobiera w tle bezpośrednie źródła baz krajów GeoIP i przeładowuje je bez restartu ruchu proxy. Weryfikacja SHA-256 wydawcy jest opcjonalna osobno dla każdego pliku.",
"geoipUpdatesEnable": "Włącz automatyczne aktualizacje GeoIP",
"geoipReleaseUrl": "Bazowy URL plików wydań",
"geoipChecksumUrl": "Bazowy URL plików sum kontrolnych",
"geoipMaxFileMiB": "Maksymalny rozmiar pliku (MiB)",
"geoipIntervalHours": "Interwał aktualizacji (godziny)",
"geoipStatusLoaded": "Baza GeoIP załadowana",
"geoipStatusMissing": "Baza GeoIP nie jest jeszcze załadowana. Worker w tle automatycznie ponowi próbę.",
"geoipStatusDisabled": "Automatyczne aktualizacje GeoIP są wyłączone.",
"cacheViaEnable": "Dodawaj nagłówek odpowiedzi Via",
"cacheViaValue": "Wartość nagłówka Via",
"cacheViaHelp": "Domyślnie Via: RustProxy. Zmiany bypassów i nagłówków diagnostycznych odpowiedzi działają od razu bez czyszczenia zapisanych obiektów cache.",
"geoipUpdateNow": "Pobierz teraz",
"geoipUpdateNowHelp": "Używa zapisanych bezpośrednich URL-i źródeł i opcjonalnych URL-i sum kontrolnych. Ręczne pobranie działa także przy wyłączonych aktualizacjach automatycznych i przeładowuje zweryfikowaną bazę bez restartu.",
"geoipUpdateSaveFirst": "Najpierw zapisz ustawienia GeoIP, a potem uruchom ręczne pobranie.",
"geoipUpdateWorking": "Pobieranie i walidacja danych GeoIP…",
"geoipUpdateUpdated": "Baza GeoIP została pobrana i przeładowana bez restartu.",
"geoipUpdateCurrent": "Baza GeoIP jest już aktualna i załadowana.",
"geoipUpdateBusy": "Inna aktualizacja GeoIP już trwa; spróbuj ponownie za chwilę.",
"geoipFormat": "Format bazy",
"geoipFormatCsvPair": "Zakresy CSV (osobno IPv4 + IPv6)",
"geoipFormatMmdb": "MaxMind DB (.mmdb, IPv4 + IPv6)",
"geoipIpv4Url": "Bezpośredni URL CSV IPv4",
"geoipIpv4ChecksumUrl": "URL SHA-256 IPv4 (opcjonalny)",
"geoipIpv6Url": "Bezpośredni URL CSV IPv6",
"geoipIpv6ChecksumUrl": "URL SHA-256 IPv6 (opcjonalny)",
"geoipMmdbUrl": "Bezpośredni URL MaxMind DB",
"geoipMmdbChecksumUrl": "URL SHA-256 MaxMind DB (opcjonalny)",
"geoipSourceHelp": "Tryb CSV używa osobnych plików zakresów IPv4 i IPv6. Tryb MMDB używa jednego natywnego pliku MaxMind DB i obsługuje standardowe pola country.iso_code, registered_country.iso_code albo country_code. Puste pole URL sumy wyłącza weryfikację sumy wydawcy; każdy plik nadal ma limit rozmiaru i jest walidowany przed atomową publikacją. Dla lokalnej własnej bazy MMDB umieść plik w <data-dir>/geoip/country.mmdb, wybierz MMDB i wyłącz automatyczne aktualizacje.",
"certificateFileSource": "Położenie plików",
"certificateSourceManaged": "Katalog certyfikatów RustProxy (<data-dir>/certs)",
"certificateSourceExternal": "Pliki zewnętrzne (pełne ścieżki)",
"certificateSourceManagedHelp": "Podaj tylko nazwy plików, np. app.pem i app.key. RustProxy ładuje je z <data-dir>/certs (przy instalacji pakietowej zwykle /var/lib/rustproxy/certs).",
"certificateSourceExternalHelp": "Podaj pełne ścieżki na serwerze. Przykład Certbota: /etc/letsencrypt/live/example.com/fullchain.pem oraz /etc/letsencrypt/live/example.com/privkey.pem. Symlinki live/ są rozwiązywane przy każdym reloadzie. Odczyt przez POSIX ACL jest obsługiwany i RustProxy nie wymaga konkretnego chmod. Klucz prywatny nie może być czytelny dla innych ani zapisywalny przez grupę/innych, a katalogi ścieżki muszą być własnością root lub rustproxy i nie mogą być zapisywalne przez grupę/innych.",
"certificateExternalAclExample": "Przykład ACL (prawo przejścia bez listowania katalogu):\nsetfacl -m u:rustproxy:--x /etc/ssl/\nsetfacl -m u:rustproxy:--x /etc/letsencrypt/ /etc/letsencrypt/live/ /etc/letsencrypt/archive/\nsetfacl -m u:rustproxy:--x /etc/letsencrypt/live/example.com/ /etc/letsencrypt/archive/example.com/\nsetfacl -m u:rustproxy:r-- /etc/letsencrypt/archive/example.com/fullchain*.pem /etc/letsencrypt/archive/example.com/privkey*.pem\nPo odnowieniu nadaj odczyt bieżącym plikom docelowym przed reloadem API:\nsetfacl -m u:rustproxy:r-- \"$(readlink -f /etc/letsencrypt/live/example.com/fullchain.pem)\" \"$(readlink -f /etc/letsencrypt/live/example.com/privkey.pem)\"",
"certificateExternalFiles": "Zewnętrzne ścieżki plików",
"vhWwwRedirect": "Przekieruj www ↔ bez www",
"vhWwwRedirectTarget": "Wybierz domenę i kierunek przekierowania (308)",
"vhWwwRedirectHelp": "Tylko wybrana para www/bez www jest przekierowywana (308). Pozostałe domeny działają na tym samym backendzie bez przekierowań między nimi. Certyfikat TLS musi obejmować obie wersje.",
"vhCacheForceEnabled": "Ryzykowne wymuszenie cache dla wskazanych URL",
"vhCacheForceTargets": "Prefiksy ścieżki/query dla wymuszonego cache (po jednym w linii)",
"vhCacheForceHelp": "Tylko per-vhost. Pasujące GET/HEAD mogą ominąć bypass query, Cookie/Authorization żądania i klienckie no-cache/no-store. Cookie/Authorization nadal tworzą osobne warianty. Odpowiedzi origin z Set-Cookie, private lub no-store nadal nigdy nie są zapisywane.",
"vhCacheForceConfirm": "Błędne wymuszenie cache może podać nieaktualną lub prywatną treść. Włączyć je tylko dla jawnie sprawdzonych prefiksów URL?",
"locationRedirectAction": "Przekieruj na URL",
"locationRedirectShort": "redirect",
"locationRedirectStatus": "Kod przekierowania",
"locationRedirectTarget": "Adres docelowego / URL",
"locationRedirectPattern": "Opcjonalny regex rewrite dla capture",
"locationRedirectQuery": "Zachowaj query string żądania",
"locationRedirectHelp": "Cel musi być pełnym URL http/https. Opcjonalny regex rewrite obsługuje $1/${name} w ścieżce/query, np. ^/(.*)$ → https://storage.example/o/$1.",
"locationRedirect301": "301 Stałe",
"locationRedirect302": "302 Found",
"locationRedirect303": "303 See Other",
"locationRedirect307": "307 Tymczasowe",
"locationRedirect308": "308 Stałe",
"cacheReason_cache_miss_forced": "MISS dla wymuszonego cache",
"vhWwwPanelTitle": "Przekierowanie adresu www",
"vhWwwInactive": "Przekierowanie wyłączone. Wybierz adres docelowy poniżej i włącz przełącznik powyżej. Wszystkie domeny obsługują ten sam vhost.",
"vhWwwOtherDomains": "Pozostałe domeny (bez przekierowania):",
"vhWwwNoHosts": "Dodaj powyżej konkretną domenę. Wildcard nie może być adresem docelowym.",
"vhWwwSharedCount": "{count} nazw / jeden vhost",
"vhWwwEnable": "Włącz przekierowanie 308",
"vhErrorFallbackTarget": "Główny cel fallbacku błędów",
"vhErrorFallbackStatuses": "Przechwytywane kody statusu",
"vhErrorFallbackHelp": "Cel musi być włączoną wewnętrzną Custom Location. Obsługiwane statusy: 403, 404, 500, 502, 503, 504. Request jest przekazywany wewnętrznie, bez redirectu HTTP.",
"locationInternal": "Wewnętrzna nazwana lokalizacja",
"locationErrorFallbackTarget": "Cel fallbacku błędów",
"locationErrorFallbackStatuses": "Przechwytywane kody statusu",
"locationErrorFallbackHelp": "Opcjonalny fallback błędów w stylu Nginx. Wskaż ID włączonej lokalizacji wewnętrznej. Obsługiwane statusy: 403, 404, 500, 502, 503, 504.",
"webServicePhpPathInfo": "Włącz rozdzielanie PHP PATH_INFO",
"phpProfileSelect": "Konfiguracja PHP-FPM",
"phpProfileLocal": "Konfiguracja lokalna",
"phpProfileHelp": "Wybierz wspólny profil PHP-FPM lub skonfiguruj usługę samodzielnie. Zmiana profilu dotyczy wszystkich przypiętych usług.",
"phpProfileManage": "Zarządzaj profilami PHP-FPM",
"phpProfileToolbar": "Profile PHP-FPM",
"phpProfileTitle": "Wspólne profile PHP-FPM",
"phpProfileDescription": "Rozwiń profil, aby go zmienić. Zapis od razu aktualizuje wszystkie przypięte serwery WWW.",
"phpProfileAdd": "Dodaj profil",
"phpProfileNew": "Nowy profil PHP-FPM",
"phpProfileId": "ID profilu",
"phpProfileName": "Nazwa profilu",
"phpProfileAdminValues": "Administracyjne ustawienia PHP (PHP_ADMIN_VALUE)",
"phpProfileInUse": "Profil jest używany przez",
"phpProfileDelete": "Usunąć profil PHP-FPM?",
"phpProfileInvalid": "Nieprawidłowe pola profilu PHP-FPM",
"phpProfileDuplicate": "ID profilu PHP-FPM już istnieje",
"phpProfileShared": "profil wspólny",
"backendHealthEnabled": "Monitoruj stan backendu (aktywnie i pasywnie)",
"backendHealthPerBackend": "Indywidualne testy stanu backendów",
"backendHealthSelect": "Wybierz backend do konfiguracji",
"backendHealthSelectionHelp": "Wybierz backend z włączonym monitorowaniem w zakładce Backendy. Zmiana wyboru nie usuwa niezapisanych ustawień. Włącz osobny health check, aby nadpisać ustawienia wspólne powyżej.",
"backendHealthNoEnabled": "Brak monitorowanych backendów. Włącz monitorowanie stanu przynajmniej jednego backendu w zakładce Backendy.",
"backendHealthOverride": "Osobny health check dla tego backendu",
"backendHealthOverridesHelp": "Bez nadpisania backend dziedziczy ustawienia vhosta. Wylaczenie monitorowania nie blokuje lokalizacji przypisanych do backendu, ale wylacza probe aktywna i pasywne wykluczanie.",
"cacheOnlyHits": "Pokazuj naglowki diagnostyki cache tylko dla HIT (ukryj MISS i BYPASS)",
"phpHintEnabled": "Uruchamia pliki o wskazanych rozszerzeniach przez już działającą pulę PHP-FPM. RustProxy nie uruchamia PHP; inne pliki nadal są statyczne.",
"phpHintPathInfo": "Rozdziela /static.php/skins/file.css na SCRIPT_FILENAME=static.php i PATH_INFO=/skins/file.css. Potrzebne np. w Roundcube; zwykle zbędne w WordPressie. Domyślnie wyłączone.",
"phpHintPassAuthorization": "Przekazuje nagłówek Authorization do PHP jako HTTP_AUTHORIZATION (np. API/Bearer/Basic). Wyłącz, gdy aplikacja go nie używa.",
"phpHintExtensions": "Rozszerzenia oddzielone przecinkami, bez kropek: php, phtml. Tylko te rozszerzenia uruchamiają PHP.",
"phpHintConnectTimeout": "Limit łączenia z gniazdem PHP-FPM w milisekundach: 1000 = 1 sekunda. Zakres: 50–60000.",
"phpHintRequestTimeout": "Limit całego żądania FastCGI w milisekundach: 30000 = 30 sekund. Zakres: 100–3600000.",
"phpHintConcurrency": "Maksymalna liczba równoległych żądań PHP na usługę, np. 64. Przekroczenie zwraca 503. Zakres: 1–4096.",
"phpHintBodyLimit": "Limit treści żądania w bajtach: 67108864 = 64 MiB. 0 = bez limitu po stronie RustProxy. PHP post_max_size jest osobny.",
"phpHintHeaderLimit": "Maksymalny rozmiar nagłówków odpowiedzi FastCGI w bajtach: 65536 = 64 KiB. Zakres: 4096–1048576.",
"phpHintStderrLimit": "Maksymalna liczba bajtów STDERR PHP-FPM w logu na żądanie, np. 4096. 0 wyłącza przechwytywanie (maks. 65536).",
"phpHintAdminValues": "Administracyjne ustawienia INI, np. open_basedir = /var/www/webmail/:/tmp/. Aby zapobiec przeciekaniu ustawień między vhostami, stosuj osobne pule i gniazda PHP-FPM.",
"phpDocsScope": "Te same pola i przykłady obowiązują w lokalnych ustawieniach PHP usługi WWW i we współdzielonym profilu PHP-FPM. Wybrany profil dostarcza ustawienia wszystkim przypiętym usługom; RustProxy łączy się z uruchomioną pulą.",
"phpDocsSwitchesTitle": "Włączanie PHP i obsługa PATH_INFO",
"phpDocsLimitsTitle": "Limity wykonania i rozmiarów",
"phpDocsLimitsText": "Rozszerzenia PHP: php, phtml (oddzielone przecinkami). Timeout połączenia: 1000 ms = 1 s. Całe żądanie: 30000 ms = 30 s. Maksymalnie 64 równoległe żądania (po przekroczeniu 503). Limit żądania: 67108864 bajtów = 64 MiB; 0 oznacza brak limitu w RustProxy. Nagłówki odpowiedzi: 65536 bajtów. Log STDERR: 4096 bajtów; 0 wyłącza. Wprowadź liczby całkowite; limity PHP INI to osobne ustawienia.",
"phpDocsValuesText": "Wpisuj po jednej dyrektywie = wartość w wierszu w polu PHP INI overrides (PHP_VALUE), a NIE w parametrach FastCGI. Składnia php.ini bez sekcji [sekcja] i bez tagów PHP. Jednostki M/G, wartości On/Off i czasy w sekundach interpretuje PHP. Nie każdą dyrektywę wolno zmienić przez PHP_VALUE. Nie powielaj jej w PHP_ADMIN_VALUE.",
"phpDocsAdminTitle": "PHP_ADMIN_VALUE — administracyjne dyrektywy INI",
"phpDocsAdminText": "Wpisuj je w pole Administracyjne ustawienia PHP (PHP_ADMIN_VALUE). W systemie Unix open_basedir jest listą dozwolonych ścieżek oddzielonych dwukropkiem, np. /var/www/webmail/:/tmp/. Ważne ograniczenia lepiej ustawiać jako php_admin_value[...] w osobnej puli PHP-FPM. Nie stosuj ograniczeń Roundcube dla procesów WordPressa.",
"phpDocsOtherTitle": "Walidacja, przechowywanie i diagnostyka",
"phpDocsOtherText": "Nazwa dyrektywy INI może zawierać litery, cyfry, kropkę, podkreślenie i myślnik (maks. 64 bajty). Wartość nie może być pusta (maks. 8192 bajtów). Maksymalnie 64 parametry FastCGI i 64 wpisy INI w każdej mapie; łącznie maks. 128 KiB. Znaki sterujące i wielowierszowe wartości są odrzucane. Dane trafiają do zwykłej konfiguracji — nie zapisuj tam sekretów. PHP-FPM może odrzucić poprawną składniowo opcję.",
"phpDocsPoolWarning": "Ważne: PHP_VALUE/PHP_ADMIN_VALUE NIE izolują vhostów współdzielących procesy PHP-FPM. WordPress i Roundcube wymagają oddzielnych gniazd, jeśli mają różne ograniczenia INI. Po rozdzieleniu uruchom ponownie procesy PHP-FPM. PATH_INFO nie rozwiązuje problemu open_basedir.",
"vhostInterceptOriginErrors": "Zastępuj treść błędów aplikacji stronami błędów RustProxy",
"vhostInterceptOriginStatuses": "Przechwytywane kody HTTP (oddziel przecinkami)",
"vhostInterceptOriginErrorsHelp": "Przykład: 404, 500, 502, 503, 504. Dla wybranych kodów RustProxy zachowa kod błędu, ale wyświetli stronę skonfigurowaną dla vhosta/globalnie albo wbudowaną. Treść i ciasteczka aplikacji zostaną usunięte, a odpowiedź otrzyma no-store. Domyślnie wyłączone. Wewnętrzne lokalizacje błędów mają pierwszeństwo. Działa dla Reverse Proxy i Web Server (także PHP).",
"vhostInterceptOriginInvalid": "Podaj co najmniej jeden unikalny obsługiwany kod HTTP: 400, 401, 403, 404, 408, 413, 429, 500, 502, 503, 504.",
"systemInformation": "Informacje o systemie",
"systemInformationHelp": "Bieżące dane tylko do odczytu z uwierzytelnionego API statusu. Brakujących wartości nie szacujemy.",
"systemHostHeading": "System operacyjny i sprzęt",
"systemOsVersion": "System operacyjny",
"systemKernel": "Jądro systemu",
"systemArchitecture": "Architektura",
"systemLogicalCpus": "Procesory logiczne",
"systemCpuLoad": "Użycie CPU",
"systemProcessHeading": "Proces RustProxy",
"systemAppVersion": "Wersja RustProxy",
"systemProcessUptime": "Czas pracy procesu",
"systemProcessMemory": "Pamięć procesu (RSS)",
"systemProcessThreads": "Wątki procesu",
"systemOpenFds": "Otwarte deskryptory plików",
"systemCertificateHeading": "Środowisko ACME / Python",
"systemCertificateHelp": "Wersje są odczytywane z interpretera i narzędzi rzeczywiście używanych do obsługi certyfikatów.",
"systemAcmeStatus": "Stan ACME",
"systemPathsHeading": "Ścieżki danych",
"refreshSection": "ODŚWIEŻANIE",
"refreshTitle": "Odświeżanie danych",
"refreshHelp": "Interwały są zapisywane osobno dla administratora. Wyłączenie automatycznego odświeżania zatrzymuje SSE i polling; ręczne przyciski działają nadal.",
"refreshLiveEnabled": "Automatyczne odświeżanie włączone",
"refreshOverview": "Interwał statusu na żywo / SSE",
"refreshTraffic": "Interwał Traffic",
"refreshCache": "Interwał Cache",
"refreshSystemInfo": "Interwał informacji systemowych",
"refreshManual": "Ręcznie",
"refreshNow": "Odśwież teraz",
"refreshViewLive": "Automatycznie w tym widoku",
"refreshManualHint": "Automatyczne metryki systemowe są wstrzymane; użyj przycisku Odśwież teraz.",
"refreshSystemHint": "Metryki systemowe odświeżają się niezależnie, gdy otwarto Overview lub odpowiednią sekcję Settings.",
"startupLoading": "Uruchamianie RustProxy…",
"startupPreparing": "Łączenie z panelem administracyjnym.",
"startupSlow": "Wczytywanie trwa dłużej niż zwykle. Sprawdź połączenie i spróbuj ponownie.",
"startupRetry": "Wczytaj panel ponownie",
"startupFailed": "Nie udało się uruchomić RustProxy",
"sessionValidationFailed": "Nie udało się sprawdzić sesji",
"sessionRetry": "Ponów połączenie",
"panelCompressionTitle": "Kompresja zasobów panelu",
"panelCompressionHelp": "Obejmuje HTML, skrypty, style i języki. Negocjacja z przeglądarką: Zstd → Brotli → gzip przy równej jakości. Odznacz wszystkie, by wyłączyć. Działa od razu; reverse proxy może zmieniać Accept-Encoding lub kodowanie odpowiedzi.",
"cacheHttpInvalidationCurlLabel": "Jak wywołać BAN i PURGE poleceniem curl",
"cacheHttpInvalidationCurlIntro": "Wyślij polecenie curl z dozwolonego IP na adres publicznego vhosta:",
"cacheHttpInvalidationCurlNote": "PURGE usuwa dokładny URL; BAN unieważnia prefiks ścieżki na 1 godzinę. Nie potrzeba ciasteczka administratora, lecz IP musi być na liście. Reverse proxy musi przekazywać te metody oraz poprawnie ustalone IP klienta.",
"cacheHttpInvalidationTitle": "Lista dozwolonych adresów HTTP BAN / PURGE",
"cacheHttpInvalidationAddresses": "Dozwolone adresy IP klientów / CIDR (jeden na wiersz)",
"cacheHttpInvalidationHelp": "Pusta lista = wyłączone. PURGE /ścieżka?zapytanie usuwa dokładne trafienia; BAN /ścieżka blokuje buforowane adresy URL z tym prefiksem (domyślnie 1 godzina, opcjonalnie X-RustProxy-Ban-Ttl). BAN / wymaga X-RustProxy-Confirm-Wide: 1. Operacje dotyczą wyłącznie dopasowanego hosta i vhosta. Za reverse proxy skonfiguruj zaufane proxy i usuwanie fałszywych nagłówków przekazywania.",
"administrationPublicOrigin": "Publiczny adres HTTPS panelu (opcjonalnie)",
"administrationHostsAdvanced": "Zaawansowane: dodatkowe dozwolone hosty DNS",
"administrationHostsHelp": "Wpisz wyłącznie dodatkowe domeny. Domena z publicznego adresu panelu jest dozwolona automatycznie. Bez tego adresu lista pozostaje niezależnym ścisłym ograniczeniem.",
"administrationPublicOriginHelp": "Za zaufanym reverse proxy ustala publiczny schemat HTTPS, domenę i opcjonalny port używane do kontroli Origin/CSRF. To nie tylko lista dozwolonych domen. Domena jest dopuszczana automatycznie. Wymagany restart.",
"userAgentBlocking": "Blokowanie User-Agent",
"globalUaBlockingTitle": "Globalna lista blokowanych User-Agent",
"globalUaBlockingHelp": "Blokuje pasujące wartości User-Agent na publicznych vhostach proxy przed otwarciem połączenia do upstreamu. Listy per vhost są w Vhosts → Security.",
"uaBlockPatterns": "Blokowane wzorce, po jednym w wierszu",
"uaBlockPatternHelp": "Dopasowanie nie rozróżnia wielkości liter. Zwykły tekst oznacza fragment, a * jest wildcardem. Brak nagłówka User-Agent nie powoduje blokady tą regułą.",
"vhUaBlockEnabled": "Blokuj wzorce User-Agent",
"vhUaBlockPatterns": "Blokowane wzorce User-Agent",
"vhUaBlockHelp": "Lista blokad dla vhosta. Zwykły tekst dopasowuje fragment bez rozróżniania wielkości liter, a * jest wildcardem. Działa dodatkowo do listy globalnej.",
"fileLogsConsolidateVhosts": "Konsoliduj rotowane logi per vhost",
"fileLogsAdvancedParser": "Zaawansowany parser · powtarzające się wartości",
"fileLogsAggregateField": "Pole do zliczania",
"fileLogsAggregateMin": "Minimalna liczba powtórzeń",
"fileLogsAggregateLimit": "Najczęstsze wartości",
"fileLogsCountRepeats": "Zlicz powtórzenia",
"fileLogsAggregateHelp": "Zlicza pasujące wartości w ograniczonym zbiorze skanowanych logów, a nie tylko na bieżącej stronie. Możesz użyć pól np. user_agent, client_ip, host, path lub dowolnego sparsowanego pola zagnieżdżonego.",
"fileLogsAggregateValue": "Wartość",
"fileLogsAggregateCount": "Liczba",
"fileLogsAggregateEmpty": "Brak powtarzających się wartości dla wybranego pola.",
"fileLogsAggregateTruncated": "agregacja ograniczona limitem bezpieczeństwa",
"fileLogsFiles": "plików",
"copied": "Skopiowano",
"copyValue": "Kopiuj wartość",
"fileLogsConsolidateShort": "Scal rotacje",
"fileLogsEntriesTab": "Wpisy logów",
"fileLogsCountsTab": "Powtarzające się wartości",
"streamWidgetOverviewDescription": "Liczba skonfigurowanych i uruchomionych listenerów TCP/UDP oraz wymagających uwagi.",
"streamWidgetTrafficDescription": "Łączna szybkość odbioru i wysyłania na podstawie wspólnego odczytu statusu.",
"streamWidgetSessionsDescription": "Aktywne połączenia TCP i sesje klientów UDP.",
"streamWidgetHealthDescription": "Zdrowe, niedostępne i niezweryfikowane backendy oraz pule bez dostępnego celu.",
"backendWidgetHealth": "Stan backendów",
"backendWidgetHealthDescription": "Stan backendów HTTP: dostępne, niedostępne, sprawdzane, opróżniane i wyłączone. Nie dotyczy backendów Stream.",
"backendWidgetActivity": "Aktywne żądania backendów",
"backendWidgetActivityDescription": "Żądania HTTP w toku po stronie backendów, a nie liczba otwartych połączeń TCP.",
"backendWidgetErrors": "Błędy backendów",
"backendWidgetErrorsDescription": "Łączna liczba błędów backendów. Wykres pokazuje tempo błędów między pomiarami.",
"backendWidgetLatency": "Opóźnienie sond dostępności",
"backendWidgetLatencyDescription": "Średni czas ostatnich udanych testów zdrowych backendów HTTP. To nie opóźnienie żądań użytkowników.",
"backendWidgetTraffic": "Transfer backendów",
"backendWidgetTrafficDescription": "Przyrost liczników bajtów backendów HTTP na sekundę w obu kierunkach, bez dodatkowych zapytań.",
"backendWidgetProtocols": "Skonfigurowane tryby backendów",
"backendWidgetProtocolsDescription": "Skonfigurowane tryby H1, Auto, zgodny HTTP/2 i ścisły H2 (nie są to wyniki negocjacji ALPN).",
"backendWidgetUnavailable": "Brak danych backendów",
"backendWidgetUp": "Dostępne",
"backendWidgetDown": "Niedostępne",
"backendWidgetChecking": "Sprawdzane",
"backendWidgetOther": "Opróżniane/wyłączone",
"backendWidgetInFlight": "W toku",
"backendWidgetErrorsRate": "Błędy/s",
"backendWidgetErrorPercent": "Błędne żądania w ostatnim okresie",
"backendWidgetProbeCount": "Zdrowe backendy z sondami",
"backendWidgetH2c": "Backendy h2c",
"backendWidgetModeUnknown": "Nieznane",
"vhProtocolCompatibilityWarning": "Tryb zgodności: zapisane wcześniej backendy HTTPS HTTP/2 zachowują fallback TLS H2/H1. Wybierz „Tylko H2”, jeżeli HTTP/1.1 ma być odrzucony.",
"vhProtocolHttp1Details": "Wyłącznie HTTP/1.1 do backendu, nawet jeśli oferuje HTTP/2.",
"vhProtocolAutoHttpsDetails": "TLS ALPN wybiera H2 lub H1 tylko przy zestawianiu nowego połączenia TLS. Kolejne żądania wykorzystują pulę połączeń. Bez ponawiania żądań po błędach.",
"vhProtocolAutoHttpDetails": "Bez TLS tryb Auto używa wyłącznie HTTP/1.1. Dla h2c prior knowledge wybierz H2.",
"vhProtocolH2HttpsDetails": "Każde nowe połączenie TLS wymaga HTTP/2; późniejsze żądania korzystają z puli H2. Backend H1-only kończy się błędem, bez downgrade.",
"vhProtocolH2HttpDetails": "Bez TLS tryb H2 używa h2c prior knowledge, a nie HTTP/1.1 Upgrade.",
"vhProtocolH2Strict": "Tylko H2 (HTTPS: wymagany H2; HTTP: h2c)",
"vhProtocolLegacyHttp2HttpsDetails": "Zgodność z 0.32.2: nowe połączenie HTTPS negocjuje H2 lub HTTP/1.1 przez ALPN. Kolejne żądania korzystają z wynegocjowanego połączenia.",
"vhProtocolLegacyHttp2HttpDetails": "Zgodność z 0.32.2: bez TLS używane jest HTTP/2 prior knowledge (h2c), bez fallbacku do HTTP/1.1.",
"backendWidgetModeCompat": "HTTP/2 zgodny",
"backendWidgetModeStrict": "Tylko H2",
"backendWidgetRequests": "Żądania do backendów/s",
"backendWidgetRequestsDescription": "Przyrost liczników rozpoczętych żądań backendów HTTP na sekundę. Nowe i restartowane backendy tworzą nowy punkt odniesienia.",
"backendWidgetRequestsTotal": "Łączne żądania",
"backendWidgetCapacity": "Obciążenie limitów backendów",
"backendWidgetCapacityDescription": "Żądania HTTP w toku względem ustawionych limitów współbieżności backendów. Backendów bez limitu nie uwzględnia się. Bez nowych sond.",
"backendWidgetCapacityLimits": "Backendy z limitem",
"backendWidgetCapacityRejects": "Odrzucone przez limit",
"backendWidgetCapacityNone": "Brak ustawionych limitów współbieżności",
"backendWidgetHttp5xx": "Błędy HTTP 5xx backendów",
"backendWidgetHttp5xxDescription": "Odpowiedzi 5xx z backendów; to nie jest odsetek błędów od strony klientów.",
"backendWidgetTimeouts": "Timeouty backendów",
"backendWidgetTimeoutsDescription": "Wszystkie zarejestrowane klasy timeoutów backendów HTTP.",
"backendWidgetNetwork": "Błędy połączeń backendów",
"backendWidgetNetworkDescription": "Łączne błędy DNS, TCP, TLS i wejścia/wyjścia.",
"backendWidgetRetries": "Ponowienia backendów",
"backendWidgetRetriesDescription": "Próby i udane ponowienia według istniejących reguł retry; bez nowych prób.",
"backendWidgetQueue": "Kolejki backendów",
"backendWidgetQueueDescription": "Timeouty oczekiwania w kolejce i odrzucenia z powodu limitów współbieżności.",
"backendWidgetRotations": "Pule połączeń backendów",
"backendWidgetRotationsDescription": "Liczba odnowień generacji klienta Hyper (nie liczba handshake TLS).",
"backendWidgetRateDetail": "Tempo",
"backendWidgetRetriesSuccess": "Udane ponowienia",
"backendWidgetQueueRejected": "Odrzucenia z powodu limitu",
"backendWidgetTimeoutTotal": "Timeouty łącznie",
"backendWidgetNetworkBreakdown": "TCP / DNS / TLS / I/O",
"backendWidgetPoolGeneration": "Najwyższa generacja puli",
"backendWidgetPoolAge": "Najstarsza generacja",
"overviewLayoutEditorOpen": "Presety dashboardu",
"overviewLayoutEditorTitle": "Ułóż cały Dashboard",
"overviewLayoutEditorHelp": "Przeciągaj kafelki i panele lub używaj strzałek. Ukryte elementy włączysz poniżej. Widok domyślny pokazuje standardowy układ, a Resetuj układ prosi o potwierdzenie przed zapisem.",
"overviewLayoutEditorVisible": "Widoczne kafelki",
"overviewLayoutEditorHidden": "Ukryte kafelki",
"overviewLayoutEditorHide": "Ukryj kafelek",
"overviewLayoutEditorShow": "Pokaż kafelek",
"overviewLayoutEditorSave": "Zapisz układ",
"overviewLayoutEditorCancel": "Anuluj",
"overviewLayoutEditorSaving": "Zapisywanie układu…",
"overviewLayoutEditorEmpty": "Brak widocznych kafelków. Włącz kafelki poniżej.",
"overviewLayoutEditorHiddenEmpty": "Wszystkie kafelki są widoczne.",
"overviewLayoutEditorMoveBefore": "Przesuń kafelek przed",
"overviewLayoutEditorSaved": "Układ Dashboardu zapisany",
"overviewLayoutEditorOpenSettings": "Presety dashboardu",
"overviewLayoutEditorSearch": "Znajdź ukryty kafelek",
"overviewLayoutDefaultPreview": "Widok domyślny",
"overviewLayoutReset": "Resetuj układ",
"overviewLayoutResetTitle": "Zresetować układ Dashboardu?",
"overviewLayoutResetConfirm": "Przywróć domyślną kolejność i widoczność wszystkich bloków Overview. Pozostałe ustawienia nie zmienią się.",
"overviewLayoutResetApply": "Resetuj i zapisz",
"overviewLayoutDefaultLoaded": "Wczytano podgląd widoku domyślnego. Kliknij Zapisz, aby zatwierdzić.",
"overviewLayoutResetSaved": "Przywrócono domyślny układ Dashboardu.",
"overviewLayoutEditorSectionPanel": "Panele i wykresy",
"overviewLayoutEditorSectionMetrics": "Kafelki metryk",
"overviewPanelTrafficDescription": "Żądania na sekundę i wersje HTTP w czasie rzeczywistym.",
"overviewPanelSystemDescription": "CPU, RAM, swap i czas działania systemu.",
"overviewPanelConnectionsDescription": "Otwarte połączenia i aktywne żądania w czasie.",
"overviewPanelCacheDescription": "Statystyki cache i szczegółowa historia.",
"overviewPanelProcessDescription": "Zasoby i pamięć procesu.",
"overviewPanelNetworkDescription": "Przepustowość sieci i czas odpowiedzi.",
"overviewPanelBackendsDescription": "Tabela diagnostyczna backendów z wyszukiwaniem i sortowaniem.",
"overviewExtraProcessCpu": "Historia CPU procesu",
"overviewExtraProcessCpuDescription": "Użycie CPU procesu; procent ze statusu systemowego.",
"overviewExtraProcessRss": "Historia RSS procesu",
"overviewExtraProcessRssDescription": "Pamięć rezydentna procesu w bajtach.",
"overviewExtraProcessFds": "Otwarte deskryptory plików",
"overviewExtraProcessFdsDescription": "Liczba otwartych deskryptorów, nie liczba żądań.",
"overviewExtraOpenConnections": "Historia otwartych połączeń",
"overviewExtraOpenConnectionsDescription": "Otwarte połączenia frontendowe mierzone przez RustProxy.",
"overviewExtraWebsocketActive": "Historia tuneli WebSocket",
"overviewExtraWebsocketActiveDescription": "Aktualnie aktywne tunele WebSocket.",
"overviewExtraTlsErrorRate": "Błędy handshake TLS/s",
"overviewExtraTlsErrorRateDescription": "Tempo wyliczone z przyrostu licznika błędów handshake TLS.",
"overviewExtraRequestErrorRate": "Błędy żądań/s",
"overviewExtraRequestErrorRateDescription": "Tempo wyliczone z przyrostu licznika błędów żądań.",
"overviewExtraCacheHitRate": "Udział trafień cache (ostatnie próbki)",
"overviewExtraCacheHitRateDescription": "Udział HIT w nowych trafieniach i chybieniach; bez BYPASS.",
"overviewExtraCacheMemory": "Wykorzystanie pamięci HOT cache",
"overviewExtraCacheMemoryDescription": "Pamięć rezydentna cache względem limitu HOT RAM, gdy jest dostępny.",
"overviewExtraH2Share": "Udział żądań HTTP/2",
"overviewExtraH2ShareDescription": "Udział H2 w nowych żądaniach przychodzących, nie negocjacja ALPN upstream.",
"overviewExtraResponseLatency": "Średni czas odpowiedzi",
"overviewExtraResponseLatencyDescription": "Średni czas odpowiedzi ze statusu API (nie p95/p99).",
"overviewExtraBackendUnhealthy": "Historia niedostępnych backendów",
"overviewExtraBackendUnhealthyDescription": "Liczba backendów w stanie down; bez dodatkowych sond.",
"overviewExtraFdLimit": "Limit deskryptorów",
"overviewExtraRecentSamples": "Ostatnie próbki",
"overviewBlockTypeValue": "Wartość liczbowa",
"overviewBlockTypeValueChart": "Liczba + wykres",
"overviewBlockTypeChart": "Wykres",
"overviewBlockTypePanel": "Panel diagnostyczny",
"overviewBlockTypeTable": "Tabela",
"overviewBlockTypeAll": "Wszystkie typy",
"overviewLayoutTypeFilter": "Filtruj bloki według typu",
"overviewLayoutUnlock": "Odblokuj układ",
"overviewLayoutLock": "Zablokuj i zapisz",
"overviewLayoutInlineHint": "Układ odblokowany: przesuwaj bloki w obrębie grup podobnych rozmiarów, ukrywaj przyciskiem ×, a potem zapisz lub anuluj. Siatka automatycznie wyrównuje wysokości.",
"overviewLayoutInlineDrag": "Przeciągnij, aby przesunąć",
"overviewLayoutInlineSave": "Zapisz i zablokuj",
"overviewLayoutInlineCancel": "Anuluj zmiany",
"overviewLayoutInlineError": "Nie udało się zapisać układu.",
"themeUltraDark": "Ultra ciemny · niemal czarny",
"themeCream": "Kremowy · stonowany jasny",
"overviewLayoutInlineHide": "Usuń z widoku Dashboardu",
"overviewLayoutInlineHidden": "Ukryte bloki",
"overviewLayoutInlineRestore": "Przywróć na Dashboard",
"overviewLayoutInlineHiddenEmpty": "Brak ukrytych bloków",
"overviewExtraTotalRps": "Żądania HTTP / s",
"overviewExtraTotalRpsDetail": "Tempo wszystkich żądań HTTP, liczone z liczników.",
"overviewExtraActiveExchanges": "Aktywne wymiany HTTP",
"overviewExtraActiveExchangesDetail": "Żądania aktualnie obsługiwane.",
"overviewExtraH1Share": "Udział HTTP/1.1",
"overviewExtraH1ShareDetail": "Udział H1 w nowych żądaniach HTTP.",
"overviewExtraH3Share": "Udział HTTP/3",
"overviewExtraH3ShareDetail": "Udział H3 w nowych żądaniach HTTP.",
"overviewExtraCacheMissRate": "Cache MISS / s",
"overviewExtraCacheMissRateDetail": "Tempo nietrafień w cache.",
"overviewExtraBackendActive": "Żądania do backendów",
"overviewExtraBackendActiveDetail": "Suma aktualnych żądań do backendów HTTP.",
"overviewWideProtocolRates": "Ruch HTTP/1.1 · HTTP/2 · HTTP/3",
"overviewWideProtocolRatesDetail": "Tempo żądań według protokołu frontendu.",
"overviewWideCpu": "CPU systemu i procesu",
"overviewWideCpuDetail": "Procent obciążenia CPU systemu i RustProxy.",
"overviewWideMemory": "RAM procesu i pamięć cache",
"overviewWideMemoryDetail": "Zużycie pamięci RSS procesu i rezydentnej pamięci cache.",
"overviewWideCacheActivity": "Cache HIT / MISS na sekundę",
"overviewWideCacheActivityDetail": "Tempo trafień i nietrafień w cache.",
"overviewWideConnections": "Połączenia i tunele WebSocket",
"overviewWideConnectionsDetail": "Otwarte połączenia oraz aktywne WebSockety.",
"overviewWideBackendHealth": "Dostępność backendów w czasie",
"overviewWideBackendHealthDetail": "Liczba dostępnych i niedostępnych backendów HTTP.",
"overviewWideLatency": "Czas odpowiedzi i sond backendów",
"overviewWideLatencyDetail": "Średni czas odpowiedzi HTTP oraz średni czas udanych sond.",
"overviewWideSystem": "System",
"overviewWideProcess": "Proces",
"overviewWideCache": "Cache",
"overviewWideHits": "HIT",
"overviewWideMisses": "MISS",
"overviewWideOpen": "Połączenia",
"overviewWideWebsockets": "WebSockety",
"overviewWideHealthy": "Dostępne",
"overviewWideUnhealthy": "Niedostępne",
"overviewWideResponse": "HTTP",
"overviewWideProbe": "Sondy",
"overviewWideNoData": "Brak próbek",
"cornerStyle": "Zaokrąglenia interfejsu",
"cornerStyleDefault": "Oryginalne (bez zmian)",
"cornerStyleSquare": "Kanciaste",
"cornerStyleSubtle": "Delikatne",
"cornerStyleRounded": "Zaokrąglone",
"cornerStyleExtra": "Mocno zaokrąglone",
"cornerStyleHelp": "Ustawia zaokrąglenia w całym panelu niezależnie od motywu. Oryginalne zachowują dotychczasowy wygląd.",
"aclRuleType": "Typ adresu",
"aclRuleIp": "IP / CIDR",
"aclRuleDns": "DNS / DDNS",
"aclDnsAllowOnly": "Reguły DNS/DDNS obsługują tylko allow. Do deny użyj IP/CIDR.",
"aclDnsHelp": "Reguły DNS/DDNS typu allow odświeżają rekordy A/AAAA co 60 sekund. Błąd DNS usuwa zezwolenie (fail closed). Podaj nazwę, np. biuro.example.ddns.net, bez URL i gwiazdek. Wybierz wyjątki zezwalające z domyślną blokadą. Maksymalnie 128 nazw i 32 adresy na nazwę.",
"overviewExtraColdQueueMemory": "Wykorzystanie RAM kolejki COLD",
"overviewExtraColdQueueMemoryDescription": "RAM używany przez kolejkę zapisu COLD w stosunku do jej limitu; nie jest to pamięć dyskowa.",
"overviewExtraColdStorage": "Wykorzystanie dysku COLD",
"overviewExtraColdStorageDescription": "Rozmiar trwałego cache COLD na dysku w stosunku do skonfigurowanego limitu.",
"overviewWideTransformActivity": "Aktywność transformacji",
"overviewWideTransformActivityDescription": "Tempo transformacji, trafień w transformowany cache, pominięć i błędów.",
"overviewWideCompressionActivity": "Aktywność kompresji",
"overviewWideCompressionActivityDescription": "Tempo kodowania odpowiedzi gzip, Brotli, Zstd lub deflate, bez odpowiedzi nieskompresowanych.",
"overviewTransformApplied": "Wykonane",
"overviewTransformCacheHits": "Cache HIT",
"overviewTransformSkipped": "Pominięte",
"overviewTransformErrors": "Błędy",
"overviewMeterNoLimit": "Brak skonfigurowanego limitu",
"overviewCacheHitsMisses": "HIT {hits}, MISS {misses}",
"overviewSamplesRemember": "Zapamiętaj wybór",
"overviewSamplesSaved": "Ustawienie zapisane",
"overviewSamplesTemporary": "Tylko do odświeżenia strony",
"overviewSamplesStorageUnavailable": "Nie można zapisać w przeglądarce",
"overviewSamplesTitle": "Próbki wykresów na stronie głównej",
"webMetricStatus": "Statusy HTTP WWW",
"webMetricStatusHelp": "Klasy odpowiedzi serwera WWW od ostatniego resetu.",
"webMetricKind": "Static / PHP",
"webMetricKindHelp": "Pliki statyczne, PHP i inne/wczesne odrzucenia.",
"webMetricCapacity": "Limit żądań PHP",
"webMetricCapacityHelp": "Zajęte/łączne sloty FastCGI RustProxy, nie wykorzystanie workerów PHP.",
"webMetricMethods": "Metody HTTP WWW",
"webMetricMethodsHelp": "GET/POST/PUT/DELETE i pozostałe metody.",
"webMetricErrorRate": "Błędy WWW 5xx",
"webMetricErrorRateHelp": "Odsetek 5xx w ostatnim przedziale, nie od startu.",
"webMetricPhpRequests": "Żądania PHP/s",
"webMetricPhpRequestsHelp": "Odpowiedzi PHP na sekundę.",
"webMetricRequests": "Żądania WWW/s",
"webMetricRequestsHelp": "Ruch Web Server z uwzględnieniem PHP.",
"webMetricLatency": "Czas nagłówków WWW",
"webMetricLatencyHelp": "Średni czas do nagłówków odpowiedzi w ostatnim przedziale; bez treści.",
"webMetricFailures": "Błędy PHP-FPM/s",
"webMetricFailuresHelp": "Błędy według przyczyn; odpowiedzi błędów też są liczone.",
"webMetricTraffic": "Dane WWW/s",
"webMetricTrafficHelp": "Bajty treści przed kompresją końcową; nie ruch sieciowy.",
"webMetricTopServices": "Najaktywniejsze Web Services",
"webMetricTopServicesHelp": "Najaktywniejsze usługi WWW według żądań na sekundę.",
"webMetricStatusTrend": "Statusy WWW/s",
"webMetricStatusTrendHelp": "Odpowiedzi WWW na sekundę wg klas HTTP.",
"webMetricPerSecond": "Odpowiedzi na sekundę",
"webMetricSeriesAll": "Razem",
"webMetricSeriesPhp": "PHP",
"webMetricSeriesWeb": "WWW",
"webMetricSeriesTimeout": "Timeout",
"webMetricSeriesConnection": "I/O + połączenia",
"webMetricSeriesProtocol": "Protokół",
"webMetricSeriesCapacity": "Limit",
"webMetricSeriesNonphp": "Bez PHP",
"webMetricSeriesTwoxx": "2xx",
"webMetricSeriesThreexx": "3xx",
"webMetricSeriesFourxx": "4xx",
"webMetricSeriesFivexx": "5xx",
"webLiveNoData": "Oczekiwanie na metryki WWW",
"webLiveRequests": "Odpowiedzi łącznie",
"webLiveRate": "Tempo",
"webLiveRateHistory": "Historia odpowiedzi/s",
"webLiveErrors": "5xx",
"webLiveLatency": "Czas do nagłówków",
"webLivePhpCapacity": "Limit PHP",
"webLiveKinds": "Statyczne / PHP / inne",
"webLiveBytes": "Wysłana treść",
"webLiveNoPhp": "PHP wyłączone",
"dashboardPresetsTitle": "Presety dashboardu",
"dashboardPresetsHelp": "Zapisuj układy pod nazwą i wczytuj je w dowolnej przeglądarce. Karty możesz zmieniać przez Odblokuj układ.",
"dashboardPresetsName": "Nazwa presetu",
"dashboardPresetsNamePlaceholder": "np. Monitoring",
"dashboardPresetsSave": "Zapisz bieżący widok",
"dashboardPresetsEmpty": "Brak zapisanych presetów.",
"dashboardPresetsRenameHint": "Aby zmienić nazwę presetu, wpisz nową nazwę powyżej i kliknij Zmień nazwę przy wybranym presecie.",
"dashboardPresetsLoad": "Wczytaj",
"dashboardPresetsOverwrite": "Nadpisz",
"dashboardPresetsRename": "Zmień nazwę",
"dashboardPresetsDelete": "Usuń",
"dashboardPresetsFactory": "Przywróć układ fabryczny",
"dashboardPresetsResetConfirm": "Przywrócić fabryczną kolejność, widoczność, szerokości, gęstość i liczbę próbek? Zapisane presety pozostaną.",
"dashboardPresetsDeleteConfirm": "Usunąć zapisany preset „{name}”?",
"dashboardPresetsOverwriteConfirm": "Nadpisać preset „{name}” bieżącym widokiem?",
"dashboardPresetsSaved": "Preset zapisany.",
"dashboardPresetsLoaded": "Preset wczytany.",
"dashboardPresetsRenamed": "Zmieniono nazwę presetu.",
"dashboardPresetsDeleted": "Preset usunięty.",
"dashboardPresetsRestored": "Przywrócono fabryczny układ dashboardu.",
"dashboardPresetsNameRequired": "Wpisz nazwę presetu (maks. 64 znaki).",
"dashboardPresetsLimit": "Możesz zapisać maksymalnie 16 presetów.",
"certAssignVhosts": "Przypisz vhosty",
"certAssignHelp": "Wybierz vhosty dla tego certyfikatu. Odznaczenie wcześniej przypisanego vhosta usuwa jego przypisanie. Inne certyfikaty pozostają bez zmian.",
"certAssignApply": "Zapisz przypisania vhostów",
"apiTokensMovedHelp": "Zarządzanie tokenami API przeniesiono do Ustawienia → Bezpieczeństwo.",
"apiTokensOpenSecurity": "Przejdź do tokenów API w Bezpieczeństwie",
"generalApiTokensTitle": "Tokeny API (RO/RW)",
"generalApiTokensHelp": "Oddzielne tokeny do obsługi API z zewnątrz. Każdy token ma listę dozwolonych IP/CIDR. Dostępne są tylko wybrane operacje API; logowanie administratora działa nadal. Zdalny dostęp wymaga HTTPS.",
"apiTokenComment": "Opis",
"apiTokenPermission": "Uprawnienia",
"apiTokenReadOnly": "Tylko odczyt (RO)",
"apiTokenReadWrite": "Odczyt i zapis (RW)",
"apiTokenIpAllow": "Dozwolone adresy IP/CIDR (po jednym w linii)",
"apiTokenCreate": "Wygeneruj token API",
"apiTokenCopyNow": "Skopiuj token teraz — nie zostanie pokazany ponownie",
"apiTokenLastUsed": "Ostatnie użycie",
"apiTokenRevoke": "Unieważnij token",
"apiTokenEmpty": "Brak tokenów API",
"promTokenTitle": "Token Bearer Prometheusa",
"promTokenHelp": "Generuj token w panelu. Przechowywany jest tylko jego skrót. Odnowienie lub usunięcie działa natychmiast. Umieść token w pliku credentials_file Prometheusa.",
"promTokenGenerate": "Generuj / odnów token",
"promTokenRevoke": "Usuń token",
"promTokenConfigured": "Token skonfigurowany",
"promTokenMissing": "Brak wygenerowanego tokenu; potrzebny token ze starszej zmiennej środowiskowej lub jawny wyjątek dla zaufanej sieci.",
"h3_udp_receive_buffer_mib": "Bufor odbiorczy UDP (MiB; 0 = domyślny systemowy)",
"h3_udp_send_buffer_mib": "Bufor nadawczy UDP (MiB; 0 = domyślny systemowy)",
"http3ApplyPolicy": "NA ŻYWO / RESTART",
"cacheMixTitle": "Wyniki cache",
"cacheMixHelp": "Udział HIT/MISS/BYPASS i INNE we wszystkich żądaniach HTTP od startu usługi. INNE oznacza brak decyzji cache. Każda kategoria pokazuje liczbę i procent.",
"cacheMixOther": "INNE",
"cacheMixSample": "Od startu usługi · {count} żądań HTTP",
"cacheMixWaiting": "Brak żądań HTTP od startu usługi",
"cacheMixAria": "Od startu usługi: {hit} HIT, {miss} MISS, {bypass} BYPASS, {other} INNE",
"cacheMixInvalid": "Suma niedostępna: niespójne liczniki żądań i cache"
},
"overviewLayoutNarrow": "Zmniejsz szerokość karty",
"overviewLayoutWiden": "Zwiększ szerokość karty",
"overviewLayoutWidth": "Szerokość karty w siatce 12 kolumn",
"overviewLayoutInlineHint": "Układ odblokowany: przenoś dowolne karty i zmieniaj ich szerokość przyciskami − / + (2, 3, 4, 6 lub 12 kolumn). Zapisz lub anuluj zmiany.",
"dashboardPresetsConflict": "Preset już istnieje lub został usunięty. Odśwież listę i spróbuj ponownie."
}