{
"websites": {
"title": "Сайты",
"createZone": "Добавить зону",
"searchRoot": "Корневой домен зоны поиска",
"loadingList": "Загрузка списка зон...",
"requestFailed": "Запрос не выполнен. Пожалуйста, повторите попытку позже.",
"emptySearch": "Соответствующая зона не найдена.",
"emptyList": "Зон пока нет. Нажмите «Добавить зону» в правом верхнем углу, чтобы начать.",
"rootDomain": "Корневой домен",
"domainCount": "Домены",
"createdAt": "Создано",
"updatedAt": "Обновлено",
"actions": "Действия",
"manage": "Управление",
"manageZone": "Управление зоной",
"loadingDetail": "Загрузка сведений о зоне...",
"invalidId": "Неверный сайт ID. Откройте страницу сведений из списка веб-сайтов.",
"notFound": "Сайт не найден. Возможно, он был удален или ID недействителен.",
"back": "Назад",
"detailSubtitle": "Управление сайтом зоны",
"tabOverview": "Обзор",
"tabDomains": "Домены ({count})",
"tabCertificates": "Сертификаты ({count})",
"basicInfo": "Основная информация",
"basicInfoDesc": "Поддерживать регистрируемый корневой домен Зоны. После смены корня подтвердите, что его домены по-прежнему принадлежат ему.",
"currentRoot": "Текущий корневой домен",
"editRoot": "Изменить корневой домен",
"dangerZone": "Опасные действия",
"dangerZoneDesc": "Очистите все домены в зоне перед ее удалением. Удаление невозможно отменить.",
"deleteZone": "Удалить зону",
"deleteZoneTitle": "Удалить зону",
"deleteZoneDesc": "Удалить {domain}? Домены под ним должны быть сначала отвязаны от маршрутов. Это невозможно отменить.",
"deleting": "Удаление…",
"confirmDelete": "Удалить",
"zoneDeleted": "Зона удалена",
"editZone": "Редактировать зону",
"editorDesc": "Зона принимает только регистрируемый корневой домен, например example.com.",
"rootRequired": "Введите корневой домен зоны",
"rootInvalid": "Введите корневой домен без протокола или подстановочного знака.",
"zoneUpdated": "Зона обновлена",
"zoneCreated": "Зона создана",
"saveFailed": "Сохранить не удалось",
"saveChanges": "Сохранить изменения",
"range24h": "24 часа",
"range7d": "7 дней",
"range30d": "30 дней",
"chartUv": "Ведро UV",
"chartBytes": "Данные переданы",
"statsFailed": "Не удалось загрузить статистику трафика.",
"analyticsUnavailable": "Хранилище аналитики недоступно, поэтому диаграммы могут быть пустыми. Убедитесь, что ClickHouse включен.",
"uniqueVisitors": "Уникальные посетители в окне запроса",
"uniqueVisitorsDesc": "Верхняя сумма дедуплицируется по всему окну; кривая равна UV для каждого сегмента времени, и сегменты не могут быть сложены вместе",
"totalRequests": "Всего запросов",
"totalBytes": "Всего передано данных",
"zoneInfo": "Информация о зоне",
"addDomain": "Добавить домен",
"emptyDomains": "Домены еще не добавлены",
"certificate": "Сертификат",
"upstream": "Сервер-источник",
"certNumber": "Сертификат №{id}",
"unbound": "Несвязанный",
"unlinkedRoute": "Нет связанного маршрута",
"loadingEllipsis": "Загрузка…",
"upstreamUnset": "Восходящий поток не настроен",
"viewRoute": "Посмотреть детали маршрута",
"deleteDomain": "Удалить домен",
"domainDeleted": "Домен удален",
"deleteFailed": "Удаление не удалось",
"deleteDomainTitle": "Удалить домен",
"deleteDomainDesc": "Удалить {domain}? Это невозможно отменить.",
"zoneCertsTitle": "Сертификаты, используемые этой зоной",
"zoneCertsDesc": "Сертификаты управляются в глобальной библиотеке сертификатов. В этом списке показаны только сертификаты, привязанные к доменам в этой зоне.",
"certLibrary": "Библиотека сертификатов",
"unboundCertHint": "Доменов без сертификата: {count}. Выберите сертификат на вкладке «Домены».",
"emptyBoundCerts": "Никаких связанных сертификатов. Выберите сертификат в строке домена или импортируйте/примените его в библиотеке сертификатов.",
"status": "Статус",
"coverage": "Охватываемые домены",
"expiresAt": "Срок действия истекает",
"selectZone": "Сначала выберите зону",
"enterDomain": "Введите домен",
"noWildcard": "Допустим только один символ * как крайняя левая метка, например *.example.com",
"invalidFormat": "Неверный формат домена",
"invalidSubdomain": "Неверный формат имени субдомена",
"mustBelongToZone": "Домен должен принадлежать зоне {root}",
"domainAdded": "Домен добавлен",
"addFailed": "Добавить не удалось",
"quickCreateTitle": "Быстрое добавление домена",
"quickCreateDesc": "После выбора зоны введите имя субдомена (например, API), @ (корневой) или полное FQDN.",
"selectRegisteredRoot": "Выберите зарегистрированный корневой домен",
"zoneLabel": "Зона:",
"domain": "Домен",
"domainPlaceholderWithZone": "API или @ или API.{domain}",
"domainPlaceholder": "API/@/полный домен",
"willCreate": "Создаст:",
"domainExample": "Пример: введите api → api.zone.com; @ → сам корень",
"certOptional": "Сертификат (необязательно)",
"noCert": "Нет сертификата"
},
"certificates": {
"title": "Сертификаты",
"refresh": "Обновить сертификаты",
"importCert": "Импортный сертификат",
"applyTitle": "Подать заявку на сертификат",
"listTitle": "Список сертификатов",
"listDesc": "Показывает срок действия сертификата, примечания и статус. Вы можете просмотреть подробную информацию, отредактировать содержимое или удалить сертификаты.",
"loadingList": "Загрузка списка сертификатов...",
"requestFailed": "Запрос не выполнен. Пожалуйста, повторите попытку позже.",
"emptyList": "Сертификатов пока нет. Нажмите «Импортировать сертификат» или «Подать заявку на сертификат» в правом верхнем углу, чтобы начать.",
"notBeforeLabel": "Действительно с: {value}",
"notAfterLabel": "Срок действия истекает: {value}",
"sourceLabel": "Источник: {value}",
"sourceAcme": "Выпущен через ACME",
"sourceUpload": "Загрузка вручную",
"statusLabel": "Статус: {value}",
"converting": "Выполняется конвертация...",
"applying": "Применение...",
"statusError": "Статус: {value} ({message})",
"convertFailed": "Преобразование не удалось",
"applyFailed": "Не удалось выпустить сертификат",
"remarkLabel": "Примечание: {value}",
"noRemark": "Нет примечания",
"view": "Посмотреть",
"edit": "Изменить",
"renew": "Продлить",
"deleted": "Сертификат удален.",
"renewSubmitted": "Задача продления отправлена на сертификат {name}",
"imported": "Сертификат {name} импортирован.",
"applySubmitted": "Задача заявки отправлена на сертификат {name}",
"convertSubmitted": "Заявка на конвертацию подана для получения сертификата {name}",
"reapplySubmitted": "Сертификат {name} обновлен и применяется повторно...",
"updated": "Сертификат {name} обновлен.",
"deleteTitle": "Удалить сертификат",
"deleteDesc": "Удалить сертификат {name}?",
"applyEditTitle": "Изменить и повторно применить сертификат",
"applyConvertTitle": "Перевыпустить сертификат через ACME",
"applyEditDesc": "Измените настройки сертификата ACME. После сохранения сертификат будет повторно применен с новыми настройками.",
"applyConvertDesc": "Укажите параметры выпуска через ACME. После успешного выпуска текущий сертификат будет заменён на сертификат с автоматическим продлением.",
"applyDesc": "Используйте ACME (Let's Encrypt и другие), чтобы автоматически подавать заявки на получение и продление сертификатов, включая домены с подстановочными знаками.",
"name": "Название сертификата",
"namePlaceholder": "Например: сертификат основного сайта.",
"primaryDomain": "Основной домен",
"primaryDomainPlaceholder": "example.com или *.example.com",
"otherDomains": "Другие домены",
"otherDomainsHint": "Один домен на строку. Для сертификата с подстановочным знаком также введите соответствующий корневой домен, чтобы его можно было выдать вместе.",
"dnsAccount": "DNS аккаунт провайдера",
"selectDnsAccount": "Выберите учетную запись DNS.",
"keyAlgorithm": "Ключевой алгоритм",
"remark": "Примечание",
"remarkPlaceholder": "Необязательно. Запишите, для чего используется этот сертификат.",
"autoRenew": "Включить автоматическое продление",
"autoRenewDesc": "Если эта опция включена, сертификат продлевается автоматически за 7 дней до истечения срока его действия.",
"advanced": "Расширенные параметры",
"dnsServer1": "DNS сервер проверки 1",
"dnsServer2": "DNS сервер проверки 2",
"dnsServerPlaceholder": "Оставьте пустым, чтобы использовать авторитетное значение по умолчанию DNS",
"skipCname": "Пропустить проверку CNAME",
"skipCnameDesc": "Не следуйте записям CNAME во время проверки DNS-01.",
"skipDns": "Пропустить предварительную проверку DNS",
"skipDnsDesc": "Попросите Let’s Encrypt проверить напрямую, без локальной проверки.",
"submitting": "Отправка...",
"saveAndApply": "Сохраните и примените",
"startConvert": "Начать преобразование",
"startApply": "Выпустить сертификат",
"editTitle": "Изменить сертификат",
"editDesc": "Вы можете изменить имя и примечание сертификата, а также повторно загрузить сертификат PEM и закрытый ключ.",
"loadingContent": "Загрузка содержимого сертификата...",
"notFound": "Сертификат не найден. Возможно, оно было удалено.",
"certPem": "Сертификат PEM",
"keyPem": "Закрытый ключ PEM",
"convertSource": "Преобразовать источник",
"saving": "Сохранение...",
"saveCert": "Сохранить сертификат",
"importTitle": "Добавить сертификат",
"importDesc": "Вставьте PEM вручную или загрузите файлы сертификатов. После импорта его можно сразу выбрать в формах сайта.",
"manualImport": "Ручной импорт",
"fileImport": "Импорт файла",
"remarkProdPlaceholder": "Например: производственный сертификат для основного объекта.",
"importing": "Импорт...",
"remarkWildcardPlaceholder": "Например: производственный сертификат с подстановочным знаком.",
"certFile": "Файл сертификата",
"keyFile": "Файл закрытого ключа",
"fileSelected": "Выбрано: {name}",
"selectCertFile": "Выберите файл PEM/CRT.",
"selectKeyFile": "Выберите файл KEY/PEM.",
"uploading": "Загрузка...",
"uploadFiles": "Загрузить файлы",
"clearFiles": "Очистить файлы",
"selectFiles": "Выберите файл сертификата и файл закрытого ключа.",
"detailTitle": "Детали сертификата",
"detailDesc": "Просмотр метаданных сертификата, примечаний и текущего сохраненного содержимого PEM.",
"loadingDetail": "Загрузка сведений о сертификате...",
"status": "Статус",
"notBefore": "Действительно с",
"notAfter": "Срок действия истекает",
"certPemCopied": "Сертификат PEM скопирован.",
"keyPemCopied": "Закрытый ключ PEM скопирован.",
"copy": "Копировать",
"close": "Закрыть",
"editCert": "Изменить сертификат",
"deleting": "Удаление...",
"deleteCert": "Удалить сертификат",
"certStatus": {
"unknownExpiry": "Срок действия неизвестен",
"expired": "Срок действия истек",
"expiresInDays": "Срок действия истекает через {days, plural, one {# день} few {# дня} many {# дней} other {# дня}}.",
"valid": "Действителен"
},
"validation": {
"nameRequired": "Введите имя сертификата",
"nameTooLong": "Имя сертификата не может превышать 255 символов.",
"certPemRequired": "Введите сертификат PEM",
"keyPemRequired": "Введите закрытый ключ PEM",
"remarkTooLong": "Примечание не может превышать 255 символов.",
"primaryDomainRequired": "Введите основной домен",
"dnsAccountRequired": "Выберите учетную запись DNS."
}
},
"dnsAccounts": {
"title": "DNS аккаунтов",
"addAccount": "Добавить аккаунт",
"listTitle": "DNS список аккаунтов",
"listDesc": "Централизованно управляйте учетными записями поставщиков DNS, используемыми для проверки сертификата DNS ACME.",
"loadingList": "Загрузка DNS аккаунтов...",
"requestFailed": "Запрос не выполнен. Пожалуйста, повторите попытку позже.",
"emptyList": "Аккаунтов DNS пока нет. Нажмите «Добавить учетную запись» в правом верхнем углу, чтобы начать.",
"createdAt": "Создано: {date}",
"created": "DNS аккаунт добавлен",
"deleted": "DNS аккаунт удален",
"deleteTitle": "Удалить учетную запись DNS",
"deleteDesc": "Удалить учетную запись DNS {name}?",
"createTitle": "Добавить аккаунт DNS",
"createDesc": "Централизованно управляйте учетными записями поставщиков DNS, используемыми для проверки сертификата DNS ACME.",
"accountName": "Имя учетной записи",
"accountNamePlaceholder": "Cloudflare адрес электронной почты",
"provider": "DNS провайдер",
"tokenPlaceholder": "Не используйте глобальный ключ API.",
"nameRequired": "Введите имя",
"tokenRequired": "Введите токен",
"submitting": "Отправка...",
"submit": "Отправить"
},
"origins": {
"title": "Серверы-источники",
"subtitle": "Общий каталог серверов-источников для маршрутов. Измените адрес один раз для всех связанных маршрутов.",
"refresh": "Обновить",
"create": "Добавить сервер-источник",
"loadFailed": "Загрузка не удалась",
"emptyTitle": "Нет серверов-источников",
"emptyDesc": "Добавьте сервер-источник, чтобы использовать его адрес в маршрутах.",
"routeCount": "Маршрутов: {count}",
"noRemark": "Нет примечания",
"lastUpdated": "Последнее обновление: {date}",
"detail": "Подробности",
"edit": "Изменить",
"deleted": "Сервер-источник удалён",
"deleteFailed": "Удаление не удалось",
"deleteTitle": "Удалить сервер-источник",
"deleteDesc": "Удалить сервер-источник «{name}»?",
"confirmDelete": "Удалить",
"missingId": "Не указан корректный ID сервера-источника.",
"loadingDetail": "Загрузка сервера-источника…",
"backToList": "Вернуться к списку",
"notFound": "Сервер-источник не найден или уже удалён.",
"editOrigin": "Изменить сервер-источник",
"deleteOrigin": "Удалить сервер-источник",
"boundRoutes": "Связанные маршруты",
"createdAt": "Создано",
"updatedAt": "Обновлено",
"remark": "Примечание",
"relatedRoutes": "Связанные маршруты",
"relatedRoutesDesc": "Маршруты, использующие этот сервер-источник в качестве основного.",
"noRelatedRoutes": "Нет связанных маршрутов",
"noRelatedRoutesDesc": "Этот сервер-источник пока не используется ни в одном маршруте.",
"domain": "Домен",
"address": "Адрес сервера-источника",
"status": "Статус",
"enabled": "Включено",
"disabled": "Отключено",
"addressRequired": "Укажите адрес сервера-источника",
"addressInvalid": "Неверный формат адреса сервера-источника.",
"updated": "Сервер-источник обновлён",
"created": "Сервер-источник создан",
"saveFailed": "Сохранить не удалось",
"editorDesc": "Каталог адресов серверов-источников для повторного использования в маршрутах. Протокол и порт задаются в самом маршруте.",
"name": "Название сервера-источника",
"namePlaceholder": "Основной сервер-источник",
"saving": "Сохранение...",
"saveChanges": "Сохранить изменения"
},
"proxyRoutes": {
"title": "Маршруты прокси",
"refresh": "Обновить",
"createRule": "Новый маршрут",
"listTitle": "Список маршрутов",
"searchPlaceholder": "Поиск по сайтам, доменам или серверам-источникам…",
"emptyTitle": "Нет веб-сайтов",
"emptyDesc": "Сначала создайте веб-сайт, затем откройте страницу конфигурации, чтобы завершить настройку HTTPS, кэша и ограничений скорости.",
"noMatches": "Нет соответствующих результатов",
"noMatchesDesc": "Попробуйте другой поисковый запрос или очистите фильтр.",
"siteName": "Название сайта",
"domain": "Домен",
"status": "Статус",
"upstream": "Сервер-источник",
"actions": "Действия",
"enabled": "Включено",
"disabled": "Отключено",
"configure": "Настроить",
"siteCreated": "Сайт создан",
"siteDeleted": "Сайт удален",
"deleteFailed": "Удаление не удалось",
"loadListFailed": "Не удалось загрузить список маршрутов.",
"unknownError": "Неизвестная ошибка",
"deleteSiteTitle": "Удалить сайт",
"deleteSiteDesc": "Удалить сайт {name}? При этом будут удалены все домены и настройки сайта.",
"deleting": "Удаление...",
"missingId": "Действительный маршрут ID отсутствует.",
"notFound": "Маршрут не найден",
"notFoundDesc": "Вернитесь к списку и повторите попытку.",
"saving": "Сохранение...",
"saveFailed": "Сохранить не удалось",
"requestFailed": "Запрос не выполнен. Пожалуйста, повторите попытку позже.",
"back": "Назад",
"publish": "Опубликовать конфигурацию",
"diffFailed": "Не удалось загрузить разницу конфигурации.",
"noPublishNeeded": "Текущая конфигурация соответствует активной версии. Нечего публиковать.",
"publishSuccess": "Опубликовано успешно",
"versionLabel": "Версия {version}",
"publishFailed": "Опубликовать не удалось",
"publishTitle": "Опубликовать конфигурацию",
"publishDesc": "Это создаст новую версию из ожидающей конфигурации и сделает ее активной. Затем узлы получат обновление.",
"confirmPublish": "Опубликовать",
"createDesc": "Выбирайте привязки из зарегистрированных доменов Зоны. После создания маршрута вы можете продолжить настройку кэша, ограничений скорости и других дополнительных параметров.",
"siteId": "Идентификатор сайта",
"siteIdOptionalDesc": "Необязательно. Если оставить пустым, автоматически будет использоваться первый домен.",
"siteIdStableDesc": "Используйте стабильный и читаемый бизнес-идентификатор. Он не обязательно должен точно совпадать с доменом.",
"bindDomains": "Связанные домены",
"bindDomainsHint": "Выберите зарегистрированные домены для привязки. Используйте «Быстрое добавление домена», чтобы создать FQDN под зоной и выбрать его автоматически.",
"upstreamType": "Исходный режим",
"upstreamDirect": "Прямое подключение к серверу-источнику",
"upstreamTunnel": "Туннель",
"upstreamPages": "Страницы статического сайта",
"upstreamAddresses": "Восходящие адреса",
"upstreamUrlsHint": "Полный URL на каждой строке. Первая строка — основной сервер-источник. Для нескольких серверов используйте один протокол, без пути и параметров запроса.",
"selectTunnel": "Выберите туннель",
"pleaseSelect": "Пожалуйста, выберите...",
"online": "Онлайн",
"offline": "Оффлайн",
"tunnelForwardHint": "Пересылать запросы на клиентский узел, подключенный этим туннелем.",
"tunnelProtocol": "Внутренний протокол обслуживания",
"tunnelAddress": "Адрес внутреннего сервиса",
"tunnelAddressHint": "Например: 127.0.0.1:8080 или 192.168.1.10:80.",
"selectPagesProject": "Выберите проект Pages",
"pagesProjectHint": "Показаны только включенные проекты Pages с активным развертыванием.",
"enableSite": "Включить сайт",
"enableSiteDesc": "Если этот параметр отключен, конфигурация сохраняется, но не включается в публикацию.",
"createFailed": "Создать не удалось. Пожалуйста, повторите попытку позже.",
"creating": "Создание…",
"create": "Создать",
"searchDomainOrZone": "Поиск домена или зоны…",
"quickAddDomain": "Быстрое добавление домена",
"noZoneDomains": "Нет доступных доменов зоны. Сначала добавьте FQDN в Управление веб-сайтами или используйте «Быстрое добавление домена».",
"noBindableDomains": "Нет привязываемых доменов (остальные уже привязаны к другим маршрутам). Используйте «Быстрое добавление домена», чтобы создать его.",
"noMatchingDomains": "Нет подходящих доменов",
"certNumber": "Сертификат №{id}",
"noCert": "Нет сертификата",
"zoneName": "Зона {name}",
"zoneId": "Зона №{id}",
"unboundDomain": "Нет привязки к домену",
"pagesProjectId": "Проект страниц №{id}",
"pagesUnbound": "Проект страниц не связан",
"tunnelTargetUnset": "Цель не настроена",
"upstreamUnset": "Восходящий поток не настроен",
"domainSettings": "Настройки домена",
"domainSettingsDesc": "Привяжите полные доменные имена, уже зарегистрированные в зоне. Поддерживать сертификаты в управлении доменами зоны.",
"redirectNeedsCert": "Привяжите сертификат к выбранным доменам (в Зоне) перед включением перенаправления HTTP.",
"domainSettingsSaved": "Настройки домена сохранены.",
"redirectHttp": "Автоматически перенаправить HTTP на HTTPS",
"redirectHttpEnabledHint": "Если этот параметр включен, генерируются дополнительные правила перенаправления порта 80.",
"redirectHttpNeedsCert": "Прежде чем эту функцию можно будет включить, хотя бы один выбранный домен должен иметь привязанный сертификат.",
"reverseProxy": "Обратный прокси",
"reverseProxyDesc": "Настройте адреса серверов-источников и стратегию выбора сервера.",
"enableHttp2": "Включить HTTP/2",
"enableHttp2Desc": "Включено по умолчанию. Если этот параметр отключен, трафик HTTPS не будет использовать HTTP/2.",
"proxySaved": "Настройки обратного прокси сохранены.",
"originHostHint": "Если оставить пустым, запрос имени хоста $host передается по умолчанию.",
"customHeaders": "Пользовательские заголовки запросов",
"customHeadersHint": "По одному на строку в формате Ключ: Значение.",
"limits": "Ограничения трафика",
"limitsDesc": "Лимиты запросов для сайта. Пустое значение или 0 — глобальные настройки; -1 — отключено; положительное значение — собственный лимит.",
"limitsSaved": "Лимиты трафика сохранены",
"connLimit": "Предел параллелизма",
"connLimitHint": "Пусто или 0 наследует глобальное значение по умолчанию; -1 выключает его; Значение больше 0 — это пользовательское ограничение параллелизма.",
"ipLimit": "Лимит на IP",
"ipLimitHint": "Пусто или 0 наследует глобальное значение по умолчанию; -1 выключает его; Значение больше 0 — это индивидуальное ограничение на IP.",
"rateLimit": "Ограничение скорости",
"rateLimitPlaceholder": "512k/1m или -1",
"rateLimitHint": "Пусто или 0 наследует глобальное значение по умолчанию; -1 выключает его; например, 512k или 1m — это пользовательская полоса пропускания.",
"reqLimit": "Скорость запроса на IP",
"reqLimitPlaceholder": "10r/s / 100r/m или -1",
"reqLimitHint": "Пустое значение или 0 — глобальные настройки; -1 — отключено; например, 10r/s или 100r/m задаёт собственную частоту запросов.",
"cache": "Кэш",
"cacheDesc": "Настройте политику пограничного кэша сайта.",
"cacheSaved": "Настройки кэша сохранены.",
"enableCache": "Включить кэш сайта",
"enableCacheDesc": "Новые сайты должны использовать «Стандартные статические ресурсы».",
"cachePolicy": "Политика кэширования",
"policyStatic": "Стандартные статические ресурсы (рекомендуется)",
"policyAll": "Все кэшируемое GET (дополнительно)",
"policySuffix": "Пользовательский суффикс",
"policyPrefix": "Префикс пути",
"policyExact": "Точный путь",
"advancedRiskTitle": "Расширенный политический риск",
"advancedRiskDesc": "Персонализированный HTML может быть кэширован на периферии и передан другим пользователям, если источник не заявляет о приватности/отсутствии хранилища. Подробности смотрите в справке рядом с заголовком.",
"cacheRules": "Правила кэширования",
"cacheHelpTitle": "Примечания по использованию кэша",
"cacheHelpIntro": "Расширение/политика решает, можно ли кэшировать ответ. Заголовки источника и Set-Cookie решают, будет ли он сохранен. Также необходимо включить глобальный кэш OpenResty в настройках производительности.",
"cacheHelpRecommendLabel": "Рекомендуемая политика:",
"cacheHelpRecommend": "Новые сайты должны использовать «Стандартные статические ресурсы» (включая css/js/map/images/fonts/media, исключая HTML/JSON).",
"cacheHelpGeneralLabel": "Общие правила:",
"cacheHelpGeneral": "Номера, отличные от GET, не кэшируются; файлы cookie входа не пропускают кэш самостоятельно; origin Private/no-store или ответ Set-Cookie не записывается на край.",
"cacheHelpAllGetLabel": "Все кэшируемое GET:",
"cacheHelpAllGet": "Расширенный вариант, аналогичный «Кэшировать все». Персонализированные страницы должны быть объявлены источником как частные/не храниться, иначе HTML может быть кэшировано в Edge и предоставлено другим пользователям.",
"cacheHelpCustomLabel": "Пользовательские правила:",
"cacheHelpCustom": "Используйте суффиксы, такие как jpg/css/js; префиксы путей, такие как /assets; точные пути, такие как /robots.txt. После сохранения повторно опубликуйте версию конфигурации, прежде чем она вступит в силу на узлах.",
"cacheHintSuffix": "По одному суффиксу в строке, например jpg, css, js.",
"cacheHintPrefix": "Один префикс пути в каждой строке, например /assets, /static.",
"cacheHintExact": "Один точный путь в каждой строке, например /robots.txt.",
"cacheHintStatic": "Стандартные статические ресурсы используют встроенный список расширений. Никаких дополнительных правил не требуется.",
"cacheHintNone": "Текущая политика не требует дополнительных правил пути.",
"cachePlaceholderNone": "Никаких дополнительных правил для текущей политики.",
"auth": "Аутентификация",
"authDesc": "Настройте Basic Auth, чтобы ограничить доступ. Защита PoW настраивается в группе правил WAF.",
"authSaved": "Настройки аутентификации сохранены.",
"authFormInvalid": "Проверьте форму аутентификации",
"authMode": "Режим аутентификации",
"authNone": "Нет аутентификации",
"powHint": "Защиту PoW можно включить только в группе правил WAF и привязать к сайту.",
"username": "Имя пользователя",
"password": "Пароль",
"wafDesc": "Глобальные группы правил применяются всегда. Здесь вы можете добавить собственные группы правил для текущего сайта.",
"wafUpdated": "WAF группы правил обновлены",
"loadingWaf": "Загрузка групп правил WAF...",
"alwaysOn": "Всегда включен",
"selectCustomRules": "Выберите специальные правила",
"selectCustomRulesDesc": "Выбранные правила выполняются в порядке выполнения, указанном ниже.",
"selectRule": "Выберите {name}",
"ruleEnabled": "Включено",
"ruleDisabled": "Отключено",
"nodeCount": "Узлов: {count}",
"executionOrder": "Порядок выполнения",
"executionOrderDesc": "Пользовательские правила выполняются в этом порядке. Перетащите их или используйте кнопки вверх/вниз, чтобы изменить порядок.",
"noCustomWaf": "Нет пользовательских групп правил WAF.",
"dragRule": "Перетащите {name}",
"moveUpRule": "Переместить {name} вверх.",
"moveDownRule": "Переместите {name} вниз.",
"sections": {
"domains": "Настройки домена",
"domainsDesc": "Сохраняйте идентификатор сайта и выбирайте привязанные домены из зоны.",
"limits": "Ограничения трафика",
"limitsDesc": "Установите ограничения на соединения и ограничения скорости (можно наследовать глобальные значения по умолчанию).",
"proxy": "Обратный прокси",
"proxyDesc": "Настройте основной сервер-источник и дополнительные адреса.",
"cache": "Кэш",
"cacheDesc": "Настройте политику кэширования сайта.",
"waf": "WAF",
"wafDesc": "Свяжите группы правил WAF и просмотрите политики, применимые к этому сайту.",
"auth": "Аутентификация",
"authDesc": "Настройте базовую аутентификацию, чтобы посетители должны были вводить имя пользователя и пароль."
},
"validation": {
"enterDomain": "Введите домен",
"invalidDomain": "Неверный формат домена",
"enterAtLeastOneDomain": "Введите хотя бы один домен",
"invalidDomainWithValue": "Неверный формат домена: {domain}",
"duplicateDomain": "Дубликат домена: {domain}",
"enterAtLeastOneUpstream": "Укажите хотя бы один адрес сервера-источника",
"invalidUpstream": "Неверный формат адреса сервера-источника: {url}",
"upstreamMustBeHttp": "Адрес сервера-источника должен начинаться с http:// или https://: {url}",
"upstreamMissingHost": "В адресе сервера-источника не указано имя хоста: {url}",
"multiUpstreamNoPath": "При использовании нескольких серверов-источников адреса не должны содержать путь или параметры запроса.",
"multiUpstreamSameProtocol": "Все серверы-источники одного сайта должны использовать одинаковый протокол.",
"invalidOriginHost": "Неверный исходный формат хоста",
"invalidHeader": "Неверный формат заголовка пользовательского запроса: {line}",
"invalidHeaderName": "Недопустимое имя заголовка пользовательского запроса: {key}",
"invalidLimitRate": "Неверный формат ограничения скорости. Используйте 512k, 1m, число или -1, чтобы отключить его.",
"invalidLimitReq": "Неверный формат частоты запросов. Используйте 10r/s, 100r/m или -1 для отключения.",
"cacheRuleRequired": "Для текущей политики кэширования требуется хотя бы одно правило.",
"invalidCacheSuffix": "Неверный формат суффикса кэша: {rule}",
"invalidCachePath": "Неверный формат правила пути к кэшу: {rule}",
"siteNameTooLong": "Идентификатор сайта не может превышать 255 символов.",
"selectAtLeastOneDomain": "Выберите хотя бы один домен",
"selectTunnel": "Выберите туннель",
"enterTunnelTarget": "Введите внутренний адрес службы (например, 127.0.0.1:8080).",
"selectPagesProject": "Выберите проект Pages",
"enterSiteId": "Введите идентификатор сайта",
"enterIntegerOrMinusOne": "Введите -1, 0 или целое положительное число.",
"enterUsername": "Введите имя пользователя",
"enterPassword": "Введите пароль"
}
},
"responses": {
"title": "Страницы ответов",
"subtitle": "Настройте страницы ошибок сервера-источника и страницы для работы без сети.",
"loadingPermission": "Загрузка информации о разрешении...",
"loadingConfig": "Загрузка настроек страницы ответов...",
"loadingPage": "Загрузка страниц ответов...",
"loadingErrorConfig": "Загрузка настроек страницы ошибки...",
"loadingOfflineConfig": "Загрузка настроек офлайн-страницы...",
"loadFailed": "Загрузка не удалась",
"forbidden": "Недостаточное разрешение",
"forbiddenSettings": "Доступ к настройкам страницы ответов имеют только администраторы.",
"forbiddenPreviewError": "Только администраторы могут просматривать страницу ошибки.",
"forbiddenPreviewOffline": "Только администраторы могут просматривать автономную страницу.",
"forbiddenEditError": "Только администраторы могут редактировать страницу ошибки HTML.",
"forbiddenEditOffline": "Только администраторы могут редактировать автономную страницу HTML.",
"errorPage": "Страница ошибки",
"offlinePage": "Офлайн-страница",
"saveFailed": "Сохранить не удалось",
"policySaved": "Политика триггера сохранена. Опубликуйте версию, чтобы конфигурация вступила в силу.",
"triggerPolicy": "Триггерная политика",
"triggerPolicyDesc": "Настройте, когда страница исходной ошибки включена и какие коды состояния ее запускают.",
"enableErrorPage": "Показывать страницу ошибки сервера-источника",
"enableErrorPageDesc": "Если этот параметр отключен, передается исходный ответ или ответ об ошибке Nginx по умолчанию.",
"getOnly": "GET только запросы",
"getOnlyDesc": "Если этот параметр включен, пользовательская страница ошибок возвращается только для сопоставления кодов состояния ошибок по запросам GET.",
"statusCodes": "Коды состояния триггера",
"statusCodesDesc": "Поддерживает один код (например, 502) или закрытый диапазон (например, 500–599).",
"statusCodesPlaceholder": "Например 502 или 500-599, затем нажмите Enter.",
"pagePreview": "Предварительный просмотр страницы",
"preview": "Предпросмотр",
"edit": "Изменить",
"errorPagePreview": "Предпросмотр страницы ошибки сервера-источника",
"errorPreview": "Предварительный просмотр страницы ошибки",
"offlinePreview": "Предварительный просмотр страницы в автономном режиме",
"offlinePageDesc": "Если этот параметр включен, Service Worker выдается веб-сайтам HTTPS. Если домен недоступен, браузер отображает эту автономную страницу из кэша.",
"offlineSaved": "Офлайн-страница сохранена. Опубликуйте версию, чтобы конфигурация вступила в силу.",
"enableOffline": "Включить автономную страницу Service Worker",
"enableOfflineDesc": "Вступает в силу только на веб-сайтах HTTPS.",
"enableOfflineAria": "Включить автономную страницу",
"scope": "Область применения",
"scopeDesc": "Применяется только к выбранным доменам HTTPS. Если пусто, ничего не вводится.",
"addDomain": "Добавить домен",
"noScopeSelected": "Домены области действия не выбраны. После сохранения ни на один сайт ничего не внедряется.",
"enableThenSelectScope": "Включите резервный режим автономного режима перед выбором доменов области.",
"removeDomain": "Удалить {domain}",
"selectScopeTitle": "Выберите домены области действия",
"selectScopeDesc": "Внедрите резервный вариант автономного режима только для выбранных доменов HTTPS. Поиск, фильтрация и массовый выбор.",
"domain": "Домен",
"searchDomainOrZone": "Поиск домена или апекса…",
"selectedCount": "Выбрано: {count}",
"visibleCount": "Показано: {count}",
"unselectVisible": "Снять выбор с видимых доменов",
"selectVisible": "Выбрать видимый",
"clear": "Очистить",
"noAvailableDomains": "Нет доступных доменов. Сначала зарегистрируйте домены в разделе «Управление зонами».",
"noMatchingDomains": "Нет подходящих доменов",
"selectZone": "Выберите вершину {domain}",
"apex": "Апекс",
"confirm": "OK",
"backToError": "Вернуться на страницу ошибки",
"backToOffline": "Вернуться на офлайн-страницу",
"closePreview": "Закрыть предварительный просмотр",
"fullscreen": "Полноэкранный просмотр",
"htmlTooLarge": "HTML превышает ограничение размера (максимум 256 КБ)",
"errorHtmlSaved": "Страница исходной ошибки HTML сохранена. Опубликуйте версию, чтобы конфигурация вступила в силу.",
"offlineHtmlSaved": "Офлайн-страница HTML сохранена. Опубликуйте версию, чтобы конфигурация вступила в силу.",
"templateNotFound": "Выбранный шаблон не найден",
"templateLoaded": "Загрузил шаблон «{name}» в редактор.",
"errorRestored": "Снято для использования встроенного шаблона сервера по умолчанию (сохраните, чтобы применить).",
"offlineRestored": "Снято для использования встроенного шаблона по умолчанию (сохраните, чтобы применить)",
"editErrorHtml": "Изменить страницу ошибки HTML",
"editOfflineHtml": "Редактировать офлайн-страницу HTML",
"offlineLivePreview": "Предварительный просмотр оффлайн-страницы",
"builtinTemplates": "Встроенные шаблоны",
"selectTemplate": "Выберите шаблон",
"loadTemplate": "Загрузить шаблон",
"restoreDefault": "Восстановить настройки по умолчанию",
"restoreTitle": "Восстановить значение по умолчанию HTML?",
"restoreErrorDesc": "Это очищает редактор. После сохранения используется встроенный шаблон сервера по умолчанию. Это действие не сохраняется автоматически.",
"restoreOfflineDesc": "Это очищает редактор. После сохранения используется встроенный шаблон по умолчанию. Это действие не сохраняется автоматически.",
"confirmRestore": "Восстановить"
}
}