diff --git a/api/cluster/websocket.go b/api/cluster/websocket.go index 1a87f02b..5a44b0d4 100644 --- a/api/cluster/websocket.go +++ b/api/cluster/websocket.go @@ -28,7 +28,6 @@ type Client struct { send chan WebSocketMessage ctx context.Context cancel context.CancelFunc - mutex sync.RWMutex } // Hub maintains the set of active clients and broadcasts messages to them @@ -281,13 +280,17 @@ func (c *Client) readPump() { return nil }) - for { - _, _, err := c.conn.ReadMessage() - if err != nil { - if websocket.IsUnexpectedCloseError(err, websocket.CloseGoingAway, websocket.CloseAbnormalClosure) { - logger.Error("Websocket error:", err) + go func() { + for { + _, _, err := c.conn.ReadMessage() + if err != nil { + if websocket.IsUnexpectedCloseError(err, websocket.CloseGoingAway, websocket.CloseAbnormalClosure) { + logger.Error("Websocket error:", err) + } + break } - break } - } + }() + + <-c.ctx.Done() } diff --git a/app/src/components/Notification/notifications.ts b/app/src/components/Notification/notifications.ts index 30fc868e..1fed6f3e 100644 --- a/app/src/components/Notification/notifications.ts +++ b/app/src/components/Notification/notifications.ts @@ -3,6 +3,196 @@ /* eslint-disable ts/no-explicit-any */ const notifications: Record string, content: (args: any) => string }> = { + + // general module notifications + 'Reload Remote Nginx Error': { + title: () => $gettext('Reload Remote Nginx Error'), + content: (args: any) => $gettext('Reload Nginx on %{node} failed, response: %{resp}', args, true), + }, + 'Reload Remote Nginx Success': { + title: () => $gettext('Reload Remote Nginx Success'), + content: (args: any) => $gettext('Reload Nginx on %{node} successfully', args, true), + }, + 'Restart Remote Nginx Error': { + title: () => $gettext('Restart Remote Nginx Error'), + content: (args: any) => $gettext('Restart Nginx on %{node} failed, response: %{resp}', args, true), + }, + 'Restart Remote Nginx Success': { + title: () => $gettext('Restart Remote Nginx Success'), + content: (args: any) => $gettext('Restart Nginx on %{node} successfully', args, true), + }, + 'Auto Backup Configuration Error': { + title: () => $gettext('Auto Backup Configuration Error'), + content: (args: any) => $gettext('Storage configuration validation failed for backup task %{backup_name}, error: %{error}', args, true), + }, + 'Auto Backup Failed': { + title: () => $gettext('Auto Backup Failed'), + content: (args: any) => $gettext('Backup task %{backup_name} failed to execute, error: %{error}', args, true), + }, + 'Auto Backup Storage Failed': { + title: () => $gettext('Auto Backup Storage Failed'), + content: (args: any) => $gettext('Backup task %{backup_name} failed during storage upload, error: %{error}', args, true), + }, + 'Auto Backup Completed': { + title: () => $gettext('Auto Backup Completed'), + content: (args: any) => $gettext('Backup task %{backup_name} completed successfully, file: %{file_path}', args, true), + }, + 'Certificate Expired': { + title: () => $gettext('Certificate Expired'), + content: (args: any) => $gettext('Certificate %{name} has expired', args, true), + }, + 'Certificate Expiration Notice': { + title: () => $gettext('Certificate Expiration Notice'), + content: (args: any) => $gettext('Certificate %{name} will expire in %{days} days', args, true), + }, + 'Certificate Expiring Soon': { + title: () => $gettext('Certificate Expiring Soon'), + content: (args: any) => $gettext('Certificate %{name} will expire in %{days} days', args, true), + }, + 'Certificate Expiring Soon_1': { + title: () => $gettext('Certificate Expiring Soon'), + content: (args: any) => $gettext('Certificate %{name} will expire in %{days} days', args, true), + }, + 'Certificate Expiring Soon_2': { + title: () => $gettext('Certificate Expiring Soon'), + content: (args: any) => $gettext('Certificate %{name} will expire in 1 day', args, true), + }, + 'Sync Certificate Error': { + title: () => $gettext('Sync Certificate Error'), + content: (args: any) => $gettext('Sync Certificate %{cert_name} to %{env_name} failed', args, true), + }, + 'Sync Certificate Success': { + title: () => $gettext('Sync Certificate Success'), + content: (args: any) => $gettext('Sync Certificate %{cert_name} to %{env_name} successfully', args, true), + }, + 'Sync Config Error': { + title: () => $gettext('Sync Config Error'), + content: (args: any) => $gettext('Sync config %{config_name} to %{env_name} failed', args, true), + }, + 'Sync Config Success': { + title: () => $gettext('Sync Config Success'), + content: (args: any) => $gettext('Sync config %{config_name} to %{env_name} successfully', args, true), + }, + 'Rename Remote Config Error': { + title: () => $gettext('Rename Remote Config Error'), + content: (args: any) => $gettext('Rename %{orig_path} to %{new_path} on %{env_name} failed', args, true), + }, + 'Rename Remote Config Success': { + title: () => $gettext('Rename Remote Config Success'), + content: (args: any) => $gettext('Rename %{orig_path} to %{new_path} on %{env_name} successfully', args, true), + }, + 'Delete Remote Config Error': { + title: () => $gettext('Delete Remote Config Error'), + content: (args: any) => $gettext('Delete %{path} on %{env_name} failed', args, true), + }, + 'Delete Remote Config Success': { + title: () => $gettext('Delete Remote Config Success'), + content: (args: any) => $gettext('Delete %{path} on %{env_name} successfully', args, true), + }, + 'External Notification Test': { + title: () => $gettext('External Notification Test'), + content: (args: any) => $gettext('This is a test message sent at %{timestamp} from Nginx UI.', args, true), + }, + 'Delete Remote Site Error': { + title: () => $gettext('Delete Remote Site Error'), + content: (args: any) => $gettext('Delete site %{name} from %{node} failed', args, true), + }, + 'Delete Remote Site Success': { + title: () => $gettext('Delete Remote Site Success'), + content: (args: any) => $gettext('Delete site %{name} from %{node} successfully', args, true), + }, + 'Disable Remote Site Error': { + title: () => $gettext('Disable Remote Site Error'), + content: (args: any) => $gettext('Disable site %{name} from %{node} failed', args, true), + }, + 'Disable Remote Site Success': { + title: () => $gettext('Disable Remote Site Success'), + content: (args: any) => $gettext('Disable site %{name} from %{node} successfully', args, true), + }, + 'Enable Remote Site Error': { + title: () => $gettext('Enable Remote Site Error'), + content: (args: any) => $gettext('Enable site %{name} on %{node} failed', args, true), + }, + 'Enable Remote Site Success': { + title: () => $gettext('Enable Remote Site Success'), + content: (args: any) => $gettext('Enable site %{name} on %{node} successfully', args, true), + }, + 'Enable Remote Site Maintenance Error': { + title: () => $gettext('Enable Remote Site Maintenance Error'), + content: (args: any) => $gettext('Enable site %{name} maintenance on %{node} failed', args, true), + }, + 'Enable Remote Site Maintenance Success': { + title: () => $gettext('Enable Remote Site Maintenance Success'), + content: (args: any) => $gettext('Enable site %{name} maintenance on %{node} successfully', args, true), + }, + 'Disable Remote Site Maintenance Error': { + title: () => $gettext('Disable Remote Site Maintenance Error'), + content: (args: any) => $gettext('Disable site %{name} maintenance on %{node} failed', args, true), + }, + 'Disable Remote Site Maintenance Success': { + title: () => $gettext('Disable Remote Site Maintenance Success'), + content: (args: any) => $gettext('Disable site %{name} maintenance on %{node} successfully', args, true), + }, + 'Rename Remote Site Error': { + title: () => $gettext('Rename Remote Site Error'), + content: (args: any) => $gettext('Rename site %{name} to %{new_name} on %{node} failed', args, true), + }, + 'Rename Remote Site Success': { + title: () => $gettext('Rename Remote Site Success'), + content: (args: any) => $gettext('Rename site %{name} to %{new_name} on %{node} successfully', args, true), + }, + 'Save Remote Site Error': { + title: () => $gettext('Save Remote Site Error'), + content: (args: any) => $gettext('Save site %{name} to %{node} failed', args, true), + }, + 'Save Remote Site Success': { + title: () => $gettext('Save Remote Site Success'), + content: (args: any) => $gettext('Save site %{name} to %{node} successfully', args, true), + }, + 'Delete Remote Stream Error': { + title: () => $gettext('Delete Remote Stream Error'), + content: (args: any) => $gettext('Delete stream %{name} from %{node} failed', args, true), + }, + 'Delete Remote Stream Success': { + title: () => $gettext('Delete Remote Stream Success'), + content: (args: any) => $gettext('Delete stream %{name} from %{node} successfully', args, true), + }, + 'Disable Remote Stream Error': { + title: () => $gettext('Disable Remote Stream Error'), + content: (args: any) => $gettext('Disable stream %{name} from %{node} failed', args, true), + }, + 'Disable Remote Stream Success': { + title: () => $gettext('Disable Remote Stream Success'), + content: (args: any) => $gettext('Disable stream %{name} from %{node} successfully', args, true), + }, + 'Enable Remote Stream Error': { + title: () => $gettext('Enable Remote Stream Error'), + content: (args: any) => $gettext('Enable stream %{name} on %{node} failed', args, true), + }, + 'Enable Remote Stream Success': { + title: () => $gettext('Enable Remote Stream Success'), + content: (args: any) => $gettext('Enable stream %{name} on %{node} successfully', args, true), + }, + 'Rename Remote Stream Error': { + title: () => $gettext('Rename Remote Stream Error'), + content: (args: any) => $gettext('Rename stream %{name} to %{new_name} on %{node} failed', args, true), + }, + 'Rename Remote Stream Success': { + title: () => $gettext('Rename Remote Stream Success'), + content: (args: any) => $gettext('Rename stream %{name} to %{new_name} on %{node} successfully', args, true), + }, + 'Save Remote Stream Error': { + title: () => $gettext('Save Remote Stream Error'), + content: (args: any) => $gettext('Save stream %{name} to %{node} failed', args, true), + }, + 'Save Remote Stream Success': { + title: () => $gettext('Save Remote Stream Success'), + content: (args: any) => $gettext('Save stream %{name} to %{node} successfully', args, true), + }, + 'All Recovery Codes Have Been Used': { + title: () => $gettext('All Recovery Codes Have Been Used'), + content: (args: any) => $gettext('Please generate new recovery codes in the preferences immediately to prevent lockout.', args, true), + }, } export default notifications diff --git a/app/src/components/SelfCheck/SelfCheck.vue b/app/src/components/SelfCheck/SelfCheck.vue index 0daacf2b..68593497 100644 --- a/app/src/components/SelfCheck/SelfCheck.vue +++ b/app/src/components/SelfCheck/SelfCheck.vue @@ -8,7 +8,6 @@ const { data, loading, fixing } = storeToRefs(store) onMounted(() => { store.check() - // selfCheck.timeoutCheck().catch(console.error) }) diff --git a/app/src/components/SelfCheck/tasks/frontend/sse.ts b/app/src/components/SelfCheck/tasks/frontend/sse.ts deleted file mode 100644 index 0e044be7..00000000 --- a/app/src/components/SelfCheck/tasks/frontend/sse.ts +++ /dev/null @@ -1,57 +0,0 @@ -import type { FrontendTask } from '../types' -import type { ReportStatusType } from '@/api/self_check' -import { ReportStatus } from '@/api/self_check' -import { useSSE } from '@/composables/useSSE' - -/** - * SSE Task - * - * Checks if the application is able to connect to the backend through the Server-Sent Events protocol - */ -const SSETask: FrontendTask = { - key: 'sse', - name: () => 'SSE', - description: () => $gettext('Support communication with the backend through the Server-Sent Events protocol. ' - + 'If your Nginx UI is being used via an Nginx reverse proxy, ' - + 'please refer to this link to write the corresponding configuration file: ' - + 'https://nginxui.com/guide/nginx-proxy-example.html'), - check: async (): Promise => { - try { - const connected = await new Promise(resolve => { - const { connect, disconnect } = useSSE() - - // Use the connect method from useSSE - connect({ - url: '/api/self_check/sse', - onMessage: () => { - resolve(true) - }, - onError: () => { - resolve(false) - disconnect() - }, - reconnectInterval: 0, - }) - - // Set a timeout for the connection attempt - setTimeout(() => { - resolve(false) - disconnect() - }, 5000) - }) - - if (connected) { - return ReportStatus.Success - } - else { - return ReportStatus.Error - } - } - catch (error) { - console.error(error) - return ReportStatus.Error - } - }, -} - -export default SSETask diff --git a/app/src/language/ar/app.po b/app/src/language/ar/app.po index 2c3e4ea0..739c05ad 100644 --- a/app/src/language/ar/app.po +++ b/app/src/language/ar/app.po @@ -5,15 +5,102 @@ msgid "" msgstr "" "PO-Revision-Date: 2025-07-14 07:37+0000\n" "Last-Translator: mosaati \n" -"Language-Team: Arabic " -"\n" +"Language-Team: Arabic \n" "Language: ar\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" "X-Generator: Weblate 5.12.2\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] مستخدم ACME: %{name}، البريد الإلكتروني: %{email}، دليل CA: " +"%{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] يتم إنشاء نسخة احتياطية من الشهادة الحالية لإلغائها لاحقًا" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] تم تجديد الشهادة بنجاح" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] تم إلغاء الشهادة بنجاح" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "[Nginx UI] تم استخدام الشهادة للخادم، إعادة تحميل شهادة TLS للخادم" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] إنشاء عميل لتسهيل الاتصال مع خادم CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] تم تنظيف متغيرات البيئة" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] تم الانتهاء" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] تم إصدار الشهادة بنجاح" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] الحصول على الشهادة" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] التحضير لإلغاء الشهادة" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] إعداد تكوينات ليغو" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] إعادة تحميل nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] اكتمال الإلغاء" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] إلغاء الشهادة" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] إبطال الشهادة القديمة" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] تعيين موفر تحدي DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] تعيين متغيرات البيئة" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] تعيين موفر تحدي HTTP01" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] كتابة مفتاح الشهادة الخاص إلى القرص" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] كتابة الشهادة على القرص" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* يتضمن عقدًا من مجموعة %{groupName} وعقدًا مختارة يدويًا" @@ -145,6 +232,7 @@ msgstr "بعد ذلك، قم بتحديث هذه الصفحة وانقر على msgid "All" msgstr "الكل" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "تم استخدام جميع رموز الاسترداد" @@ -158,7 +246,8 @@ msgstr "" "الشهادة." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "يمكن استخدام أي عنوان IP قابل للوصول مع سلطات الشهادات الخاصة" #: src/views/preference/tabs/OpenAISettings.vue:32 @@ -255,7 +344,7 @@ msgstr "اطلب المساعدة من ChatGPT" msgid "Assistant" msgstr "المساعد" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "محاولة الإصلاح" @@ -294,6 +383,22 @@ msgstr "تلقائي = نوى المعالج" msgid "Auto Backup" msgstr "النسخ الاحتياطي التلقائي" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "اكتمل النسخ الاحتياطي التلقائي" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "خطأ في تكوين النسخ الاحتياطي التلقائي" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "فشل النسخ الاحتياطي التلقائي" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "فشل تخزين النسخ الاحتياطي التلقائي" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -389,6 +494,21 @@ msgstr "مسار النسخ الاحتياطي غير موجود في مسارا msgid "Backup Schedule" msgstr "جدول النسخ الاحتياطي" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"تم إنجاز مهمة النسخ الاحتياطي %{backup_name} بنجاح، الملف: %{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"فشلت مهمة النسخ الاحتياطي %{backup_name} أثناء تحميل التخزين، الخطأ: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "فشل تنفيذ مهمة النسخ الاحتياطي %{backup_name}، الخطأ: %{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "نوع النسخ الاحتياطي" @@ -462,7 +582,8 @@ msgstr "الذاكرة المؤقتة" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:178 msgid "Cache items not accessed within this time will be removed" -msgstr "سيتم إزالة عناصر الذاكرة المؤقتة التي لم يتم الوصول إليها خلال هذا الوقت" +msgstr "" +"سيتم إزالة عناصر الذاكرة المؤقتة التي لم يتم الوصول إليها خلال هذا الوقت" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:350 msgid "Cache loader processing time threshold" @@ -561,6 +682,20 @@ msgstr "مسار الشهادة ليس ضمن دليل تكوين Nginx" msgid "certificate" msgstr "شهادة" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "انتهت صلاحية الشهادة %{name}" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "ستنتهي صلاحية الشهادة %{name} خلال %{days} يومًا" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "ستنتهي صلاحية الشهادة %{name} خلال يوم واحد" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "محتوى الشهادة ومحتوى المفتاح الخاص لا يمكن أن يكونا فارغين" @@ -569,6 +704,20 @@ msgstr "محتوى الشهادة ومحتوى المفتاح الخاص لا ي msgid "Certificate decode error" msgstr "خطأ في فك تشفير الشهادة" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "إشعار انتهاء صلاحية الشهادة" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "انتهت صلاحية الشهادة" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "انتهاء صلاحية الشهادة قريبًا" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "تم تنزيل ملفات الشهادة بنجاح" @@ -577,6 +726,10 @@ msgstr "تم تنزيل ملفات الشهادة بنجاح" msgid "Certificate name cannot be empty" msgstr "اسم الشهادة لا يمكن أن يكون فارغًا" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "الشهادة غير موجودة: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "خطأ في تحليل الشهادة" @@ -598,6 +751,10 @@ msgstr "الفاصل الزمني لتجديد الشهادة" msgid "Certificate renewed successfully" msgstr "تم تجديد الشهادة بنجاح" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "تم إبطال الشهادة بنجاح" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -673,6 +830,27 @@ msgstr "تحقق" msgid "Check again" msgstr "تحقق مرة أخرى" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"تحقق مما إذا كان /var/run/docker.sock موجودًا. إذا كنت تستخدم صورة Docker " +"الرسمية لـ Nginx UI، يرجى التأكد من توصيل مقبس Docker بهذه الطريقة: `-v /var/" +"run/docker.sock:/var/run/docker.sock`. تستخدم صورة Nginx UI الرسمية /var/run/" +"docker.sock للتواصل مع محرك Docker المضيف عبر واجهة برمجة تطبيقات Docker " +"Client. تُستخدم هذه الميزة للتحكم في Nginx في حاوية أخرى وإجراء استبدال " +"الحاوية بدلاً من استبدال الثنائي أثناء التحديثات OTA لـ Nginx UI لضمان تحديث " +"تبعيات الحاوية أيضًا. إذا كنت لا تحتاج إلى هذه الميزة، يرجى إضافة متغير " +"البيئة NGINX_UI_IGNORE_DOCKER_SOCKET=true إلى الحاوية." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -681,6 +859,91 @@ msgstr "" "تحقق مما إذا كان HTTPS ممكّنًا. استخدام HTTP خارج localhost غير آمن ويمنع " "استخدام ميزات Passkeys والحافظة" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"تحقق مما إذا كان مسار سجل الوصول إلى nginx موجودًا. بشكل افتراضي، يتم الحصول " +"على هذا المسار من 'nginx -V'. إذا لم يتم الحصول عليه أو إذا كان المسار الذي " +"تم الحصول عليه لا يشير إلى ملف صالح موجود، فسيتم الإبلاغ عن خطأ. في هذه " +"الحالة، تحتاج إلى تعديل ملف التكوين لتحديد مسار سجل الوصول. راجع الوثائق " +"لمزيد من التفاصيل: https://nginxui.com/zh_CN/guide/config-nginx." +"html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "تحقق مما إذا كان دليل تكوين nginx موجودًا" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "تحقق مما إذا كان ملف إدخال تكوين nginx موجودًا" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"تحقق مما إذا كان مسار سجل أخطاء nginx موجودًا. بشكل افتراضي، يتم الحصول على " +"هذا المسار من 'nginx -V'. إذا تعذر الحصول عليه أو إذا كان المسار الذي تم " +"الحصول عليه لا يشير إلى ملف صالح موجود، فسيتم الإبلاغ عن خطأ. في هذه الحالة، " +"تحتاج إلى تعديل ملف التكوين لتحديد مسار سجل الأخطاء. راجع الوثائق لمزيد من " +"التفاصيل: https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"تحقق مما إذا كان مسار معرف عملية Nginx موجودًا. بشكل افتراضي، يتم الحصول على " +"هذا المسار من الأمر 'nginx -V'. إذا تعذر الحصول عليه، سيتم الإبلاغ عن خطأ. " +"في هذه الحالة، تحتاج إلى تعديل ملف التكوين لتحديد مسار معرف عملية Nginx. " +"راجع الوثائق لمزيد من التفاصيل: https://nginxui.com/zh_CN/guide/config-nginx." +"html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "تحقق مما إذا كان مسار sbin لـ nginx موجودًا" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "تحقق مما إذا كان ملف nginx.conf يتضمن دليل conf.d" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "تحقق مما إذا كان nginx.conf يتضمن دليل sites-enabled" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "تحقق مما إذا كان nginx.conf يتضمن دليل streams-enabled" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"تحقق مما إذا كانت الدلائل sites-available و sites-enabled موجودة ضمن دليل " +"تكوين nginx" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"تحقق مما إذا كانت الدلائل streams-available و streams-enabled موجودة ضمن " +"دليل تكوين nginx" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "النص المشفر قصير جدًا" @@ -1059,6 +1322,14 @@ msgstr "حدد اسم منطقة الذاكرة المشتركة والحجم، msgid "Delete" msgstr "حذف" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "فشل حذف %{path} على %{env_name}" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "تم حذف %{path} على %{env_name} بنجاح" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "حذف الشهادة" @@ -1071,18 +1342,51 @@ msgstr "تأكيد الحذف" msgid "Delete Permanently" msgstr "حذف نهائي" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "خطأ في حذف التكوين البعيد" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "نجاح حذف التكوين البعيد" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "خطأ حذف الموقع البعيد" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "نجح حذف الموقع البعيد" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "خطأ في حذف البث عن بُعد" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "نجاح حذف البث عن بُعد" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "فشل حذف الموقع %{name} من %{node}" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "تم حذف الموقع %{name} من %{node} بنجاح" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "حذف الموقع: ‎%{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "فشل حذف الدفق %{name} من %{node}" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "تم حذف الدفق %{name} من %{node} بنجاح" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "حذف البث: ‎%{stream_name}" @@ -1169,14 +1473,56 @@ msgstr "تعطيل" msgid "Disable auto-renewal failed for %{name}" msgstr "فشل تعطيل التجديد التلقائي لـ %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "خطأ تعطيل الموقع البعيد" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "خطأ في تعطيل صيانة الموقع البعيد" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "تعطيل صيانة الموقع البعيد بنجاح" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "تم تعطيل الموقع البعيد بنجاح" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "خطأ في تعطيل البث عن بُعد" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "تعطيل البث عن بُعد بنجاح" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "فشل تعطيل الموقع %{name} من %{node}" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "تم تعطيل الموقع %{name} من %{node} بنجاح" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "فشل تعطيل صيانة الموقع %{name} على %{node}" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "تم تعطيل صيانة الموقع %{name} على %{node} بنجاح" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "فشل تعطيل الدفق %{name} من %{node}" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "تم تعطيل الدفق %{name} من %{node} بنجاح" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1247,6 +1593,10 @@ msgstr "هل تريد إزالة هذا المصدر؟" msgid "Docker client not initialized" msgstr "عميل Docker غير مهيأ" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "مقبس Docker موجود" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "مقبس Docker غير موجود" @@ -1300,8 +1650,8 @@ msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." msgstr "" -"نظرًا لسياسات الأمان لبعض المتصفحات، لا يمكنك استخدام مفاتيح المرور على " -"مواقع الويب غير HTTPS، إلا عند التشغيل على localhost." +"نظرًا لسياسات الأمان لبعض المتصفحات، لا يمكنك استخدام مفاتيح المرور على مواقع " +"الويب غير HTTPS، إلا عند التشغيل على localhost." #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1400,14 +1750,56 @@ msgstr "تمكين HTTPS" msgid "Enable Proxy Cache" msgstr "تمكين ذاكرة التخزين المؤقت للوكيل" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "خطأ في تفعيل الموقع البعيد" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "خطأ في تمكين صيانة الموقع البعيد" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "تمكين صيانة الموقع البعيد بنجاح" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "نجح تفعيل الموقع البعيد" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "خطأ في تمكين البث عن بُعد" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "تمكين البث عن بُعد بنجاح" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "فشل تمكين الصيانة للموقع %{name} على %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "تم تمكين صيانة الموقع %{name} على %{node} بنجاح" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "فشل تمكين الموقع %{name} على %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "تم تمكين الموقع %{name} على %{node} بنجاح" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "فشل تمكين الدفق %{name} على %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "تم تمكين الدفق %{name} على %{node} بنجاح" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "تمكين وحدة stub_status" @@ -1544,15 +1936,15 @@ msgstr "تصدير إكسل" msgid "" "External Account Binding HMAC Key (optional). Should be in Base64 URL " "encoding format." -msgstr "مفتاح HMAC لربط الحساب الخارجي (اختياري). يجب أن يكون بتنسيق Base64 URL." +msgstr "" +"مفتاح HMAC لربط الحساب الخارجي (اختياري). يجب أن يكون بتنسيق Base64 URL." #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" -"معرف مفتاح الربط الحساب الخارجي (اختياري). مطلوب لبعض موفري ACME مثل " -"ZeroSSL." +"معرف مفتاح الربط الحساب الخارجي (اختياري). مطلوب لبعض موفري ACME مثل ZeroSSL." #: src/views/preference/tabs/NginxSettings.vue:49 msgid "External Docker Container" @@ -1562,6 +1954,10 @@ msgstr "حاوية Docker خارجية" msgid "External notification configuration not found" msgstr "لم يتم العثور على تكوين الإخطار الخارجي" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "اختبار الإشعار الخارجي" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1716,6 +2112,10 @@ msgstr "فشل فك تشفير دليل Nginx UI: {0}" msgid "Failed to delete certificate" msgstr "فشل في حذف الشهادة" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "فشل حذف الشهادة من قاعدة البيانات: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1882,6 +2282,10 @@ msgstr "فشل استعادة ملفات واجهة NGINX: {0}" msgid "Failed to revoke certificate" msgstr "فشل إبطال الشهادة" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "فشل إلغاء الشهادة: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "فشل حفظ إعدادات أداء Nginx" @@ -2003,11 +2407,11 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" -"بالنسبة للشهادات القائمة على IP، يرجى تحديد عنوان IP الخاص بالخادم الذي " -"سيتم تضمينه في الشهادة." +"بالنسبة للشهادات القائمة على IP، يرجى تحديد عنوان IP الخاص بالخادم الذي سيتم " +"تضمينه في الشهادة." #: src/constants/errors/middleware.ts:4 msgid "Form parse failed" @@ -2529,6 +2933,16 @@ msgstr "أماكن" msgid "Log" msgstr "سجل" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"ملف السجل %{log_path} ليس ملفًا عاديًا. إذا كنت تستخدم nginx-ui في حاوية " +"Docker، يرجى الرجوع إلى https://nginxui.com/zh_CN/guide/config-nginx-log." +"html لمزيد من المعلومات." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "قائمة السجلات" @@ -2551,19 +2965,19 @@ msgstr "تدوير السجلات" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "بشكل افتراضي، يتم تفعيل تدوير السجلات في معظم توزيعات لينكس الرئيسية " "للمستخدمين الذين يقومون بتثبيت واجهة Nginx UI على الجهاز المضيف، لذا لا " -"تحتاج إلى تعديل معايير في هذه الصفحة. بالنسبة للمستخدمين الذين يقومون " -"بتثبيت واجهة Nginx UI باستخدام حاويات Docker، يمكنك تمكين هذا الخيار " -"يدويًا. سيقوم مجدول المهام crontab الخاص بواجهة Nginx UI بتنفيذ أمر تدوير " -"السجلات في الفاصل الزمني الذي تحدده بالدقائق." +"تحتاج إلى تعديل معايير في هذه الصفحة. بالنسبة للمستخدمين الذين يقومون بتثبيت " +"واجهة Nginx UI باستخدام حاويات Docker، يمكنك تمكين هذا الخيار يدويًا. سيقوم " +"مجدول المهام crontab الخاص بواجهة Nginx UI بتنفيذ أمر تدوير السجلات في " +"الفاصل الزمني الذي تحدده بالدقائق." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2874,6 +3288,10 @@ msgstr "الناتج من Nginx -T فارغ" msgid "Nginx Access Log Path" msgstr "مسار سجل الوصول لـ Nginx" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "مسار سجل الوصول إلى Nginx موجود" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2903,6 +3321,14 @@ msgstr "تكوين Nginx لا يتضمن stream-enabled" msgid "Nginx config directory is not set" msgstr "لم يتم تعيين دليل تكوين Nginx" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "دليل تكوين Nginx موجود" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "ملف إدخال تكوين Nginx موجود" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "تمت استعادة تكوين Nginx" @@ -2937,6 +3363,10 @@ msgstr "معدل استخدام وحدة المعالجة المركزية لـ msgid "Nginx Error Log Path" msgstr "مسار سجل أخطاء Nginx" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "مسار سجل أخطاء Nginx موجود" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "خطأ في Nginx: {0}" @@ -2974,6 +3404,10 @@ msgstr "استخدام ذاكرة Nginx" msgid "Nginx PID Path" msgstr "مسار PID لـ Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "مسار معرف عملية Nginx موجود" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "أمر إعادة تحميل Nginx" @@ -3003,6 +3437,10 @@ msgstr "تم إرسال عمليات إعادة تشغيل Nginx إلى العق msgid "Nginx restarted successfully" msgstr "تم إعادة تشغيل Nginx بنجاح" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "مسار sbin لـ Nginx موجود" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "أمر اختبار تكوين Nginx" @@ -3026,10 +3464,22 @@ msgstr "تمت استعادة تكوين Nginx UI" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "تمت استعادة تكوين Nginx UI وسيتم إعادة التشغيل تلقائيًا خلال بضع ثوانٍ." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "يتضمن Nginx.conf دليل conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "يتضمن Nginx.conf دليل sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "يتضمن Nginx.conf دليل streams-enabled" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3162,11 +3612,13 @@ msgstr "عدد عمليات العامل المتزامنة، يتم الضبط #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:315 msgid "Number of files processed by cache loader at once" -msgstr "عدد الملفات التي تتم معالجتها بواسطة محمل ذاكرة التخزين المؤقت في وقت واحد" +msgstr "" +"عدد الملفات التي تتم معالجتها بواسطة محمل ذاكرة التخزين المؤقت في وقت واحد" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:253 msgid "Number of files processed by cache manager at once" -msgstr "عدد الملفات التي تتم معالجتها بواسطة مدير ذاكرة التخزين المؤقت في وقت واحد" +msgstr "" +"عدد الملفات التي تتم معالجتها بواسطة مدير ذاكرة التخزين المؤقت في وقت واحد" #: src/composables/usePerformanceMetrics.ts:129 #: src/composables/usePerformanceMetrics.ts:169 @@ -3443,7 +3895,8 @@ msgstr "" msgid "" "Please enter a name for the passkey you wish to create and click the OK " "button below." -msgstr "يرجى إدخال اسم لمفتاح المرور الذي ترغب في إنشائه ثم انقر على زر موافق أدناه." +msgstr "" +"يرجى إدخال اسم لمفتاح المرور الذي ترغب في إنشائه ثم انقر على زر موافق أدناه." #: src/components/AutoCertForm/AutoCertForm.vue:98 msgid "Please enter a valid IPv4 address (0-255 per octet)" @@ -3500,10 +3953,11 @@ msgstr "" "يرجى أولاً إضافة بيانات الاعتماد في الشهادات > بيانات اعتماد DNS، ثم اختيار " "أحد بيانات الاعتماد أدناه لطلب API لمزود DNS." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "يرجى إنشاء رموز استرداد جديدة في التفضيلات على الفور لمنع الإغلاق." #: src/views/config/components/ConfigRightPanel/Basic.vue:27 @@ -3545,7 +3999,8 @@ msgid "Please log in." msgstr "الرجاء تسجيل الدخول." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "يرجى ملاحظة أن تكوين وحدات الوقت أدناه كلها بالثواني." #: src/views/install/components/InstallView.vue:102 @@ -3675,8 +4130,7 @@ msgstr "دليل محمي" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "إعدادات البروتوكول تتأثر فقط عند الاتصال المباشر. إذا كنت تستخدم خادم وكيل " "عكسي، يرجى تكوين البروتوكول بشكل منفصل في خادم الوكيل العكسي." @@ -3728,7 +4182,7 @@ msgstr "يقرأ" msgid "Receive" msgstr "يستقبل" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "إعادة التحقق" @@ -3814,6 +4268,22 @@ msgstr "إعادة تحميل Nginx" msgid "Reload nginx failed: {0}" msgstr "فشل إعادة تحميل nginx: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "فشل إعادة تحميل Nginx على %{node}، الرد: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "تم إعادة تحميل Nginx على %{node} بنجاح" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "خطأ في إعادة تحميل Nginx البعيد" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "إعادة تحميل Nginx البعيد بنجاح" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "فشل طلب إعادة التحميل، يرجى التحقق من اتصال الشبكة لديك" @@ -3853,22 +4323,56 @@ msgstr "تمت الإزالة بنجاح" msgid "Rename" msgstr "إعادة تسمية" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "فشل إعادة تسمية %{orig_path} إلى %{new_path} على %{env_name}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "تم إعادة تسمية %{orig_path} إلى %{new_path} على %{env_name} بنجاح" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "خطأ في إعادة تسمية التكوين البعيد" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "إعادة تسمية تكوين البعيد بنجاح" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "خطأ في إعادة تسمية الموقع البعيد" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "تم إعادة تسمية الموقع البعيد بنجاح" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "خطأ في إعادة تسمية البث عن بُعد" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "تمت إعادة تسمية الدفق البعيد بنجاح" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "فشل إعادة تسمية الموقع %{name} إلى %{new_name} على %{node}" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "تمت إعادة تسمية الموقع %{name} إلى %{new_name} على %{node} بنجاح" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "فشل إعادة تسمية الدفق %{name} إلى %{new_name} على %{node}" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "تمت إعادة تسمية الدفق %{name} إلى %{new_name} على %{node} بنجاح" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "إعادة التسمية بنجاح" @@ -3949,6 +4453,22 @@ msgstr "إعادة تشغيل" msgid "Restart Nginx" msgstr "إعادة تشغيل Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "فشل إعادة تشغيل Nginx على %{node}، الرد: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "تم إعادة تشغيل Nginx بنجاح على %{node}" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "خطأ في إعادة تشغيل Nginx البعيد" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "إعادة تشغيل Nginx البعيد بنجاح" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "فشل طلب إعادة التشغيل، يرجى التحقق من اتصال الشبكة لديك" @@ -4160,14 +4680,40 @@ msgstr "حفظ" msgid "Save Directive" msgstr "حفظ التوجيه" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "خطأ في حفظ الموقع البعيد" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "حفظ الموقع البعيد بنجاح" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "خطأ في حفظ البث عن بُعد" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "حفظ البث عن بُعد بنجاح" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "فشل حفظ الموقع %{name} إلى %{node}" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "تم حفظ الموقع %{name} على %{node} بنجاح" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "فشل حفظ الدفق %{name} إلى %{node}" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "تم حفظ الدفق %{name} في %{node} بنجاح" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "تم الحفظ بنجاح" @@ -4276,7 +4822,7 @@ msgstr "تم تحديد {count} ملفات" msgid "Selector" msgstr "المحدد" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "الفحص الذاتي" @@ -4364,19 +4910,19 @@ msgstr "تعيين موفر تحدي HTTP01" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"إعدادات.Settings.NginxLogSettings.AccessLogPath فارغة، راجع " -"https://nginxui.com/guide/config-nginx.html لمزيد من المعلومات" +"إعدادات.Settings.NginxLogSettings.AccessLogPath فارغة، راجع https://nginxui." +"com/guide/config-nginx.html لمزيد من المعلومات" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"إعدادات.Settings.NginxLogSettings.ErrorLogPath فارغة، راجع " -"https://nginxui.com/guide/config-nginx.html لمزيد من المعلومات" +"إعدادات.Settings.NginxLogSettings.ErrorLogPath فارغة، راجع https://nginxui." +"com/guide/config-nginx.html لمزيد من المعلومات" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4418,6 +4964,10 @@ msgstr "سجلات الموقع" msgid "Site not found" msgstr "الموقع غير موجود" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "دليل المواقع موجود" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "قائمة المواقع" @@ -4547,6 +5097,14 @@ msgstr "تخزين" msgid "Storage Configuration" msgstr "تكوين التخزين" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"فشل التحقق من تكوين التخزين لمهمة النسخ الاحتياطي %{backup_name}، الخطأ: " +"%{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4574,6 +5132,10 @@ msgstr "تم تمكين البث" msgid "Stream not found" msgstr "البث غير موجود" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "دليل Streams موجود" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "دليل Streams-available غير موجود" @@ -4601,23 +5163,12 @@ msgstr "نجاح" msgid "Sunday" msgstr "الأحد" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"دعم الاتصال مع الخلفية من خلال بروتوكول Server-Sent Events. إذا كنت تستخدم " -"واجهة Nginx UI عبر وكيل عكسي لـ Nginx، يرجى الرجوع إلى هذا الرابط لكتابة " -"ملف التكوين المقابل: https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "دعم الاتصال مع الخلفية من خلال بروتوكول WebSocket. إذا كنت تستخدم واجهة " "Nginx عبر وكيل عكسي لـ Nginx، يرجى الرجوع إلى هذا الرابط لكتابة ملف التكوين " @@ -4658,19 +5209,35 @@ msgstr "مزامنة" msgid "Sync Certificate" msgstr "مزامنة الشهادة" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "فشل مزامنة الشهادة %{cert_name} إلى %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "نجح مزامنة الشهادة %{cert_name} إلى %{env_name}" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "خطأ في مزامنة الشهادة" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "تمت مزامنة الشهادة بنجاح" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "فشل مزامنة التكوين %{config_name} إلى %{env_name}" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "تم مزامنة التكوين %{config_name} إلى %{env_name} بنجاح" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "خطأ في تزامن التكوين" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "تمت مزامنة التكوين بنجاح" @@ -4772,7 +5339,8 @@ msgstr "" msgid "" "The ICP Number should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "يجب أن يحتوي رقم ICP على أحرف، يونيكود، أرقام، شرطات، نقاط، ونقطتين فقط." +msgstr "" +"يجب أن يحتوي رقم ICP على أحرف، يونيكود، أرقام، شرطات، نقاط، ونقطتين فقط." #: src/views/certificate/components/CertificateContentEditor.vue:96 msgid "The input is not a SSL Certificate" @@ -4784,11 +5352,10 @@ msgstr "المدخل ليس مفتاح شهادة SSL" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"مسار السجل ليس ضمن المسارات الموجودة في " -"settings.NginxSettings.LogDirWhiteList" +"مسار السجل ليس ضمن المسارات الموجودة في settings.NginxSettings." +"LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4800,7 +5367,8 @@ msgstr "" "فقط." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "النموذج المستخدم لإكمال التعليمات البرمجية، إذا لم يتم تعيينه، سيتم استخدام " "نموذج الدردشة." @@ -4809,7 +5377,8 @@ msgstr "" msgid "" "The node name should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "يجب أن يحتوي اسم العقدة على أحرف، يونيكود، أرقام، شرطات، نقاط، ونقطتين فقط." +msgstr "" +"يجب أن يحتوي اسم العقدة على أحرف، يونيكود، أرقام، شرطات، نقاط، ونقطتين فقط." #: src/views/site/site_add/SiteAdd.vue:96 msgid "The parameter of server_name is required" @@ -4911,22 +5480,27 @@ msgid "This field should not be empty" msgstr "يجب ألا يكون هذا الحقل فارغًا" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "يجب أن يحتوي هذا الحقل على حروف وأحرف يونيكود وأرقام و-_. فقط." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "يجب أن يحتوي هذا الحقل فقط على أحرف وأحرف يونيكود وأرقام و -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "هذه رسالة اختبار تم إرسالها في %{timestamp} من واجهة Nginx." + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " "After enabling it, you can view performance statistics" msgstr "" -"توفر هذه الوحدة إحصائيات طلبات Nginx وعدد الاتصالات وما إلى ذلك من " -"البيانات. بعد تمكينها، يمكنك عرض إحصائيات الأداء" +"توفر هذه الوحدة إحصائيات طلبات Nginx وعدد الاتصالات وما إلى ذلك من البيانات. " +"بعد تمكينها، يمكنك عرض إحصائيات الأداء" #: src/views/preference/tabs/ExternalNotify.vue:15 msgid "This notification is disabled" @@ -4942,9 +5516,9 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "تم تكوين هذا الموقع كخادم افتراضي (default_server) لـ HTTPS (المنفذ 443). " "تتطلب شهادات IP دعمًا من سلطة الشهادات (CA) وقد لا تكون متاحة مع جميع موفري " @@ -4952,8 +5526,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "يستخدم هذا الموقع اسم خادم شامل (_) والذي يشير عادةً إلى شهادة قائمة على " @@ -4991,11 +5565,12 @@ msgid "" "This will restore configuration files and database. Nginx UI will restart " "after the restoration is complete." msgstr "" -"سيؤدي هذا إلى استعادة ملفات التكوين وقاعدة البيانات. سيعاد تشغيل واجهة " -"Nginx بعد اكتمال الاستعادة." +"سيؤدي هذا إلى استعادة ملفات التكوين وقاعدة البيانات. سيعاد تشغيل واجهة Nginx " +"بعد اكتمال الاستعادة." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "سيتم ترقية أو إعادة تثبيت Nginx UI على %{nodeNames} إلى %{version}." #: src/views/preference/tabs/AuthSettings.vue:92 @@ -5049,8 +5624,8 @@ msgstr "" #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" "لضمان عمل تجديد الشهادة التلقائي بشكل طبيعي، نحتاج إلى إضافة موقع يمكنه " @@ -5063,9 +5638,9 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"لاستخدام نموذج كبير محلي، قم بنشره باستخدام ollama أو vllm أو lmdeploy. " -"توفر هذه الأدوات نقطة نهاية API متوافقة مع OpenAI، لذا ما عليك سوى تعيين " -"baseUrl إلى API المحلي الخاص بك." +"لاستخدام نموذج كبير محلي، قم بنشره باستخدام ollama أو vllm أو lmdeploy. توفر " +"هذه الأدوات نقطة نهاية API متوافقة مع OpenAI، لذا ما عليك سوى تعيين baseUrl " +"إلى API المحلي الخاص بك." #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5352,8 +5927,8 @@ msgid "" "you have a valid backup file and security token, and carefully select what " "to restore." msgstr "" -"تحذير: ستقوم عملية الاستعادة بالكتابة فوق التكوينات الحالية. تأكد من أن " -"لديك ملف نسخ احتياطي صالحًا ورمزًا أمنيًا، واختر بعناية ما تريد استعادته." +"تحذير: ستقوم عملية الاستعادة بالكتابة فوق التكوينات الحالية. تأكد من أن لديك " +"ملف نسخ احتياطي صالحًا ورمزًا أمنيًا، واختر بعناية ما تريد استعادته." #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" @@ -5373,8 +5948,8 @@ msgstr "سنضيف سجل أو أكثر من سجلات TXT إلى سجلات DN #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "سنقوم بإزالة تكوين HTTPChallenge من هذا الملف وإعادة تحميل Nginx. هل أنت " "متأكد أنك تريد المتابعة؟" @@ -5492,11 +6067,11 @@ msgstr "نعم" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" -"أنت تتصل بهذا الطرف عبر اتصال HTTP غير آمن في نطاق غير محلي. قد يؤدي هذا " -"إلى كشف معلومات حساسة." +"أنت تتصل بهذا الطرف عبر اتصال HTTP غير آمن في نطاق غير محلي. قد يؤدي هذا إلى " +"كشف معلومات حساسة." #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5525,7 +6100,8 @@ msgid "" msgstr "لم تقم بتكوين إعدادات Webauthn، لذا لا يمكنك إضافة مفتاح مرور." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "لم تقم بتمكين المصادقة الثنائية بعد. يرجى تمكين المصادقة الثنائية لإنشاء " "رموز الاسترداد." @@ -5551,444 +6127,16 @@ msgstr "رموزك القديمة لن تعمل بعد الآن." msgid "Your passkeys" msgstr "مفاتيح المرور الخاصة بك" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "" -#~ "[Nginx UI] مستخدم ACME: %{name}، البريد الإلكتروني: %{email}، دليل CA: " -#~ "%{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] يتم إنشاء نسخة احتياطية من الشهادة الحالية لإلغائها لاحقًا" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] تم تجديد الشهادة بنجاح" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] تم إلغاء الشهادة بنجاح" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "[Nginx UI] تم استخدام الشهادة للخادم، إعادة تحميل شهادة TLS للخادم" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] إنشاء عميل لتسهيل الاتصال مع خادم CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] تم تنظيف متغيرات البيئة" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] تم الانتهاء" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] تم إصدار الشهادة بنجاح" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] الحصول على الشهادة" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] التحضير لإلغاء الشهادة" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] إعداد تكوينات ليغو" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] إعادة تحميل nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] اكتمال الإلغاء" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] إلغاء الشهادة" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] إبطال الشهادة القديمة" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] تعيين موفر تحدي DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] تعيين متغيرات البيئة" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] تعيين موفر تحدي HTTP01" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] كتابة مفتاح الشهادة الخاص إلى القرص" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] كتابة الشهادة على القرص" - -#~ msgid "Auto Backup Completed" -#~ msgstr "اكتمل النسخ الاحتياطي التلقائي" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "خطأ في تكوين النسخ الاحتياطي التلقائي" - -#~ msgid "Auto Backup Failed" -#~ msgstr "فشل النسخ الاحتياطي التلقائي" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "فشل تخزين النسخ الاحتياطي التلقائي" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "تم إنجاز مهمة النسخ الاحتياطي %{backup_name} بنجاح، الملف: %{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "فشلت مهمة النسخ الاحتياطي %{backup_name} أثناء تحميل التخزين، الخطأ: " -#~ "%{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "فشل تنفيذ مهمة النسخ الاحتياطي %{backup_name}، الخطأ: %{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "انتهت صلاحية الشهادة %{name}" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "ستنتهي صلاحية الشهادة %{name} خلال %{days} يومًا" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "ستنتهي صلاحية الشهادة %{name} خلال يوم واحد" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "إشعار انتهاء صلاحية الشهادة" - -#~ msgid "Certificate Expired" -#~ msgstr "انتهت صلاحية الشهادة" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "انتهاء صلاحية الشهادة قريبًا" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "الشهادة غير موجودة: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "تم إبطال الشهادة بنجاح" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "تحقق مما إذا كان /var/run/docker.sock موجودًا. إذا كنت تستخدم صورة Docker " -#~ "الرسمية لـ Nginx UI، يرجى التأكد من توصيل مقبس Docker بهذه الطريقة: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. تستخدم صورة Nginx UI الرسمية " -#~ "/var/run/docker.sock للتواصل مع محرك Docker المضيف عبر واجهة برمجة تطبيقات " -#~ "Docker Client. تُستخدم هذه الميزة للتحكم في Nginx في حاوية أخرى وإجراء " -#~ "استبدال الحاوية بدلاً من استبدال الثنائي أثناء التحديثات OTA لـ Nginx UI " -#~ "لضمان تحديث تبعيات الحاوية أيضًا. إذا كنت لا تحتاج إلى هذه الميزة، يرجى " -#~ "إضافة متغير البيئة NGINX_UI_IGNORE_DOCKER_SOCKET=true إلى الحاوية." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "تحقق مما إذا كان مسار سجل الوصول إلى nginx موجودًا. بشكل افتراضي، يتم " -#~ "الحصول على هذا المسار من 'nginx -V'. إذا لم يتم الحصول عليه أو إذا كان " -#~ "المسار الذي تم الحصول عليه لا يشير إلى ملف صالح موجود، فسيتم الإبلاغ عن " -#~ "خطأ. في هذه الحالة، تحتاج إلى تعديل ملف التكوين لتحديد مسار سجل الوصول. " -#~ "راجع الوثائق لمزيد من التفاصيل: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "تحقق مما إذا كان دليل تكوين nginx موجودًا" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "تحقق مما إذا كان ملف إدخال تكوين nginx موجودًا" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "تحقق مما إذا كان مسار سجل أخطاء nginx موجودًا. بشكل افتراضي، يتم الحصول على " -#~ "هذا المسار من 'nginx -V'. إذا تعذر الحصول عليه أو إذا كان المسار الذي تم " -#~ "الحصول عليه لا يشير إلى ملف صالح موجود، فسيتم الإبلاغ عن خطأ. في هذه " -#~ "الحالة، تحتاج إلى تعديل ملف التكوين لتحديد مسار سجل الأخطاء. راجع الوثائق " -#~ "لمزيد من التفاصيل: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "تحقق مما إذا كان مسار معرف عملية Nginx موجودًا. بشكل افتراضي، يتم الحصول " -#~ "على هذا المسار من الأمر 'nginx -V'. إذا تعذر الحصول عليه، سيتم الإبلاغ عن " -#~ "خطأ. في هذه الحالة، تحتاج إلى تعديل ملف التكوين لتحديد مسار معرف عملية " -#~ "Nginx. راجع الوثائق لمزيد من التفاصيل: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "تحقق مما إذا كان مسار sbin لـ nginx موجودًا" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "تحقق مما إذا كان ملف nginx.conf يتضمن دليل conf.d" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "تحقق مما إذا كان nginx.conf يتضمن دليل sites-enabled" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "تحقق مما إذا كان nginx.conf يتضمن دليل streams-enabled" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "تحقق مما إذا كانت الدلائل sites-available و sites-enabled موجودة ضمن دليل " -#~ "تكوين nginx" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "تحقق مما إذا كانت الدلائل streams-available و streams-enabled موجودة ضمن " -#~ "دليل تكوين nginx" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "فشل حذف %{path} على %{env_name}" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "تم حذف %{path} على %{env_name} بنجاح" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "خطأ في حذف التكوين البعيد" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "نجاح حذف التكوين البعيد" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "خطأ في حذف البث عن بُعد" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "نجاح حذف البث عن بُعد" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "فشل حذف الموقع %{name} من %{node}" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "تم حذف الموقع %{name} من %{node} بنجاح" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "فشل حذف الدفق %{name} من %{node}" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "تم حذف الدفق %{name} من %{node} بنجاح" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "خطأ في تعطيل صيانة الموقع البعيد" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "تعطيل صيانة الموقع البعيد بنجاح" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "خطأ في تعطيل البث عن بُعد" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "تعطيل البث عن بُعد بنجاح" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "فشل تعطيل الموقع %{name} من %{node}" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "تم تعطيل الموقع %{name} من %{node} بنجاح" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "فشل تعطيل صيانة الموقع %{name} على %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "تم تعطيل صيانة الموقع %{name} على %{node} بنجاح" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "فشل تعطيل الدفق %{name} من %{node}" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "تم تعطيل الدفق %{name} من %{node} بنجاح" - -#~ msgid "Docker socket exists" -#~ msgstr "مقبس Docker موجود" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "خطأ في تمكين صيانة الموقع البعيد" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "تمكين صيانة الموقع البعيد بنجاح" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "خطأ في تمكين البث عن بُعد" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "تمكين البث عن بُعد بنجاح" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "فشل تمكين الصيانة للموقع %{name} على %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "تم تمكين صيانة الموقع %{name} على %{node} بنجاح" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "فشل تمكين الموقع %{name} على %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "تم تمكين الموقع %{name} على %{node} بنجاح" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "فشل تمكين الدفق %{name} على %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "تم تمكين الدفق %{name} على %{node} بنجاح" - -#~ msgid "External Notification Test" -#~ msgstr "اختبار الإشعار الخارجي" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "فشل حذف الشهادة من قاعدة البيانات: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "فشل إلغاء الشهادة: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "ملف السجل %{log_path} ليس ملفًا عاديًا. إذا كنت تستخدم nginx-ui في حاوية " -#~ "Docker، يرجى الرجوع إلى " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html لمزيد من المعلومات." - -#~ msgid "Nginx access log path exists" -#~ msgstr "مسار سجل الوصول إلى Nginx موجود" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "دليل تكوين Nginx موجود" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "ملف إدخال تكوين Nginx موجود" - -#~ msgid "Nginx error log path exists" -#~ msgstr "مسار سجل أخطاء Nginx موجود" - -#~ msgid "Nginx PID path exists" -#~ msgstr "مسار معرف عملية Nginx موجود" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "مسار sbin لـ Nginx موجود" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "يتضمن Nginx.conf دليل conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "يتضمن Nginx.conf دليل sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "يتضمن Nginx.conf دليل streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "فشل إعادة تحميل Nginx على %{node}، الرد: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "تم إعادة تحميل Nginx على %{node} بنجاح" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "خطأ في إعادة تحميل Nginx البعيد" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "إعادة تحميل Nginx البعيد بنجاح" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "فشل إعادة تسمية %{orig_path} إلى %{new_path} على %{env_name}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "تم إعادة تسمية %{orig_path} إلى %{new_path} على %{env_name} بنجاح" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "خطأ في إعادة تسمية البث عن بُعد" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "تمت إعادة تسمية الدفق البعيد بنجاح" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "فشل إعادة تسمية الموقع %{name} إلى %{new_name} على %{node}" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "تمت إعادة تسمية الموقع %{name} إلى %{new_name} على %{node} بنجاح" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "فشل إعادة تسمية الدفق %{name} إلى %{new_name} على %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "تمت إعادة تسمية الدفق %{name} إلى %{new_name} على %{node} بنجاح" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "فشل إعادة تشغيل Nginx على %{node}، الرد: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "تم إعادة تشغيل Nginx بنجاح على %{node}" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "خطأ في إعادة تشغيل Nginx البعيد" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "إعادة تشغيل Nginx البعيد بنجاح" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "خطأ في حفظ البث عن بُعد" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "حفظ البث عن بُعد بنجاح" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "فشل حفظ الموقع %{name} إلى %{node}" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "تم حفظ الموقع %{name} على %{node} بنجاح" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "فشل حفظ الدفق %{name} إلى %{node}" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "تم حفظ الدفق %{name} في %{node} بنجاح" - -#~ msgid "Sites directory exists" -#~ msgstr "دليل المواقع موجود" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "فشل التحقق من تكوين التخزين لمهمة النسخ الاحتياطي %{backup_name}، الخطأ: " -#~ "%{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "دليل Streams موجود" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "فشل مزامنة الشهادة %{cert_name} إلى %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "نجح مزامنة الشهادة %{cert_name} إلى %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "فشل مزامنة التكوين %{config_name} إلى %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "تم مزامنة التكوين %{config_name} إلى %{env_name} بنجاح" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "هذه رسالة اختبار تم إرسالها في %{timestamp} من واجهة Nginx." +#~ "دعم الاتصال مع الخلفية من خلال بروتوكول Server-Sent Events. إذا كنت " +#~ "تستخدم واجهة Nginx UI عبر وكيل عكسي لـ Nginx، يرجى الرجوع إلى هذا الرابط " +#~ "لكتابة ملف التكوين المقابل: https://nginxui.com/guide/nginx-proxy-example." +#~ "html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "إذا تُرك فارغًا، سيتم استخدام دليل CA الافتراضي." @@ -6086,12 +6234,12 @@ msgstr "مفاتيح المرور الخاصة بك" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" #~ "تحقق مما إذا كان /var/run/docker.sock موجودًا. إذا كنت تستخدم صورة Docker " -#~ "الرسمية لـ Nginx UI، يرجى التأكد من أن مقبس Docker مثبت بهذه الطريقة: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "الرسمية لـ Nginx UI، يرجى التأكد من أن مقبس Docker مثبت بهذه الطريقة: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgid "Check if the nginx access log path exists" #~ msgstr "تحقق مما إذا كان مسار سجل الوصول لـ nginx موجودًا" @@ -6130,8 +6278,8 @@ msgstr "مفاتيح المرور الخاصة بك" #, fuzzy #~ msgid "" -#~ "When you enable/disable, delete, or save this stream, the nodes set in the " -#~ "Node Group and the nodes selected below will be synchronized." +#~ "When you enable/disable, delete, or save this stream, the nodes set in " +#~ "the Node Group and the nodes selected below will be synchronized." #~ msgstr "" #~ "عند تفعيل/تعطيل، حذف، أو حفظ هذا الموقع، سيتم مزامنة العقد المحددة في فئة " #~ "الموقع والعقد المحددة أدناه." @@ -6198,12 +6346,15 @@ msgstr "مفاتيح المرور الخاصة بك" #~ msgid "Please upgrade the remote Nginx UI to the latest version" #~ msgstr "يرجى ترقية واجهة Nginx البعيدة إلى أحدث إصدار" -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "" #~ "فشل إعادة تسمية %{orig_path} إلى %{new_path} على %{env_name}، الاستجابة: " #~ "%{resp}" -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "" #~ "خطأ في إعادة تسمية الموقع %{site} إلى %{new_site} على %{node}، الاستجابة: " #~ "%{resp}" @@ -6218,15 +6369,17 @@ msgstr "مفاتيح المرور الخاصة بك" #~ "فشل مزامنة الشهادة %{cert_name} إلى %{env_name}، يرجى ترقية واجهة Nginx " #~ "البعيدة إلى أحدث إصدار" -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "فشل مزامنة الشهادة %{cert_name} إلى %{env_name}، الاستجابة: %{resp}" #~ msgid "Sync config %{config_name} to %{env_name} failed, response: %{resp}" -#~ msgstr "فشل مزامنة التكوين %{config_name} إلى %{env_name}، الاستجابة: %{resp}" +#~ msgstr "" +#~ "فشل مزامنة التكوين %{config_name} إلى %{env_name}، الاستجابة: %{resp}" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "" #~ "إذا فقدت هاتفك المحمول، يمكنك استخدام رمز الاسترداد لإعادة تعيين المصادقة " #~ "الثنائية." @@ -6234,7 +6387,8 @@ msgstr "مفاتيح المرور الخاصة بك" #~ msgid "Recovery Code:" #~ msgstr "رمز الاسترداد:" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "رمز الاسترداد يُعرض مرة واحدة فقط، يرجى حفظه في مكان آمن." #~ msgid "Can't scan? Use text key binding" @@ -6244,4 +6398,5 @@ msgstr "مفاتيح المرور الخاصة بك" #~ msgstr "اسم المستخدم أو كلمة المرور غير صحيحة" #~ msgid "Too many login failed attempts, please try again later" -#~ msgstr "عدد كبير جدًا من محاولات تسجيل الدخول الفاشلة، يرجى المحاولة مرة أخرى لاحقًا" +#~ msgstr "" +#~ "عدد كبير جدًا من محاولات تسجيل الدخول الفاشلة، يرجى المحاولة مرة أخرى لاحقًا" diff --git a/app/src/language/de_DE/app.po b/app/src/language/de_DE/app.po index c16dc18e..b8ffd83d 100644 --- a/app/src/language/de_DE/app.po +++ b/app/src/language/de_DE/app.po @@ -5,13 +5,104 @@ msgstr "" "Language-Team: none\n" "Language: de_DE\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] ACME-Benutzer: %{name}, E-Mail: %{email}, CA-Verzeichnis: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] Aktuelles Zertifikat wird für spätere Widerrufung gesichert" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Zertifikat erfolgreich erneuert" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Zertifikat erfolgreich widerrufen" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] Zertifikat wurde für den Server verwendet, Server-TLS-Zertifikat " +"wird neu geladen" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" +"[Nginx UI] Erstellung eines Clients zur Erleichterung der Kommunikation mit " +"dem CA-Server" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Umgebungsvariablen bereinigt" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Abgeschlossen" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Zertifikat erfolgreich ausgestellt" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Zertifikat wird abgerufen" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Vorbereitung auf den Widerruf des Zertifikats" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Vorbereiten der Lego-Konfigurationen" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Nginx wird neu geladen" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Widerruf abgeschlossen" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Zertifikat wird widerrufen" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Altes Zertifikat wird widerrufen" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] DNS01-Herausforderungsanbieter wird eingerichtet" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Umgebungsvariablen werden gesetzt" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] HTTP01-Herausforderungsanbieter wird eingerichtet" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Schreibe privaten Zertifikatsschlüssel auf die Festplatte" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Zertifikat wird auf die Festplatte geschrieben" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" -msgstr "* Enthält Knoten aus der Gruppe %{groupName} und manuell ausgewählte Knoten" +msgstr "" +"* Enthält Knoten aus der Gruppe %{groupName} und manuell ausgewählte Knoten" #: src/views/user/userColumns.tsx:30 msgid "2FA" @@ -142,6 +233,7 @@ msgstr "" msgid "All" msgstr "Alle" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Alle Wiederherstellungscodes wurden verwendet" @@ -155,7 +247,8 @@ msgstr "" "ansonsten schlägt die Zertifikatsbeantragung fehl." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Jede erreichbare IP-Adresse kann mit privaten Zertifizierungsstellen " "verwendet werden" @@ -198,7 +291,8 @@ msgstr "Sind Sie sicher, dass Sie diesen Passkey sofort löschen möchten?" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:154 msgid "Are you sure to generate new recovery codes?" -msgstr "Sind Sie sicher, dass Sie neue Wiederherstellungscodes generieren möchten?" +msgstr "" +"Sind Sie sicher, dass Sie neue Wiederherstellungscodes generieren möchten?" #: src/views/preference/components/AuthSettings/TOTP.vue:85 msgid "Are you sure to reset 2FA?" @@ -243,8 +337,8 @@ msgstr "Sind Sie sicher, dass Sie diesen Standort entfernen möchten?" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:109 msgid "Are you sure you want to restart Nginx on the following sync nodes?" msgstr "" -"Sind Sie sicher, dass Sie Nginx auf den folgenden Synchronisationsknoten " -"neu starten möchten?" +"Sind Sie sicher, dass Sie Nginx auf den folgenden Synchronisationsknoten neu " +"starten möchten?" #: src/language/curd.ts:26 msgid "Are you sure you want to restore?" @@ -258,7 +352,7 @@ msgstr "Frage ChatGPT um Hilfe" msgid "Assistant" msgstr "Assistent" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Versuchen zu beheben" @@ -297,6 +391,22 @@ msgstr "Auto = CPU -Kerne" msgid "Auto Backup" msgstr "Automatische Sicherung" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Automatische Sicherung abgeschlossen" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Fehler bei der automatischen Sicherungskonfiguration" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Automatische Sicherung fehlgeschlagen" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Automatische Sicherungsspeicherung fehlgeschlagen" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -396,6 +506,25 @@ msgstr "Sicherungspfad nicht in den gewährten Zugriffspfaden: {0}" msgid "Backup Schedule" msgstr "Sicherungszeitplan" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Sicherungsauftrag %{backup_name} erfolgreich abgeschlossen, Datei: " +"%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"Sicherungsauftrag %{backup_name} ist beim Hochladen in den Speicher " +"fehlgeschlagen, Fehler: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" +"Sicherungsauftrag %{backup_name} konnte nicht ausgeführt werden, Fehler: " +"%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Sicherungstyp" @@ -449,7 +578,8 @@ msgstr "Stapel-Upgrade" #: src/language/curd.ts:38 msgid "Belows are selected items that you want to batch modify" -msgstr "Hier sind die ausgewählten Elemente, die Sie stapelweise ändern möchten" +msgstr "" +"Hier sind die ausgewählten Elemente, die Sie stapelweise ändern möchten" #: src/constants/errors/nginx.ts:3 msgid "Block is nil" @@ -539,7 +669,8 @@ msgstr "Auf den Speicherpfad {0} kann nicht zugegriffen werden: {1}" #: src/constants/errors/user.ts:11 msgid "Cannot change initial user password in demo mode" -msgstr "Das Passwort des ersten Benutzers kann im Demo-Modus nicht geändert werden" +msgstr "" +"Das Passwort des ersten Benutzers kann im Demo-Modus nicht geändert werden" #: src/components/ConfigHistory/DiffViewer.vue:72 msgid "Cannot compare: Missing content" @@ -570,6 +701,20 @@ msgstr "Der Zertifikatspfad liegt nicht im nginx-Konfigurationsverzeichnis" msgid "certificate" msgstr "Zertifikat" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "Das Zertifikat %{name} ist abgelaufen" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "Das Zertifikat %{name} läuft in %{days} Tagen ab" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "Das Zertifikat %{name} läuft in 1 Tag ab" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "Der Zertifikatsinhalt und der private Schlüssel dürfen nicht leer sein" @@ -578,6 +723,20 @@ msgstr "Der Zertifikatsinhalt und der private Schlüssel dürfen nicht leer sein msgid "Certificate decode error" msgstr "Fehler beim Dekodieren des Zertifikats" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Hinweis zum Zertifikatsablauf" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Zertifikat abgelaufen" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Zertifikat läuft bald ab" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Zertifikatsdateien erfolgreich heruntergeladen" @@ -586,6 +745,10 @@ msgstr "Zertifikatsdateien erfolgreich heruntergeladen" msgid "Certificate name cannot be empty" msgstr "Der Zertifikatsname darf nicht leer sein" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Zertifikat nicht gefunden: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Fehler beim Parsen des Zertifikats" @@ -607,6 +770,10 @@ msgstr "Zertifikatserneuerungsintervall" msgid "Certificate renewed successfully" msgstr "Zertifikat erfolgreich erneuert" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Zertifikat erfolgreich widerrufen" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -672,6 +839,30 @@ msgstr "Überprüfen" msgid "Check again" msgstr "Erneut prüfen" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Überprüfen Sie, ob /var/run/docker.sock existiert. Wenn Sie das offizielle " +"Nginx UI Docker-Image verwenden, stellen Sie sicher, dass der Docker-Socket " +"wie folgt eingebunden ist: `-v /var/run/docker.sock:/var/run/docker.sock`. " +"Das offizielle Nginx UI-Image verwendet /var/run/docker.sock, um über die " +"Docker Client API mit der Docker Engine des Hosts zu kommunizieren. Diese " +"Funktion wird verwendet, um Nginx in einem anderen Container zu steuern und " +"Container-Ersetzung anstelle von Binär-Ersetzung während OTA-Upgrades von " +"Nginx UI durchzuführen, um sicherzustellen, dass auch Container-" +"Abhängigkeiten aktualisiert werden. Wenn Sie diese Funktion nicht benötigen, " +"fügen Sie die Umgebungsvariable NGINX_UI_IGNORE_DOCKER_SOCKET=true zum " +"Container hinzu." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -681,6 +872,95 @@ msgstr "" "von localhost ist unsicher und verhindert die Nutzung von Passkeys und " "Zwischenablage-Funktionen" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Überprüfen Sie, ob der Pfad für das Nginx-Zugriffsprotokoll existiert. " +"Standardmäßig wird dieser Pfad von 'nginx -V' abgerufen. Wenn er nicht " +"abgerufen werden kann oder der abgerufene Pfad nicht auf eine gültige, " +"vorhandene Datei verweist, wird ein Fehler gemeldet. In diesem Fall müssen " +"Sie die Konfigurationsdatei ändern, um den Zugriffsprotokollpfad anzugeben. " +"Weitere Details finden Sie in der Dokumentation: https://nginxui.com/zh_CN/" +"guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Überprüfen Sie, ob das Nginx-Konfigurationsverzeichnis existiert" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Überprüfen Sie, ob die Nginx-Konfigurationsdatei existiert" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Überprüfen Sie, ob der Pfad für das Nginx-Fehlerprotokoll existiert. " +"Standardmäßig wird dieser Pfad über 'nginx -V' abgerufen. Wenn er nicht " +"abgerufen werden kann oder der abgerufene Pfad nicht auf eine gültige, " +"vorhandene Datei verweist, wird ein Fehler gemeldet. In diesem Fall müssen " +"Sie die Konfigurationsdatei ändern, um den Pfad für das Fehlerprotokoll " +"anzugeben. Weitere Details finden Sie in der Dokumentation: https://nginxui." +"com/zh_CN/guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Überprüfen Sie, ob der Nginx-PID-Pfad existiert. Standardmäßig wird dieser " +"Pfad von 'nginx -V' abgerufen. Wenn er nicht abgerufen werden kann, wird ein " +"Fehler gemeldet. In diesem Fall müssen Sie die Konfigurationsdatei ändern, " +"um den Nginx-PID-Pfad anzugeben. Weitere Details finden Sie in der " +"Dokumentation: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Überprüfen Sie, ob der Pfad zu nginx sbin existiert" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Überprüfen Sie, ob die nginx.conf das conf.d-Verzeichnis enthält" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Überprüfen, ob die nginx.conf das sites-enabled-Verzeichnis enthält" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "" +"Überprüfen Sie, ob die nginx.conf das streams-enabled-Verzeichnis enthält" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Überprüfen Sie, ob die Verzeichnisse sites-available und sites-enabled im " +"Nginx-Konfigurationsverzeichnis enthalten sind" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Überprüfen Sie, ob die Verzeichnisse streams-available und streams-enabled " +"im Nginx-Konfigurationsverzeichnis enthalten sind" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "Der verschlüsselte Text ist zu kurz" @@ -901,8 +1181,8 @@ msgstr "CPU-Auslastung" #: src/views/dashboard/components/ResourceUsageCard.vue:38 msgid "CPU usage is relatively high, consider optimizing Nginx configuration" msgstr "" -"Die CPU-Auslastung ist relativ hoch, erwägen Sie eine Optimierung der " -"Nginx-Konfiguration" +"Die CPU-Auslastung ist relativ hoch, erwägen Sie eine Optimierung der Nginx-" +"Konfiguration" #: src/views/dashboard/ServerAnalytic.vue:199 msgid "CPU:" @@ -929,8 +1209,8 @@ msgid "" "Create system backups including Nginx configuration and Nginx UI settings. " "Backup files will be automatically downloaded to your computer." msgstr "" -"Erstellen Sie System-Backups, einschließlich der Nginx-Konfiguration und " -"der Nginx-UI-Einstellungen. Die Backup-Dateien werden automatisch auf Ihren " +"Erstellen Sie System-Backups, einschließlich der Nginx-Konfiguration und der " +"Nginx-UI-Einstellungen. Die Backup-Dateien werden automatisch auf Ihren " "Computer heruntergeladen." #: src/views/backup/AutoBackup/AutoBackup.vue:229 @@ -1016,7 +1296,8 @@ msgstr "Benutzerdefinierte Domänenzertifikate" msgid "" "Customize the name of local node to be displayed in the environment " "indicator." -msgstr "Name des lokalen Knotens anpassen, der im Umgebungsindikator angezeigt wird." +msgstr "" +"Name des lokalen Knotens anpassen, der im Umgebungsindikator angezeigt wird." #: src/views/backup/AutoBackup/components/CronEditor.vue:19 msgid "Daily" @@ -1066,6 +1347,14 @@ msgstr "" msgid "Delete" msgstr "Löschen" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Löschen von %{path} auf %{env_name} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{path} auf %{env_name} erfolgreich gelöscht" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Zertifikat löschen" @@ -1078,18 +1367,51 @@ msgstr "Löschbestätigung" msgid "Delete Permanently" msgstr "Permanent löschen" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Fehler beim Löschen der Remote-Konfiguration" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Entfernte Konfiguration erfolgreich gelöscht" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Fehler beim Löschen der Remote-Site" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Entfernte Website erfolgreich gelöscht" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Fehler beim Löschen des Remote-Streams" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Entfernten Stream erfolgreich gelöscht" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Löschen der Site %{name} von %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Website %{name} von %{node} erfolgreich gelöscht" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Seite löschen: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Löschen des Streams %{name} von %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "Stream %{name} wurde erfolgreich von %{node} gelöscht" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Stream löschen: %{stream_name}" @@ -1176,14 +1498,57 @@ msgstr "Deaktivieren" msgid "Disable auto-renewal failed for %{name}" msgstr "Automatische Verlängerung für %{name} konnte nicht deaktiviert werden" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Fehler beim Deaktivieren der Remote-Site" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Fehler beim Deaktivieren der Remote-Site-Wartung" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Wartungsmodus der Remote-Website erfolgreich deaktiviert" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Remote-Site erfolgreich deaktiviert" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Fehler beim Deaktivieren des Remote-Streams" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Remote-Stream erfolgreich deaktiviert" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Deaktivierung der Website %{name} von %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Website %{name} auf %{node} erfolgreich deaktiviert" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "" +"Deaktivierung der Wartung der Website %{name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Wartung der Website %{name} auf %{node} erfolgreich deaktiviert" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Deaktivieren des Streams %{name} von %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Stream %{name} von %{node} erfolgreich deaktiviert" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1256,6 +1621,10 @@ msgstr "Möchten Sie diesen Upstream entfernen?" msgid "Docker client not initialized" msgstr "Docker-Client nicht initialisiert" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Docker-Socket vorhanden" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Docker-Socket existiert nicht" @@ -1306,9 +1675,9 @@ msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." msgstr "" -"Aufgrund der Sicherheitsrichtlinien einiger Browser kannst du Passkeys " -"nicht auf Nicht-HTTPS-Websites verwenden, außer wenn sie auf localhost " -"ausgeführt werden." +"Aufgrund der Sicherheitsrichtlinien einiger Browser kannst du Passkeys nicht " +"auf Nicht-HTTPS-Websites verwenden, außer wenn sie auf localhost ausgeführt " +"werden." #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1407,14 +1776,58 @@ msgstr "HTTPS aktivieren" msgid "Enable Proxy Cache" msgstr "Proxy-Cache aktivieren" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Fehler beim Aktivieren der Remote-Site" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Fehler beim Aktivieren der Remote-Site-Wartung" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Wartungsmodus für Remote-Website erfolgreich aktiviert" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Remote-Site erfolgreich aktiviert" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Fehler beim Aktivieren des Remote-Streams" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Stream erfolgreich aktiviert" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "" +"Aktivierung der Wartung für die Website %{name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "" +"Wartungsmodus für die Website %{name} auf %{node} erfolgreich aktiviert" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "Aktivierung der Website %{name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Website %{name} auf %{node} erfolgreich aktiviert" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "Aktivierung des Streams %{name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Stream %{name} auf %{node} erfolgreich aktiviert" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Aktiviere stub_status-Modul" @@ -1452,7 +1865,8 @@ msgstr "Erfolgreich aktiviert" #: src/views/preference/tabs/ServerSettings.vue:52 msgid "Enables HTTP/2 support with multiplexing and server push capabilities" -msgstr "Aktiviert HTTP/2-Unterstützung mit Multiplexing und Server-Push-Funktionen" +msgstr "" +"Aktiviert HTTP/2-Unterstützung mit Multiplexing und Server-Push-Funktionen" #: src/views/preference/tabs/ServerSettings.vue:56 msgid "Enables HTTP/3 support based on QUIC protocol for best performance" @@ -1474,7 +1888,8 @@ msgstr "Domänennamen eingeben" #: src/components/AutoCertForm/AutoCertForm.vue:183 msgid "Enter server IP address (e.g., 203.0.113.1 or 2001:db8::1)" -msgstr "Geben Sie die Server-IP-Adresse ein (z.B. 203.0.113.1 oder 2001:db8::1)" +msgstr "" +"Geben Sie die Server-IP-Adresse ein (z.B. 203.0.113.1 oder 2001:db8::1)" #: src/views/certificate/components/DNSIssueCertificate.vue:122 msgid "Enter your domain" @@ -1554,13 +1969,13 @@ msgid "" "External Account Binding HMAC Key (optional). Should be in Base64 URL " "encoding format." msgstr "" -"Externer Account Binding HMAC-Schlüssel (optional). Sollte im Base64 " -"URL-Kodierungsformat sein." +"Externer Account Binding HMAC-Schlüssel (optional). Sollte im Base64 URL-" +"Kodierungsformat sein." #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "Externe Account-Binding-Schlüssel-ID (optional). Erforderlich für einige " "ACME-Anbieter wie ZeroSSL." @@ -1573,6 +1988,10 @@ msgstr "Externer Docker-Container" msgid "External notification configuration not found" msgstr "Externe Benachrichtigungskonfiguration nicht gefunden" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Externer Benachrichtigungstest" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1727,6 +2146,10 @@ msgstr "Fehler beim Entschlüsseln des Nginx-UI-Verzeichnisses: {0}" msgid "Failed to delete certificate" msgstr "Zertifikat konnte nicht gelöscht werden" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Löschen des Zertifikats aus der Datenbank fehlgeschlagen: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1893,6 +2316,10 @@ msgstr "Wiederherstellung der Nginx-UI-Dateien fehlgeschlagen: {0}" msgid "Failed to revoke certificate" msgstr "Zertifikat konnte nicht widerrufen werden" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Zertifikat konnte nicht widerrufen werden: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Fehler beim Speichern der Nginx-Leistungseinstellungen" @@ -2011,17 +2438,17 @@ msgid "" "For IP-based certificate configurations, only HTTP-01 challenge method is " "supported. DNS-01 challenge is not compatible with IP-based certificates." msgstr "" -"Für IP-basierte Zertifikatskonfigurationen wird nur die " -"HTTP-01-Herausforderungsmethode unterstützt. Die DNS-01-Herausforderung ist " -"nicht mit IP-basierten Zertifikaten kompatibel." +"Für IP-basierte Zertifikatskonfigurationen wird nur die HTTP-01-" +"Herausforderungsmethode unterstützt. Die DNS-01-Herausforderung ist nicht " +"mit IP-basierten Zertifikaten kompatibel." #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" -"Für IP-basierte Zertifikate geben Sie bitte die Server-IP-Adresse an, die " -"im Zertifikat enthalten sein soll." +"Für IP-basierte Zertifikate geben Sie bitte die Server-IP-Adresse an, die im " +"Zertifikat enthalten sein soll." #: src/constants/errors/middleware.ts:4 msgid "Form parse failed" @@ -2208,8 +2635,8 @@ msgid "" "Includes master process, worker processes, cache processes, and other Nginx " "processes" msgstr "" -"Beinhaltet Master-Prozess, Worker-Prozesse, Cache-Prozesse und andere " -"Nginx-Prozesse" +"Beinhaltet Master-Prozess, Worker-Prozesse, Cache-Prozesse und andere Nginx-" +"Prozesse" #: src/components/ProcessingStatus/ProcessingStatus.vue:31 msgid "Indexing..." @@ -2463,7 +2890,8 @@ msgstr "Leer lassen ändert nichts" #: src/constants/errors/user.ts:6 msgid "Legacy recovery code not allowed since totp is not enabled" -msgstr "Alter Wiederherstellungscode nicht erlaubt, da TOTP nicht aktiviert ist" +msgstr "" +"Alter Wiederherstellungscode nicht erlaubt, da TOTP nicht aktiviert ist" #: src/components/AutoCertForm/AutoCertForm.vue:268 msgid "Lego disable CNAME Support" @@ -2548,6 +2976,16 @@ msgstr "Orte" msgid "Log" msgstr "Protokoll" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"Die Protokolldatei %{log_path} ist keine reguläre Datei. Wenn Sie nginx-ui " +"in einem Docker-Container verwenden, finden Sie weitere Informationen unter " +"https://nginxui.com/zh_CN/guide/config-nginx-log.html." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Protokollliste" @@ -2570,19 +3008,19 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" -"Logrotate ist standardmäßig in den meisten gängigen Linux-Distributionen " -"für Benutzer aktiviert, die Nginx UI auf dem Host-Rechner installieren, " -"sodass du die Parameter auf dieser Seite nicht ändern musst. Wenn du Nginx " -"UI mit Docker-Containern installierst, kannst du diese Option manuell " -"aktivieren. Der Crontab-Aufgabenplaner von Nginx UI führt den " -"Logrotate-Befehl in dem von dir in Minuten festgelegten Intervall aus." +"Logrotate ist standardmäßig in den meisten gängigen Linux-Distributionen für " +"Benutzer aktiviert, die Nginx UI auf dem Host-Rechner installieren, sodass " +"du die Parameter auf dieser Seite nicht ändern musst. Wenn du Nginx UI mit " +"Docker-Containern installierst, kannst du diese Option manuell aktivieren. " +"Der Crontab-Aufgabenplaner von Nginx UI führt den Logrotate-Befehl in dem " +"von dir in Minuten festgelegten Intervall aus." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2612,9 +3050,9 @@ msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." msgstr "" -"Stellen Sie sicher, dass Sie einen Reverse-Proxy für das " -".well-known-Verzeichnis zum HTTPChallengePort konfiguriert haben, bevor Sie " -"das Zertifikat erhalten." +"Stellen Sie sicher, dass Sie einen Reverse-Proxy für das .well-known-" +"Verzeichnis zum HTTPChallengePort konfiguriert haben, bevor Sie das " +"Zertifikat erhalten." #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2795,7 +3233,8 @@ msgstr "Mehrzeilige Direktive" #: src/components/AutoCertForm/AutoCertForm.vue:196 msgid "Must be a public IP address accessible from the internet" -msgstr "Muss eine öffentliche IP-Adresse sein, die über das Internet erreichbar ist" +msgstr "" +"Muss eine öffentliche IP-Adresse sein, die über das Internet erreichbar ist" #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:38 #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:56 @@ -2894,6 +3333,10 @@ msgstr "Die Ausgabe von Nginx -T ist leer" msgid "Nginx Access Log Path" msgstr "Nginx Zugriffslog-Pfad" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Der Pfad für den Nginx-Zugriffslog existiert" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2923,6 +3366,14 @@ msgstr "Nginx-Konfiguration enthält keinen stream-enabled-Ordner" msgid "Nginx config directory is not set" msgstr "Das Nginx-Konfigurationsverzeichnis ist nicht festgelegt" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Nginx-Konfigurationsverzeichnis existiert" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Nginx-Konfigurationsdatei existiert" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Die Nginx-Konfiguration wurde wiederhergestellt" @@ -2957,6 +3408,10 @@ msgstr "Nginx-CPU-Auslastung" msgid "Nginx Error Log Path" msgstr "Nginx Fehlerlog-Pfad" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Nginx-Fehlerprotokollpfad existiert" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Nginx-Fehler: {0}" @@ -2994,6 +3449,10 @@ msgstr "Nginx-Speichernutzung" msgid "Nginx PID Path" msgstr "Nginx PID-Pfad" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Nginx-PID-Pfad existiert" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Befehl zum Neuladen von Nginx" @@ -3017,12 +3476,17 @@ msgstr "Beffehl zum Neustarten von Nginx" #: src/views/environments/list/Environment.vue:103 msgid "Nginx restart operations have been dispatched to remote nodes" -msgstr "Die Nginx-Neustart-Operationen wurden an die entfernten Knoten gesendet" +msgstr "" +"Die Nginx-Neustart-Operationen wurden an die entfernten Knoten gesendet" #: src/components/NginxControl/NginxControl.vue:40 msgid "Nginx restarted successfully" msgstr "Nginx erfolgreich neu gestartet" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Der Nginx sbin-Pfad existiert" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Nginx-Testkonfigurationsbefehl" @@ -3046,12 +3510,24 @@ msgstr "Die Nginx-UI-Konfiguration wurde wiederhergestellt" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" "Die Nginx-UI-Konfiguration wurde wiederhergestellt und wird in wenigen " "Sekunden automatisch neu gestartet." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf enthält das conf.d-Verzeichnis" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf enthält das sites-enabled-Verzeichnis" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf enthält das streams-enabled-Verzeichnis" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3163,8 +3639,8 @@ msgid "" "certificates, please synchronize them to the remote nodes in advance." msgstr "" "Hinweis: Wenn die Konfigurationsdatei andere Konfigurationen oder " -"Zertifikate enthält, synchronisiere sie bitte im Voraus mit den " -"Remote-Knoten." +"Zertifikate enthält, synchronisiere sie bitte im Voraus mit den Remote-" +"Knoten." #: src/views/notification/Notification.vue:28 msgid "Notification" @@ -3187,11 +3663,13 @@ msgstr "" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:315 msgid "Number of files processed by cache loader at once" -msgstr "Anzahl der Dateien, die vom Cache-Loader gleichzeitig verarbeitet werden" +msgstr "" +"Anzahl der Dateien, die vom Cache-Loader gleichzeitig verarbeitet werden" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:253 msgid "Number of files processed by cache manager at once" -msgstr "Anzahl der Dateien, die vom Cache-Manager gleichzeitig verarbeitet werden" +msgstr "" +"Anzahl der Dateien, die vom Cache-Manager gleichzeitig verarbeitet werden" #: src/composables/usePerformanceMetrics.ts:129 #: src/composables/usePerformanceMetrics.ts:169 @@ -3265,7 +3743,8 @@ msgstr "Ein" #: src/views/certificate/DNSCredential.vue:99 msgid "Once the verification is complete, the records will be removed." -msgstr "Sobaöd die Überprüfung abgeschlossen ist, werden die Einträge entfernt." +msgstr "" +"Sobaöd die Überprüfung abgeschlossen ist, werden die Einträge entfernt." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:127 #: src/components/NodeCard/NodeCard.vue:51 @@ -3409,7 +3888,8 @@ msgstr "Pfad nicht in den gewährten Zugriffspfaden: {0}" #: src/constants/errors/cert.ts:7 src/constants/errors/config.ts:2 msgid "Path: {0} is not under the nginx conf dir: {1}" -msgstr "Pfad: {0} befindet sich nicht unter dem nginx-Konfigurationsverzeichnis: {1}" +msgstr "" +"Pfad: {0} befindet sich nicht unter dem nginx-Konfigurationsverzeichnis: {1}" #: src/constants/errors/cert.ts:6 msgid "Payload resource is nil" @@ -3499,7 +3979,8 @@ msgstr "Bitte geben Sie das Sicherheitstoken ein" #: src/components/SystemRestore/SystemRestoreContent.vue:210 #: src/components/SystemRestore/SystemRestoreContent.vue:287 msgid "Please enter the security token received during backup" -msgstr "Bitte geben Sie das während der Sicherung erhaltene Sicherheitstoken ein" +msgstr "" +"Bitte geben Sie das während der Sicherung erhaltene Sicherheitstoken ein" #: src/components/AutoCertForm/AutoCertForm.vue:80 msgid "Please enter the server IP address" @@ -3518,22 +3999,23 @@ msgid "" "Please fill in the API authentication credentials provided by your DNS " "provider." msgstr "" -"Bitte fülle die API-Authentifizierungsdaten aus, die dir von deinem " -"DNS-Provider zur Verfügung gestellt wurden." +"Bitte fülle die API-Authentifizierungsdaten aus, die dir von deinem DNS-" +"Provider zur Verfügung gestellt wurden." #: src/components/AutoCertForm/AutoCertForm.vue:168 msgid "" "Please first add credentials in Certification > DNS Credentials, and then " "select one of the credentialsbelow to request the API of the DNS provider." msgstr "" -"Bitte füge zuerst Anmeldeinformationen in Zertifikation > " -"DNS-Anmeldeinformationen hinzu und wähle dann eine der unten aufgeführten " +"Bitte füge zuerst Anmeldeinformationen in Zertifikation > DNS-" +"Anmeldeinformationen hinzu und wähle dann eine der unten aufgeführten " "Anmeldeinformationen aus, um die API des DNS-Anbieters anzufordern." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Bitte generieren Sie sofort neue Wiederherstellungscodes in den " "Einstellungen, um eine Sperrung zu verhindern." @@ -3581,14 +4063,16 @@ msgid "Please log in." msgstr "Bitte melden Sie sich an." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "" -"Bitte beachte, dass die Zeiteinheiten der unten aufgeführten " -"Konfigurationen alle in Sekunden angegeben sind." +"Bitte beachte, dass die Zeiteinheiten der unten aufgeführten Konfigurationen " +"alle in Sekunden angegeben sind." #: src/views/install/components/InstallView.vue:102 msgid "Please resolve all issues before proceeding with installation" -msgstr "Bitte beheben Sie alle Probleme, bevor Sie mit der Installation fortfahren" +msgstr "" +"Bitte beheben Sie alle Probleme, bevor Sie mit der Installation fortfahren" #: src/views/backup/components/BackupCreator.vue:107 msgid "Please save this security token, you will need it for restoration:" @@ -3715,8 +4199,7 @@ msgstr "Geschützter Ordner" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "Die Protokollkonfiguration gilt nur bei direkter Verbindung. Bei Verwendung " "eines Reverse Proxys konfigurieren Sie das Protokoll bitte separat im " @@ -3769,7 +4252,7 @@ msgstr "Aufrufe" msgid "Receive" msgstr "Empfangen" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Erneut prüfen" @@ -3786,9 +4269,9 @@ msgid "" "Recovery codes are used to access your account when you lose access to your " "2FA device. Each code can only be used once." msgstr "" -"Wiederherstellungscodes werden verwendet, um auf Ihr Konto zuzugreifen, " -"wenn Sie keinen Zugriff mehr auf Ihr 2FA-Gerät haben. Jeder Code kann nur " -"einmal verwendet werden." +"Wiederherstellungscodes werden verwendet, um auf Ihr Konto zuzugreifen, wenn " +"Sie keinen Zugriff mehr auf Ihr 2FA-Gerät haben. Jeder Code kann nur einmal " +"verwendet werden." #: src/views/preference/tabs/CertSettings.vue:40 msgid "Recursive Nameservers" @@ -3858,6 +4341,22 @@ msgstr "Nginx neu laden" msgid "Reload nginx failed: {0}" msgstr "Neuladen von nginx fehlgeschlagen: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Neustart von Nginx auf %{node} fehlgeschlagen, Antwort: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Nginx auf %{node} erfolgreich neu geladen" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Fehler beim Neuladen von Remote-Nginx" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Neustart von Remote-Nginx erfolgreich" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "" @@ -3899,22 +4398,59 @@ msgstr "Erfolgreich entfernt" msgid "Rename" msgstr "Umbenennen" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "" +"Umbenennung von %{orig_path} in %{new_path} auf %{env_name} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "%{orig_path} auf %{env_name} erfolgreich in %{new_path} umbenannt" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Fehler beim Umbenennen der Remote-Konfiguration" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Umbenennen der Remote-Konfiguration erfolgreich" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Fehler beim Umbenennen der Remote-Site" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Umbenennung der Remote-Site erfolgreich" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Fehler beim Umbenennen des Remote-Streams" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Umbenennung des Remote-Streams erfolgreich" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Umbenennung der Site %{name} in %{new_name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "" +"Die Umbenennung der Site %{name} in %{new_name} auf %{node} war erfolgreich" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "" +"Umbenennung des Streams %{name} in %{new_name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Stream %{name} auf %{node} erfolgreich in %{new_name} umbenannt" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Erfolgreich umbenannt" @@ -3996,6 +4532,22 @@ msgstr "Neustart" msgid "Restart Nginx" msgstr "Nginx neu starten" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Neustart von Nginx auf %{node} fehlgeschlagen, Antwort: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Nginx auf %{node} erfolgreich neu gestartet" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Fehler beim Neustart von Remote-Nginx" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Neustart von Remote-Nginx erfolgreich" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "" @@ -4209,14 +4761,40 @@ msgstr "Speichern" msgid "Save Directive" msgstr "Anweisung speichern" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Fehler beim Speichern der Remote-Site" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Speichern der Remote-Site erfolgreich" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Fehler beim Speichern des Remote-Streams" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Remote-Stream erfolgreich gespeichert" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Speichern der Site %{name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Website %{name} erfolgreich auf %{node} gespeichert" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Speichern des Streams %{name} auf %{node} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Stream %{name} erfolgreich auf %{node} gespeichert" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Erfolgreich gespeichert" @@ -4256,7 +4834,8 @@ msgstr "Scan-Ergebnisse" #: src/views/preference/components/AuthSettings/TOTP.vue:69 msgid "Scan the QR code with your mobile phone to add the account to the app." -msgstr "Scanne den QR-Code mit deinem Handy, um das Konto zur App hinzuzufügen." +msgstr "" +"Scanne den QR-Code mit deinem Handy, um das Konto zur App hinzuzufügen." #: src/views/nginx_log/NginxLogList.vue:101 msgid "Scanning logs..." @@ -4326,7 +4905,7 @@ msgstr "Ausgewählte {count} Dateien" msgid "Selector" msgstr "Auswähler" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Selbstprüfung" @@ -4418,16 +4997,16 @@ msgstr "Setze HTTP01-Challengeanbieter" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" "Settings.NginxLogSettings.AccessLogPath ist leer, weitere Informationen " "finden Sie unter https://nginxui.com/guide/config-nginx.html" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" "Settings.NginxLogSettings.ErrorLogPath ist leer, weitere Informationen " "finden Sie unter https://nginxui.com/guide/config-nginx.html" @@ -4472,6 +5051,10 @@ msgstr "Site-Protokolle" msgid "Site not found" msgstr "Website nicht gefunden" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "Sites-Verzeichnis existiert" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Liste der Seiten" @@ -4605,6 +5188,14 @@ msgstr "Speicher" msgid "Storage Configuration" msgstr "Speicherkonfiguration" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"Die Überprüfung der Speicherkonfiguration für den Sicherungsauftrag " +"%{backup_name} ist fehlgeschlagen, Fehler: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4632,6 +5223,10 @@ msgstr "Stream ist aktiviert" msgid "Stream not found" msgstr "Stream nicht gefunden" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Streams-Verzeichnis existiert" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Streams-available-Verzeichnis existiert nicht" @@ -4659,25 +5254,12 @@ msgstr "Erfolg" msgid "Sunday" msgstr "Sonntag" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Unterstützung der Kommunikation mit dem Backend über das Server-Sent " -"Events-Protokoll. Wenn Ihre Nginx UI über einen Nginx-Reverse-Proxy " -"verwendet wird, lesen Sie bitte diesen Link, um die entsprechende " -"Konfigurationsdatei zu schreiben: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "Unterstützt die Kommunikation mit dem Backend über das WebSocket-Protokoll. " "Wenn Ihre Nginx-UI über einen Nginx-Reverse-Proxy verwendet wird, lesen Sie " @@ -4719,19 +5301,39 @@ msgstr "Synchronisieren" msgid "Sync Certificate" msgstr "Zertifikat synchronisieren" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "" +"Synchronisierung des Zertifikats %{cert_name} mit %{env_name} fehlgeschlagen" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "Zertifikat %{cert_name} erfolgreich auf %{env_name} synchronisiert" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Fehler beim Synchronisieren des Zertifikats" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Zertifikat erfolgreich synchronisiert" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "" +"Synchronisierung der Konfiguration %{config_name} mit %{env_name} " +"fehlgeschlagen" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "" +"Konfiguration %{config_name} erfolgreich auf %{env_name} synchronisiert" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Fehler beim Synchronisieren der Konfiguration" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Konfiguration erfolgreich synchronisiert" @@ -4827,8 +5429,8 @@ msgid "" "since it was last issued." msgstr "" "Das Zertifikat für die Domain wird alle 30 Minuten überprüft und erneuert, " -"wenn seit der letzten Ausstellung mehr als 1 Woche oder der von Ihnen in " -"den Einstellungen festgelegte Zeitraum vergangen ist." +"wenn seit der letzten Ausstellung mehr als 1 Woche oder der von Ihnen in den " +"Einstellungen festgelegte Zeitraum vergangen ist." #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" @@ -4848,11 +5450,10 @@ msgstr "Die Eingabe ist kein SSL-Zertifikatsschlüssel" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"Der Protokollpfad befindet sich nicht unter den Pfaden in " -"settings.NginxSettings.LogDirWhiteList" +"Der Protokollpfad befindet sich nicht unter den Pfaden in settings." +"NginxSettings.LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4864,7 +5465,8 @@ msgstr "" "Doppelpunkte und Punkte enthalten." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "Das Modell, das für die Code-Vervollständigung verwendet wird. Wenn nicht " "festgelegt, wird das Chat-Modell verwendet." @@ -4903,17 +5505,17 @@ msgid "" "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." msgstr "" -"Die Version vom entfernten Nginx-UI ist nicht mit der lokalen " -"Nginx-UI-Version kompatibel. Um potenzielle Fehler zu vermeiden, " -"aktualisiere bitte das entfernte Nginx-UI, um die lokale Version anzupassen." +"Die Version vom entfernten Nginx-UI ist nicht mit der lokalen Nginx-UI-" +"Version kompatibel. Um potenzielle Fehler zu vermeiden, aktualisiere bitte " +"das entfernte Nginx-UI, um die lokale Version anzupassen." #: src/components/AutoCertForm/AutoCertForm.vue:155 msgid "" "The server_name in the current configuration must be the domain name you " "need to get the certificate, supportmultiple domains." msgstr "" -"Der server_name in der aktuellen Konfiguration muss der Domainname sein, " -"für den Sie das Zertifikat benötigen, und mehrere Domains unterstützen." +"Der server_name in der aktuellen Konfiguration muss der Domainname sein, für " +"den Sie das Zertifikat benötigen, und mehrere Domains unterstützen." #: src/views/preference/tabs/CertSettings.vue:22 #: src/views/preference/tabs/HTTPSettings.vue:14 @@ -4980,14 +5582,23 @@ msgid "This field should not be empty" msgstr "Dieses Feld darf nicht leer sein" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." -msgstr "Dieses Feld sollte nur Buchstaben, Unicode-Zeichen, Zahlen und -_ enthalten." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." +msgstr "" +"Dieses Feld sollte nur Buchstaben, Unicode-Zeichen, Zahlen und -_ enthalten." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" -msgstr "Dieses Feld darf nur Buchstaben, Unicode-Zeichen, Zahlen und -_./: enthalten" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" +msgstr "" +"Dieses Feld darf nur Buchstaben, Unicode-Zeichen, Zahlen und -_./: enthalten" + +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" +"Dies ist eine Testnachricht, die mit %{Timestamp} von Nginx UI gesendet " +"wurde." #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" @@ -5011,25 +5622,25 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Diese Website ist als Standard-Server (default_server) für HTTPS (Port 443) " "konfiguriert. IP-Zertifikate erfordern die Unterstützung einer " -"Zertifizierungsstelle (CA) und sind möglicherweise nicht bei allen " -"ACME-Anbietern verfügbar." +"Zertifizierungsstelle (CA) und sind möglicherweise nicht bei allen ACME-" +"Anbietern verfügbar." #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Diese Website verwendet einen Wildcard-Servernamen (_), der normalerweise " "auf ein IP-basiertes Zertifikat hinweist. IP-Zertifikate erfordern die " -"Unterstützung einer Zertifizierungsstelle (CA) und sind möglicherweise " -"nicht bei allen ACME-Anbietern verfügbar." +"Unterstützung einer Zertifizierungsstelle (CA) und sind möglicherweise nicht " +"bei allen ACME-Anbietern verfügbar." #: src/views/backup/components/BackupCreator.vue:141 msgid "" @@ -5067,7 +5678,8 @@ msgstr "" "Nginx UI wird nach Abschluss der Wiederherstellung neu gestartet." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" "Dies wird das Nginx UI auf %{nodeNames} auf %{version} aktualisieren oder " "neu installieren." @@ -5127,8 +5739,8 @@ msgstr "" #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" "Um sicherzustellen, dass die automatische Zertifikatserneuerung normal " @@ -5140,9 +5752,9 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"Um ein lokales großes Modell zu verwenden, implementiere es mit ollama, " -"vllm oder lmdeploy. Sie bieten einen OpenAI-kompatiblen API-Endpunkt, also " -"setze die baseUrl auf deine lokale API." +"Um ein lokales großes Modell zu verwenden, implementiere es mit ollama, vllm " +"oder lmdeploy. Sie bieten einen OpenAI-kompatiblen API-Endpunkt, also setze " +"die baseUrl auf deine lokale API." #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5204,8 +5816,8 @@ msgid "" "TOTP is a two-factor authentication method that uses a time-based one-time " "password algorithm." msgstr "" -"TOTP ist eine Zwei-Faktor-Authentifizierungsmethode, die einen " -"zeitbasierten Einmalpasswortalgorithmus verwendet." +"TOTP ist eine Zwei-Faktor-Authentifizierungsmethode, die einen zeitbasierten " +"Einmalpasswortalgorithmus verwendet." #: src/language/curd.ts:20 msgid "Trash" @@ -5455,8 +6067,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Wir werden die HTTPChallenge-Konfiguration aus dieser Datei entfernen und " "das Nginx neu laden. Möchtest du fortfahren?" @@ -5515,8 +6127,8 @@ msgid "" "When you generate new recovery codes, you must download or print the new " "codes." msgstr "" -"Wenn Sie neue Wiederherstellungscodes generieren, müssen Sie die neuen " -"Codes herunterladen oder ausdrucken." +"Wenn Sie neue Wiederherstellungscodes generieren, müssen Sie die neuen Codes " +"herunterladen oder ausdrucken." #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:160 msgid "Whether to use a temporary path when writing temporary files" @@ -5580,12 +6192,11 @@ msgstr "Ja" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" -"Sie greifen auf dieses Terminal über eine unsichere HTTP-Verbindung in " -"einer Nicht-Localhost-Domäne zu. Dies könnte sensible Informationen " -"preisgeben." +"Sie greifen auf dieses Terminal über eine unsichere HTTP-Verbindung in einer " +"Nicht-Localhost-Domäne zu. Dies könnte sensible Informationen preisgeben." #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5616,7 +6227,8 @@ msgstr "" "keinen Passkey hinzufügen." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "Sie haben die 2FA noch nicht aktiviert. Bitte aktivieren Sie die 2FA, um " "Wiederherstellungscodes zu generieren." @@ -5643,461 +6255,17 @@ msgstr "Ihre alten Codes funktionieren nicht mehr." msgid "Your passkeys" msgstr "Deine Passkeys" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "" -#~ "[Nginx UI] ACME-Benutzer: %{name}, E-Mail: %{email}, CA-Verzeichnis: " -#~ "%{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] Aktuelles Zertifikat wird für spätere Widerrufung gesichert" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Zertifikat erfolgreich erneuert" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Zertifikat erfolgreich widerrufen" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] Zertifikat wurde für den Server verwendet, Server-TLS-Zertifikat " -#~ "wird neu geladen" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "" -#~ "[Nginx UI] Erstellung eines Clients zur Erleichterung der Kommunikation mit " -#~ "dem CA-Server" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Umgebungsvariablen bereinigt" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Abgeschlossen" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Zertifikat erfolgreich ausgestellt" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Zertifikat wird abgerufen" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Vorbereitung auf den Widerruf des Zertifikats" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Vorbereiten der Lego-Konfigurationen" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Nginx wird neu geladen" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Widerruf abgeschlossen" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Zertifikat wird widerrufen" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Altes Zertifikat wird widerrufen" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] DNS01-Herausforderungsanbieter wird eingerichtet" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Umgebungsvariablen werden gesetzt" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] HTTP01-Herausforderungsanbieter wird eingerichtet" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Schreibe privaten Zertifikatsschlüssel auf die Festplatte" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Zertifikat wird auf die Festplatte geschrieben" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Automatische Sicherung abgeschlossen" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Fehler bei der automatischen Sicherungskonfiguration" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Automatische Sicherung fehlgeschlagen" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Automatische Sicherungsspeicherung fehlgeschlagen" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "" -#~ "Sicherungsauftrag %{backup_name} erfolgreich abgeschlossen, Datei: " -#~ "%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "Sicherungsauftrag %{backup_name} ist beim Hochladen in den Speicher " -#~ "fehlgeschlagen, Fehler: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "" -#~ "Sicherungsauftrag %{backup_name} konnte nicht ausgeführt werden, Fehler: " -#~ "%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "Das Zertifikat %{name} ist abgelaufen" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "Das Zertifikat %{name} läuft in %{days} Tagen ab" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "Das Zertifikat %{name} läuft in 1 Tag ab" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Hinweis zum Zertifikatsablauf" - -#~ msgid "Certificate Expired" -#~ msgstr "Zertifikat abgelaufen" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Zertifikat läuft bald ab" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Zertifikat nicht gefunden: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Zertifikat erfolgreich widerrufen" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Überprüfen Sie, ob /var/run/docker.sock existiert. Wenn Sie das offizielle " -#~ "Nginx UI Docker-Image verwenden, stellen Sie sicher, dass der Docker-Socket " -#~ "wie folgt eingebunden ist: `-v /var/run/docker.sock:/var/run/docker.sock`. " -#~ "Das offizielle Nginx UI-Image verwendet /var/run/docker.sock, um über die " -#~ "Docker Client API mit der Docker Engine des Hosts zu kommunizieren. Diese " -#~ "Funktion wird verwendet, um Nginx in einem anderen Container zu steuern und " -#~ "Container-Ersetzung anstelle von Binär-Ersetzung während OTA-Upgrades von " -#~ "Nginx UI durchzuführen, um sicherzustellen, dass auch " -#~ "Container-Abhängigkeiten aktualisiert werden. Wenn Sie diese Funktion nicht " -#~ "benötigen, fügen Sie die Umgebungsvariable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true zum Container hinzu." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Überprüfen Sie, ob der Pfad für das Nginx-Zugriffsprotokoll existiert. " -#~ "Standardmäßig wird dieser Pfad von 'nginx -V' abgerufen. Wenn er nicht " -#~ "abgerufen werden kann oder der abgerufene Pfad nicht auf eine gültige, " -#~ "vorhandene Datei verweist, wird ein Fehler gemeldet. In diesem Fall müssen " -#~ "Sie die Konfigurationsdatei ändern, um den Zugriffsprotokollpfad anzugeben. " -#~ "Weitere Details finden Sie in der Dokumentation: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Überprüfen Sie, ob das Nginx-Konfigurationsverzeichnis existiert" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Überprüfen Sie, ob die Nginx-Konfigurationsdatei existiert" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Überprüfen Sie, ob der Pfad für das Nginx-Fehlerprotokoll existiert. " -#~ "Standardmäßig wird dieser Pfad über 'nginx -V' abgerufen. Wenn er nicht " -#~ "abgerufen werden kann oder der abgerufene Pfad nicht auf eine gültige, " -#~ "vorhandene Datei verweist, wird ein Fehler gemeldet. In diesem Fall müssen " -#~ "Sie die Konfigurationsdatei ändern, um den Pfad für das Fehlerprotokoll " -#~ "anzugeben. Weitere Details finden Sie in der Dokumentation: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Überprüfen Sie, ob der Nginx-PID-Pfad existiert. Standardmäßig wird dieser " -#~ "Pfad von 'nginx -V' abgerufen. Wenn er nicht abgerufen werden kann, wird " -#~ "ein Fehler gemeldet. In diesem Fall müssen Sie die Konfigurationsdatei " -#~ "ändern, um den Nginx-PID-Pfad anzugeben. Weitere Details finden Sie in der " -#~ "Dokumentation: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Überprüfen Sie, ob der Pfad zu nginx sbin existiert" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Überprüfen Sie, ob die nginx.conf das conf.d-Verzeichnis enthält" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Überprüfen, ob die nginx.conf das sites-enabled-Verzeichnis enthält" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Überprüfen Sie, ob die nginx.conf das streams-enabled-Verzeichnis enthält" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Überprüfen Sie, ob die Verzeichnisse sites-available und sites-enabled im " -#~ "Nginx-Konfigurationsverzeichnis enthalten sind" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Überprüfen Sie, ob die Verzeichnisse streams-available und streams-enabled " -#~ "im Nginx-Konfigurationsverzeichnis enthalten sind" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Löschen von %{path} auf %{env_name} fehlgeschlagen" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{path} auf %{env_name} erfolgreich gelöscht" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Fehler beim Löschen der Remote-Konfiguration" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Entfernte Konfiguration erfolgreich gelöscht" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Fehler beim Löschen des Remote-Streams" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Entfernten Stream erfolgreich gelöscht" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Löschen der Site %{name} von %{node} fehlgeschlagen" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Website %{name} von %{node} erfolgreich gelöscht" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Löschen des Streams %{name} von %{node} fehlgeschlagen" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "Stream %{name} wurde erfolgreich von %{node} gelöscht" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Fehler beim Deaktivieren der Remote-Site-Wartung" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Wartungsmodus der Remote-Website erfolgreich deaktiviert" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Fehler beim Deaktivieren des Remote-Streams" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Remote-Stream erfolgreich deaktiviert" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Deaktivierung der Website %{name} von %{node} fehlgeschlagen" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Website %{name} auf %{node} erfolgreich deaktiviert" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Deaktivierung der Wartung der Website %{name} auf %{node} fehlgeschlagen" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Wartung der Website %{name} auf %{node} erfolgreich deaktiviert" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Deaktivieren des Streams %{name} von %{node} fehlgeschlagen" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Stream %{name} von %{node} erfolgreich deaktiviert" - -#~ msgid "Docker socket exists" -#~ msgstr "Docker-Socket vorhanden" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Fehler beim Aktivieren der Remote-Site-Wartung" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Wartungsmodus für Remote-Website erfolgreich aktiviert" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Fehler beim Aktivieren des Remote-Streams" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Stream erfolgreich aktiviert" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "Aktivierung der Wartung für die Website %{name} auf %{node} fehlgeschlagen" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Wartungsmodus für die Website %{name} auf %{node} erfolgreich aktiviert" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "Aktivierung der Website %{name} auf %{node} fehlgeschlagen" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Website %{name} auf %{node} erfolgreich aktiviert" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "Aktivierung des Streams %{name} auf %{node} fehlgeschlagen" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Stream %{name} auf %{node} erfolgreich aktiviert" - -#~ msgid "External Notification Test" -#~ msgstr "Externer Benachrichtigungstest" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Löschen des Zertifikats aus der Datenbank fehlgeschlagen: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Zertifikat konnte nicht widerrufen werden: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "Die Protokolldatei %{log_path} ist keine reguläre Datei. Wenn Sie nginx-ui " -#~ "in einem Docker-Container verwenden, finden Sie weitere Informationen unter " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Der Pfad für den Nginx-Zugriffslog existiert" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Nginx-Konfigurationsverzeichnis existiert" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Nginx-Konfigurationsdatei existiert" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Nginx-Fehlerprotokollpfad existiert" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Nginx-PID-Pfad existiert" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Der Nginx sbin-Pfad existiert" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf enthält das conf.d-Verzeichnis" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf enthält das sites-enabled-Verzeichnis" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf enthält das streams-enabled-Verzeichnis" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Neustart von Nginx auf %{node} fehlgeschlagen, Antwort: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Nginx auf %{node} erfolgreich neu geladen" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Fehler beim Neuladen von Remote-Nginx" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Neustart von Remote-Nginx erfolgreich" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Umbenennung von %{orig_path} in %{new_path} auf %{env_name} fehlgeschlagen" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "%{orig_path} auf %{env_name} erfolgreich in %{new_path} umbenannt" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Fehler beim Umbenennen des Remote-Streams" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Umbenennung des Remote-Streams erfolgreich" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Umbenennung der Site %{name} in %{new_name} auf %{node} fehlgeschlagen" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Die Umbenennung der Site %{name} in %{new_name} auf %{node} war erfolgreich" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Umbenennung des Streams %{name} in %{new_name} auf %{node} fehlgeschlagen" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Stream %{name} auf %{node} erfolgreich in %{new_name} umbenannt" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Neustart von Nginx auf %{node} fehlgeschlagen, Antwort: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Nginx auf %{node} erfolgreich neu gestartet" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Fehler beim Neustart von Remote-Nginx" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Neustart von Remote-Nginx erfolgreich" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Fehler beim Speichern des Remote-Streams" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Remote-Stream erfolgreich gespeichert" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Speichern der Site %{name} auf %{node} fehlgeschlagen" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Website %{name} erfolgreich auf %{node} gespeichert" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Speichern des Streams %{name} auf %{node} fehlgeschlagen" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Stream %{name} erfolgreich auf %{node} gespeichert" - -#~ msgid "Sites directory exists" -#~ msgstr "Sites-Verzeichnis existiert" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "Die Überprüfung der Speicherkonfiguration für den Sicherungsauftrag " -#~ "%{backup_name} ist fehlgeschlagen, Fehler: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Streams-Verzeichnis existiert" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Synchronisierung des Zertifikats %{cert_name} mit %{env_name} fehlgeschlagen" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Zertifikat %{cert_name} erfolgreich auf %{env_name} synchronisiert" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "" -#~ "Synchronisierung der Konfiguration %{config_name} mit %{env_name} " -#~ "fehlgeschlagen" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Konfiguration %{config_name} erfolgreich auf %{env_name} synchronisiert" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "" -#~ "Dies ist eine Testnachricht, die mit %{Timestamp} von Nginx UI gesendet " -#~ "wurde." +#~ "Unterstützung der Kommunikation mit dem Backend über das Server-Sent " +#~ "Events-Protokoll. Wenn Ihre Nginx UI über einen Nginx-Reverse-Proxy " +#~ "verwendet wird, lesen Sie bitte diesen Link, um die entsprechende " +#~ "Konfigurationsdatei zu schreiben: https://nginxui.com/guide/nginx-proxy-" +#~ "example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Wenn leer, wird das Standard-CA-Verzeichnis verwendet." @@ -6151,7 +6319,8 @@ msgstr "Deine Passkeys" #~ msgstr "Massenaktion erfolgreich angewendet" #~ msgid "Are you sure you want to apply to all selected?" -#~ msgstr "Sind Sie sicher, dass Sie dies auf alle Ausgewählten anwenden möchten?" +#~ msgstr "" +#~ "Sind Sie sicher, dass Sie dies auf alle Ausgewählten anwenden möchten?" #~ msgid "Are you sure you want to delete this item permanently?" #~ msgstr "Sind Sie sicher, dass Sie diesen Artikel endgültig löschen möchten?" @@ -6196,15 +6365,17 @@ msgstr "Deine Passkeys" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "Überprüfen Sie, ob /var/run/docker.sock existiert. Wenn Sie das offizielle " -#~ "Nginx UI Docker-Image verwenden, stellen Sie sicher, dass der Docker-Socket " -#~ "wie folgt eingehängt ist: `-v /var/run/docker.sock:/var/run/docker.sock`." +#~ "Überprüfen Sie, ob /var/run/docker.sock existiert. Wenn Sie das " +#~ "offizielle Nginx UI Docker-Image verwenden, stellen Sie sicher, dass der " +#~ "Docker-Socket wie folgt eingehängt ist: `-v /var/run/docker.sock:/var/run/" +#~ "docker.sock`." #~ msgid "Check if the nginx access log path exists" -#~ msgstr "Überprüfen Sie, ob der Pfad für das Nginx-Zugriffsprotokoll existiert" +#~ msgstr "" +#~ "Überprüfen Sie, ob der Pfad für das Nginx-Zugriffsprotokoll existiert" #~ msgid "Check if the nginx error log path exists" #~ msgstr "Überprüfen Sie, ob der Pfad für das Nginx-Fehlerprotokoll existiert" @@ -6237,12 +6408,13 @@ msgstr "Deine Passkeys" #~ msgstr "Fehler beim Speichern %{msg}" #~ msgid "Failed to save, syntax error(s) was detected in the configuration." -#~ msgstr "Fehler beim Speichern, Syntaxfehler wurden in der Konfiguration erkannt." +#~ msgstr "" +#~ "Fehler beim Speichern, Syntaxfehler wurden in der Konfiguration erkannt." #, fuzzy #~ msgid "" -#~ "When you enable/disable, delete, or save this stream, the nodes set in the " -#~ "Node Group and the nodes selected below will be synchronized." +#~ "When you enable/disable, delete, or save this stream, the nodes set in " +#~ "the Node Group and the nodes selected below will be synchronized." #~ msgstr "" #~ "Wenn du diese Seite aktivierst/deaktivierst, löschst oder speicherst, " #~ "werden die Knoten, die in der Seitenkategorie festgelegt sind, und die " @@ -6315,11 +6487,14 @@ msgstr "Deine Passkeys" #~ msgstr "Speichern erfolgreich" #, fuzzy -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "Speichern erfolgreich" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "Speichern erfolgreich" #, fuzzy @@ -6333,7 +6508,8 @@ msgstr "Deine Passkeys" #~ msgstr "Speichern erfolgreich" #, fuzzy -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "Speichern erfolgreich" #, fuzzy @@ -6347,8 +6523,8 @@ msgstr "Deine Passkeys" #~ msgstr "Scannt nicht möglich? Verwenden Sie die Texttastenbindung" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "" #~ "Wenn du dein Handy verlierst, kannst du den Wiederherstellungscode " #~ "verwenden, um dein 2FA zurückzusetzen." @@ -6359,13 +6535,15 @@ msgstr "Deine Passkeys" #~ msgid "Recovery Code:" #~ msgstr "Wiederherstellungscode:" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "" #~ "Der Wiederherstellungscode wird nur einmal angezeigt, bitte speichere ihn " #~ "an einem sicheren Ort." #~ msgid "Too many login failed attempts, please try again later" -#~ msgstr "Zu viele fehlgeschlagene Anmeldeversuche, bitte versuche es später erneut" +#~ msgstr "" +#~ "Zu viele fehlgeschlagene Anmeldeversuche, bitte versuche es später erneut" #, fuzzy #~ msgid "" diff --git a/app/src/language/en/app.po b/app/src/language/en/app.po index 9b7a6887..ab15ea21 100644 --- a/app/src/language/en/app.po +++ b/app/src/language/en/app.po @@ -1,3 +1,88 @@ +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "" @@ -129,6 +214,7 @@ msgstr "" msgid "All" msgstr "" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "" @@ -238,7 +324,7 @@ msgstr "" msgid "Assistant" msgstr "" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "" @@ -277,6 +363,22 @@ msgstr "" msgid "Auto Backup" msgstr "" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -372,6 +474,19 @@ msgstr "" msgid "Backup Schedule" msgstr "" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "" @@ -542,6 +657,20 @@ msgstr "" msgid "certificate" msgstr "" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "" @@ -550,6 +679,20 @@ msgstr "" msgid "Certificate decode error" msgstr "" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "" @@ -558,6 +701,10 @@ msgstr "" msgid "Certificate name cannot be empty" msgstr "" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "" @@ -579,6 +726,10 @@ msgstr "" msgid "Certificate renewed successfully" msgstr "" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -646,12 +797,90 @@ msgstr "" msgid "Check again" msgstr "" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " "prevents using Passkeys and clipboard features" msgstr "" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "" @@ -1028,6 +1257,14 @@ msgstr "" msgid "Delete" msgstr "" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "" @@ -1040,18 +1277,51 @@ msgstr "" msgid "Delete Permanently" msgstr "" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "" @@ -1138,14 +1408,56 @@ msgstr "" msgid "Disable auto-renewal failed for %{name}" msgstr "" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1216,6 +1528,10 @@ msgstr "" msgid "Docker client not initialized" msgstr "" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "" @@ -1363,14 +1679,56 @@ msgstr "" msgid "Enable Proxy Cache" msgstr "" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "" @@ -1523,6 +1881,10 @@ msgstr "" msgid "External notification configuration not found" msgstr "" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1677,6 +2039,10 @@ msgstr "" msgid "Failed to delete certificate" msgstr "" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1843,6 +2209,10 @@ msgstr "" msgid "Failed to revoke certificate" msgstr "" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "" @@ -2476,6 +2846,13 @@ msgstr "" msgid "Log" msgstr "" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "" @@ -2813,6 +3190,10 @@ msgstr "" msgid "Nginx Access Log Path" msgstr "" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2842,6 +3223,14 @@ msgstr "" msgid "Nginx config directory is not set" msgstr "" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "" @@ -2876,6 +3265,10 @@ msgstr "" msgid "Nginx Error Log Path" msgstr "" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "" @@ -2913,6 +3306,10 @@ msgstr "" msgid "Nginx PID Path" msgstr "" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "" @@ -2942,6 +3339,10 @@ msgstr "" msgid "Nginx restarted successfully" msgstr "" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "" @@ -2969,6 +3370,18 @@ msgid "" "few seconds." msgstr "" +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3426,6 +3839,7 @@ msgid "" "select one of the credentialsbelow to request the API of the DNS provider." msgstr "" +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" "Please generate new recovery codes in the preferences immediately to prevent " @@ -3652,7 +4066,7 @@ msgstr "" msgid "Receive" msgstr "" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "" @@ -3736,6 +4150,22 @@ msgstr "" msgid "Reload nginx failed: {0}" msgstr "" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "" @@ -3775,22 +4205,56 @@ msgstr "" msgid "Rename" msgstr "" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "" @@ -3869,6 +4333,22 @@ msgstr "" msgid "Restart Nginx" msgstr "" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "" @@ -4078,14 +4558,40 @@ msgstr "" msgid "Save Directive" msgstr "" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "" @@ -4192,7 +4698,7 @@ msgstr "" msgid "Selector" msgstr "" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "" @@ -4328,6 +4834,10 @@ msgstr "" msgid "Site not found" msgstr "" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "" @@ -4457,6 +4967,12 @@ msgstr "" msgid "Storage Configuration" msgstr "" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4484,6 +5000,10 @@ msgstr "" msgid "Stream not found" msgstr "" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "" @@ -4511,14 +5031,6 @@ msgstr "" msgid "Sunday" msgstr "" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: https://" -"nginxui.com/guide/nginx-proxy-example.html" -msgstr "" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " @@ -4562,19 +5074,35 @@ msgstr "" msgid "Sync Certificate" msgstr "" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "" @@ -4808,6 +5336,10 @@ msgid "" "_./:" msgstr "" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " diff --git a/app/src/language/es/app.po b/app/src/language/es/app.po index df45882c..237835b8 100644 --- a/app/src/language/es/app.po +++ b/app/src/language/es/app.po @@ -7,18 +7,111 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2024-11-06 18:26+0000\n" "Last-Translator: Kcho \n" -"Language-Team: Spanish " -"\n" +"Language-Team: Spanish \n" "Language: es\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 5.6.2\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] Usuario ACME: %{name}, Correo electrónico: %{email}, Directorio " +"CA: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" +"[Nginx UI] Haciendo copia de seguridad del certificado actual para su " +"posterior revocación" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Certificado renovado con éxito" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Certificado revocado con éxito" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] El certificado se utilizó para el servidor, recargando el " +"certificado TLS del servidor" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" +"[Nginx UI] Creando cliente para facilitar la comunicación con el servidor CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Variables de entorno limpiadas" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Finalizado" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Certificado emitido con éxito" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Obteniendo certificado" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Preparándose para la revocación del certificado" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Preparando configuraciones de lego" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Recargando nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Revocación completada" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Revocando certificado" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Revocando certificado antiguo" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] Configurando el proveedor de desafío DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Configurando variables de entorno" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] Configurando el proveedor de desafío HTTP01" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Escribiendo la clave privada del certificado en el disco" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Escribiendo certificado en el disco" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" -msgstr "* Incluye nodos del grupo %{groupName} y nodos seleccionados manualmente" +msgstr "" +"* Incluye nodos del grupo %{groupName} y nodos seleccionados manualmente" #: src/views/user/userColumns.tsx:30 msgid "2FA" @@ -149,6 +242,7 @@ msgstr "" msgid "All" msgstr "Todos" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Todos los códigos de recuperación han sido utilizados" @@ -162,7 +256,8 @@ msgstr "" "DNS, de lo contrario, la solicitud de certificado fallará." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Cualquier dirección IP accesible puede utilizarse con autoridades de " "certificación privadas" @@ -265,7 +360,7 @@ msgstr "Preguntar por ayuda a ChatGPT" msgid "Assistant" msgstr "Asistente" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Intentar solucionar" @@ -304,6 +399,22 @@ msgstr "auto = núcleos de CPU" msgid "Auto Backup" msgstr "Copia de seguridad automática" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Copia de seguridad automática completada" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Error de configuración de copia de seguridad automática" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Copia de seguridad automática fallida" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Fallo en el almacenamiento de copia de seguridad automática" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -392,17 +503,36 @@ msgstr "La ruta de copia de seguridad no es un directorio: {0}" #: src/constants/errors/backup.ts:62 msgid "Backup path is required for custom directory backup" msgstr "" -"La ruta de respaldo es necesaria para el respaldo de directorio " -"personalizado" +"La ruta de respaldo es necesaria para el respaldo de directorio personalizado" #: src/constants/errors/backup.ts:60 msgid "Backup path not in granted access paths: {0}" -msgstr "La ruta de copia de seguridad no está en las rutas de acceso concedidas: {0}" +msgstr "" +"La ruta de copia de seguridad no está en las rutas de acceso concedidas: {0}" #: src/views/backup/AutoBackup/components/CronEditor.vue:141 msgid "Backup Schedule" msgstr "Programa de copia de seguridad" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Tarea de copia de seguridad %{backup_name} completada con éxito, archivo: " +"%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"La tarea de copia de seguridad %{backup_name} falló durante la carga en el " +"almacenamiento, error: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" +"La tarea de copia de seguridad %{backup_name} no se pudo ejecutar, error: " +"%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Tipo de copia de seguridad" @@ -479,8 +609,8 @@ msgstr "Caché" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:178 msgid "Cache items not accessed within this time will be removed" msgstr "" -"Los elementos de la caché a los que no se acceda dentro de este tiempo " -"serán eliminados" +"Los elementos de la caché a los que no se acceda dentro de este tiempo serán " +"eliminados" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:350 msgid "Cache loader processing time threshold" @@ -581,6 +711,20 @@ msgstr "" msgid "certificate" msgstr "certificado" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "El certificado %{name} ha expirado" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "El certificado %{name} expirará en %{days} días" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "El certificado %{name} expirará en 1 día" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "El contenido del certificado y la clave privada no pueden estar vacíos" @@ -589,6 +733,20 @@ msgstr "El contenido del certificado y la clave privada no pueden estar vacíos" msgid "Certificate decode error" msgstr "Error de decodificación del certificado" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Aviso de caducidad del certificado" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Certificado caducado" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Certificado a punto de expirar" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Archivos de certificado descargados correctamente" @@ -597,6 +755,10 @@ msgstr "Archivos de certificado descargados correctamente" msgid "Certificate name cannot be empty" msgstr "El nombre del certificado no puede estar vacío" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Certificado no encontrado: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Error al analizar el certificado" @@ -618,6 +780,10 @@ msgstr "Intervalo de renovación del Certificado" msgid "Certificate renewed successfully" msgstr "Certificado renovado con éxito" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Certificado revocado con éxito" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -685,6 +851,29 @@ msgstr "Verificar" msgid "Check again" msgstr "Intentar nuevamente" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Verifique si /var/run/docker.sock existe. Si está utilizando la imagen " +"oficial de Docker de Nginx UI, asegúrese de montar el socket de Docker de " +"esta manera: `-v /var/run/docker.sock:/var/run/docker.sock`. La imagen " +"oficial de Nginx UI utiliza /var/run/docker.sock para comunicarse con el " +"motor Docker del host a través de la API de Docker Client. Esta función se " +"utiliza para controlar Nginx en otro contenedor y realizar un reemplazo de " +"contenedor en lugar de un reemplazo binario durante las actualizaciones OTA " +"de Nginx UI para garantizar que las dependencias del contenedor también se " +"actualicen. Si no necesita esta función, agregue la variable de entorno " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true al contenedor." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -693,6 +882,92 @@ msgstr "" "Verifica si HTTPS está habilitado. Usar HTTP fuera de localhost es inseguro " "y evita el uso de Passkeys y funciones del portapapeles" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Verifique si existe la ruta del registro de acceso de nginx. Por defecto, " +"esta ruta se obtiene de 'nginx -V'. Si no se puede obtener o la ruta " +"obtenida no apunta a un archivo válido existente, se reportará un error. En " +"este caso, debe modificar el archivo de configuración para especificar la " +"ruta del registro de acceso. Consulte la documentación para más detalles: " +"https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Verificar si existe el directorio de configuración de nginx" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Verificar si existe el archivo de entrada de configuración de nginx" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Verifique si existe la ruta del registro de errores de nginx. Por defecto, " +"esta ruta se obtiene de 'nginx -V'. Si no se puede obtener o la ruta " +"obtenida no apunta a un archivo válido existente, se reportará un error. En " +"este caso, debe modificar el archivo de configuración para especificar la " +"ruta del registro de errores. Consulte la documentación para más detalles: " +"https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Verifique si existe la ruta del PID de Nginx. Por defecto, esta ruta se " +"obtiene de 'nginx -V'. Si no se puede obtener, se reportará un error. En " +"este caso, debe modificar el archivo de configuración para especificar la " +"ruta del PID de Nginx. Consulte la documentación para más detalles: https://" +"nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Verifique si existe la ruta sbin de nginx" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Verificar si el nginx.conf incluye el directorio conf.d" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Verificar si el nginx.conf incluye el directorio sites-enabled" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "Verificar si el nginx.conf incluye el directorio streams-enabled" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Verificar si los directorios sites-available y sites-enabled están en el " +"directorio de configuración de nginx" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Verificar si los directorios streams-available y streams-enabled están en el " +"directorio de configuración de nginx" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "El texto cifrado es demasiado corto" @@ -716,8 +991,7 @@ msgstr "Limpiado exitoso" #: src/components/SystemRestore/SystemRestoreContent.vue:271 msgid "Click or drag backup file to this area to upload" msgstr "" -"Haga clic o arrastre el archivo de copia de seguridad a esta área para " -"cargar" +"Haga clic o arrastre el archivo de copia de seguridad a esta área para cargar" #: src/language/curd.ts:51 src/language/curd.ts:55 msgid "Click or drag files to this area to upload" @@ -913,8 +1187,8 @@ msgstr "Uso de CPU" #: src/views/dashboard/components/ResourceUsageCard.vue:38 msgid "CPU usage is relatively high, consider optimizing Nginx configuration" msgstr "" -"El uso de la CPU es relativamente alto, considere optimizar la " -"configuración de Nginx" +"El uso de la CPU es relativamente alto, considere optimizar la configuración " +"de Nginx" #: src/views/dashboard/ServerAnalytic.vue:199 msgid "CPU:" @@ -1080,6 +1354,14 @@ msgstr "" msgid "Delete" msgstr "Eliminar" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Error al eliminar %{path} en %{env_name}" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "Se eliminó %{path} en %{env_name} correctamente" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Eliminar certificado" @@ -1092,18 +1374,51 @@ msgstr "Confirmación de eliminación" msgid "Delete Permanently" msgstr "Eliminar Permanentemente" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Error al eliminar la configuración remota" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Eliminación de configuración remota exitosa" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Error al eliminar sitio remoto" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Borrado del sitio remoto correcto" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Error al eliminar transmisión remota" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Eliminación de transmisión remota exitosa" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Eliminar el sitio %{name} de %{node} falló" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Sitio %{name} eliminado de %{node} correctamente" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Eliminar sitio: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Error al eliminar el flujo %{name} de %{node}" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "Se eliminó el flujo %{name} de %{node} correctamente" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Eliminar stream: %{site_name}" @@ -1190,14 +1505,56 @@ msgstr "Desactivar" msgid "Disable auto-renewal failed for %{name}" msgstr "Error al desactivar la renovación automática para %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Error al deshabilitar sitio remoto" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Error al desactivar el mantenimiento del sitio remoto" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Desactivación del mantenimiento del sitio remoto exitosa" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Sitio remoto deshabilitado correctamente" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Error al desactivar transmisión remota" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Desactivación de transmisión remota exitosa" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Desactivar el sitio %{name} desde %{node} falló" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Sitio %{name} deshabilitado en %{node} correctamente" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "Desactivar el mantenimiento del sitio %{name} en %{node} falló" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Desactivación del mantenimiento del sitio %{name} en %{node} exitosa" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Desactivar el flujo %{name} desde %{node} falló" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Deshabilitar el flujo %{name} desde %{node} con éxito" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1268,6 +1625,10 @@ msgstr "¿Quieres eliminar esta transmisión?" msgid "Docker client not initialized" msgstr "Cliente de Docker no inicializado" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "El socket de Docker existe" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "El socket de Docker no existe" @@ -1285,8 +1646,8 @@ msgstr "Dominio" #: src/views/certificate/components/AutoCertManagement.vue:55 msgid "Domains list is empty, try to reopen Auto Cert for %{config}" msgstr "" -"La lista de dominios está vacía, intente reabrir la certificación " -"automática para %{config}" +"La lista de dominios está vacía, intente reabrir la certificación automática " +"para %{config}" #: src/views/certificate/components/CertificateDownload.vue:93 msgid "Download Certificate Files" @@ -1319,8 +1680,8 @@ msgid "" "non-HTTPS websites, except when running on localhost." msgstr "" "Debido a las políticas de seguridad de algunos navegadores, no es posible " -"utilizar claves de acceso en sitios web que no sean HTTPS, excepto cuando " -"se ejecutan en el host local." +"utilizar claves de acceso en sitios web que no sean HTTPS, excepto cuando se " +"ejecutan en el host local." #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1419,14 +1780,56 @@ msgstr "Habilitar HTTPS" msgid "Enable Proxy Cache" msgstr "Habilitar caché de proxy" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Error al habilitar sitio remoto" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Error al habilitar el mantenimiento del sitio remoto" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Habilitar mantenimiento del sitio remoto exitoso" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Sitio remoto habilitado con éxito" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Error al habilitar transmisión remota" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Habilitar transmisión remota exitosa" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "No se pudo habilitar el mantenimiento del sitio %{name} en %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "Habilitar el mantenimiento del sitio %{name} en %{node} correctamente" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "No se pudo habilitar el sitio %{name} en %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Sitio %{name} habilitado en %{node} correctamente" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "No se pudo habilitar el flujo %{name} en %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Habilitar el flujo %{name} en %{node} correctamente" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Habilitar módulo stub_status" @@ -1573,8 +1976,8 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "ID de clave de vinculación de cuenta externa (opcional). Requerido por " "algunos proveedores ACME como ZeroSSL." @@ -1587,6 +1990,10 @@ msgstr "Contenedor Docker externo" msgid "External notification configuration not found" msgstr "Configuración de notificación externa no encontrada" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Prueba de notificación externa" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1608,8 +2015,8 @@ msgstr "Error al adjuntar a la instancia de ejecución: {0}" #: src/constants/errors/backup.ts:5 msgid "Failed to backup Nginx config files: {0}" msgstr "" -"Error al hacer copia de seguridad de los archivos de configuración de " -"Nginx: {0}" +"Error al hacer copia de seguridad de los archivos de configuración de Nginx: " +"{0}" #: src/constants/errors/backup.ts:4 msgid "Failed to backup Nginx UI files: {0}" @@ -1743,6 +2150,10 @@ msgstr "Error al descifrar el directorio de Nginx UI: {0}" msgid "Failed to delete certificate" msgstr "No se pudo eliminar el certificado" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Error al eliminar el certificado de la base de datos: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1903,12 +2314,17 @@ msgstr "Error al restaurar las configuraciones de Nginx: {0}" #: src/constants/errors/backup.ts:40 msgid "Failed to restore Nginx UI files: {0}" -msgstr "Error al restaurar los archivos de la interfaz de usuario de Nginx: {0}" +msgstr "" +"Error al restaurar los archivos de la interfaz de usuario de Nginx: {0}" #: src/views/certificate/components/RemoveCert.vue:49 msgid "Failed to revoke certificate" msgstr "No se pudo revocar el certificado" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "No se pudo revocar el certificado: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Error al guardar la configuración de rendimiento de Nginx" @@ -2027,14 +2443,14 @@ msgid "" "For IP-based certificate configurations, only HTTP-01 challenge method is " "supported. DNS-01 challenge is not compatible with IP-based certificates." msgstr "" -"Para configuraciones de certificados basados en IP, solo se admite el " -"método de desafío HTTP-01. El desafío DNS-01 no es compatible con " -"certificados basados en IP." +"Para configuraciones de certificados basados en IP, solo se admite el método " +"de desafío HTTP-01. El desafío DNS-01 no es compatible con certificados " +"basados en IP." #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "Para certificados basados en IP, especifique la dirección IP del servidor " "que se incluirá en el certificado." @@ -2188,11 +2604,13 @@ msgstr "" msgid "" "If you want to automatically revoke the old certificate, please enable this " "option." -msgstr "Si desea revocar automáticamente el certificado antiguo, active esta opción." +msgstr "" +"Si desea revocar automáticamente el certificado antiguo, active esta opción." #: src/views/preference/components/AuthSettings/AddPasskey.vue:75 msgid "If your browser supports WebAuthn Passkey, a dialog box will appear." -msgstr "Si su navegador admite WebAuthn Passkey, aparecerá un cuadro de diálogo." +msgstr "" +"Si su navegador admite WebAuthn Passkey, aparecerá un cuadro de diálogo." #: src/components/AutoCertForm/AutoCertForm.vue:271 msgid "" @@ -2220,8 +2638,8 @@ msgid "" "Includes master process, worker processes, cache processes, and other Nginx " "processes" msgstr "" -"Incluye proceso maestro, procesos worker, procesos de caché y otros " -"procesos de Nginx" +"Incluye proceso maestro, procesos worker, procesos de caché y otros procesos " +"de Nginx" #: src/components/ProcessingStatus/ProcessingStatus.vue:31 msgid "Indexing..." @@ -2272,7 +2690,8 @@ msgstr "Instalación" #: src/constants/errors/system.ts:3 msgid "Installation is not allowed after 10 minutes of system startup" -msgstr "No se permite la instalación después de 10 minutos del inicio del sistema" +msgstr "" +"No se permite la instalación después de 10 minutos del inicio del sistema" #: src/views/install/components/TimeoutAlert.vue:11 msgid "" @@ -2475,7 +2894,8 @@ msgstr "Dejarlo en blanco no cambiará nada" #: src/constants/errors/user.ts:6 msgid "Legacy recovery code not allowed since totp is not enabled" -msgstr "Código de recuperación heredado no permitido ya que TOTP no está habilitado" +msgstr "" +"Código de recuperación heredado no permitido ya que TOTP no está habilitado" #: src/components/AutoCertForm/AutoCertForm.vue:268 msgid "Lego disable CNAME Support" @@ -2560,6 +2980,16 @@ msgstr "Ubicaciones" msgid "Log" msgstr "Registro" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"El archivo de registro %{log_path} no es un archivo regular. Si está " +"utilizando nginx-ui en un contenedor Docker, consulte https://nginxui.com/" +"zh_CN/guide/config-nginx-log.html para obtener más información." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Lista de registros" @@ -2582,20 +3012,20 @@ msgstr "Rotación de logs" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "Logrotate, de forma predeterminada, está habilitado en la mayoría de las " "distribuciones de Linux para los usuarios que instalan Nginx UI en la " "máquina host, por lo que no es necesario modificar los parámetros en esta " "página. Para los usuarios que instalan Nginx UI usando contenedores Docker, " "pueden habilitar esta opción manualmente. El programador de tareas crontab " -"de Nginx UI ejecutará el comando logrotate en el intervalo que establezca " -"en minutos." +"de Nginx UI ejecutará el comando logrotate en el intervalo que establezca en " +"minutos." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2625,8 +3055,8 @@ msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." msgstr "" -"Asegúrese de haber configurado un proxy reverso para el directorio " -".well-known en HTTPChallengePort antes de obtener el certificado." +"Asegúrese de haber configurado un proxy reverso para el directorio .well-" +"known en HTTPChallengePort antes de obtener el certificado." #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2906,6 +3336,10 @@ msgstr "La salida de Nginx -T está vacía" msgid "Nginx Access Log Path" msgstr "Ruta de registro de acceso de Nginx" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Existe la ruta del registro de acceso de Nginx" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2935,6 +3369,14 @@ msgstr "La configuración de Nginx no incluye stream-enabled" msgid "Nginx config directory is not set" msgstr "El directorio de configuración de Nginx no está establecido" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "El directorio de configuración de Nginx existe" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "El archivo de entrada de configuración de Nginx existe" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "La configuración de Nginx ha sido restaurada" @@ -2969,6 +3411,10 @@ msgstr "Tasa de uso de CPU de Nginx" msgid "Nginx Error Log Path" msgstr "Ruta de registro de errores de Nginx" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "La ruta del registro de errores de Nginx existe" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Error de Nginx: {0}" @@ -3006,6 +3452,10 @@ msgstr "Uso de memoria de Nginx" msgid "Nginx PID Path" msgstr "Ruta del PID de Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "La ruta del PID de Nginx existe" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Comando de recarga de Nginx" @@ -3029,12 +3479,17 @@ msgstr "Comando de reinicio de Nginx" #: src/views/environments/list/Environment.vue:103 msgid "Nginx restart operations have been dispatched to remote nodes" -msgstr "Las operaciones de reinicio de Nginx se han enviado a los nodos remotos" +msgstr "" +"Las operaciones de reinicio de Nginx se han enviado a los nodos remotos" #: src/components/NginxControl/NginxControl.vue:40 msgid "Nginx restarted successfully" msgstr "Nginx reiniciado con éxito" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "El camino sbin de Nginx existe" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Comando de prueba de configuración de Nginx" @@ -3058,12 +3513,24 @@ msgstr "La configuración de Nginx UI ha sido restaurada" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" "La configuración de Nginx UI ha sido restaurada y se reiniciará " "automáticamente en unos segundos." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf incluye el directorio conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf incluye el directorio sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf incluye el directorio streams-enabled" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3105,8 +3572,8 @@ msgid "" "the server IP address below for the certificate." msgstr "" "No se encontró ninguna dirección IP específica en la configuración de " -"server_name. Especifique la dirección IP del servidor a continuación para " -"el certificado." +"server_name. Especifique la dirección IP del servidor a continuación para el " +"certificado." #: src/components/NgxConfigEditor/NgxUpstream.vue:103 msgid "No upstreams configured" @@ -3381,8 +3848,8 @@ msgid "" msgstr "" "Las llaves de acceso son credenciales de autenticación web que validan su " "identidad mediante el tacto, el reconocimiento facial, una contraseña de " -"dispositivo o un PIN. Se pueden utilizar como reemplazo de contraseña o " -"como método de autenticación de dos factores." +"dispositivo o un PIN. Se pueden utilizar como reemplazo de contraseña o como " +"método de autenticación de dos factores." #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3423,7 +3890,8 @@ msgstr "La ruta no está en las rutas de acceso concedidas: {0}" #: src/constants/errors/cert.ts:7 src/constants/errors/config.ts:2 msgid "Path: {0} is not under the nginx conf dir: {1}" -msgstr "La ruta: {0} no está dentro del directorio de configuración de nginx: {1}" +msgstr "" +"La ruta: {0} no está dentro del directorio de configuración de nginx: {1}" #: src/constants/errors/cert.ts:6 msgid "Payload resource is nil" @@ -3534,8 +4002,8 @@ msgid "" "Please fill in the API authentication credentials provided by your DNS " "provider." msgstr "" -"Por favor, complete las credenciales de autenticación API proporcionadas " -"por su proveedor de DNS." +"Por favor, complete las credenciales de autenticación API proporcionadas por " +"su proveedor de DNS." #: src/components/AutoCertForm/AutoCertForm.vue:168 msgid "" @@ -3543,13 +4011,14 @@ msgid "" "select one of the credentialsbelow to request the API of the DNS provider." msgstr "" "Primero agregue las credenciales en Certificación > Credenciales de DNS y " -"luego seleccione una de las credenciales de aquí debajo para llamar a la " -"API del proveedor de DNS." +"luego seleccione una de las credenciales de aquí debajo para llamar a la API " +"del proveedor de DNS." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Por favor, genere nuevos códigos de recuperación en las preferencias de " "inmediato para evitar el bloqueo." @@ -3597,14 +4066,16 @@ msgid "Please log in." msgstr "Por favor, inicie sesión." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "" "Tenga en cuenta que las siguientes configuraciones de unidades de tiempo " "están todas en segundos." #: src/views/install/components/InstallView.vue:102 msgid "Please resolve all issues before proceeding with installation" -msgstr "Por favor, resuelva todos los problemas antes de proceder con la instalación" +msgstr "" +"Por favor, resuelva todos los problemas antes de proceder con la instalación" #: src/views/backup/components/BackupCreator.vue:107 msgid "Please save this security token, you will need it for restoration:" @@ -3731,12 +4202,11 @@ msgstr "Directorio protegido" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" -"La configuración del protocolo solo tiene efecto al conectarse " -"directamente. Si utiliza un proxy inverso, configure el protocolo por " -"separado en el proxy inverso." +"La configuración del protocolo solo tiene efecto al conectarse directamente. " +"Si utiliza un proxy inverso, configure el protocolo por separado en el proxy " +"inverso." #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3785,7 +4255,7 @@ msgstr "Lecturas" msgid "Receive" msgstr "Recibido" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Volver a comprobar" @@ -3874,6 +4344,22 @@ msgstr "Recargar Nginx" msgid "Reload nginx failed: {0}" msgstr "Recarga de nginx fallida: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Recarga de Nginx en %{node} fallida, respuesta: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Recarga de Nginx en %{node} exitosa" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Error al recargar Nginx remoto" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Reinicio remoto de Nginx exitoso" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "La solicitud de recarga falló, por favor verifique su conexión de red" @@ -3913,22 +4399,57 @@ msgstr "Eliminado con éxito" msgid "Rename" msgstr "Renombrar" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "Error al renombrar %{orig_path} a %{new_path} en %{env_name}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "Renombrar %{orig_path} a %{new_path} en %{env_name} con éxito" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Error al renombrar la configuración remota" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Renombrar Configuración Remota Exitosa" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Error al renombrar sitio remoto" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Renombrar sitio remoto exitoso" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Error al renombrar el flujo remoto" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Renombrar flujo remoto exitoso" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Error al renombrar el sitio %{name} a %{new_name} en %{node}" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "" +"El sitio %{name} se ha renombrado a %{new_name} en %{node} correctamente" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "Error al renombrar el flujo %{name} a %{new_name} en %{node}" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Flujo %{name} renombrado a %{new_name} en %{node} correctamente" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Renombrado con éxito" @@ -4010,6 +4531,22 @@ msgstr "Reiniciar" msgid "Restart Nginx" msgstr "Reiniciar Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Reinicio de Nginx en %{node} falló, respuesta: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Reinicio de Nginx en %{node} exitoso" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Error al reiniciar Nginx remoto" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Reinicio remoto de Nginx exitoso" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "La solicitud de reinicio falló, por favor verifique su conexión de red" @@ -4221,14 +4758,40 @@ msgstr "Guardar" msgid "Save Directive" msgstr "Guardar Directiva" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Error al guardar sitio remoto" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Guardar sitio remoto exitoso" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Error al guardar el flujo remoto" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Guardar transmisión remota exitoso" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Error al guardar el sitio %{name} en %{node}" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Sitio %{name} guardado en %{node} correctamente" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Error al guardar el flujo %{name} en %{node}" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Flujo %{name} guardado en %{node} correctamente" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Guardado exitosamente" @@ -4339,7 +4902,7 @@ msgstr "Seleccionados {count} archivos" msgid "Selector" msgstr "Seleccionador" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Autocomprobación" @@ -4431,19 +4994,19 @@ msgstr "Usando el proveedor de desafíos HTTP01" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath está vacío, consulte " -"https://nginxui.com/guide/config-nginx.html para obtener más información" +"Settings.NginxLogSettings.AccessLogPath está vacío, consulte https://nginxui." +"com/guide/config-nginx.html para obtener más información" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath está vacío, consulte " -"https://nginxui.com/guide/config-nginx.html para obtener más información" +"Settings.NginxLogSettings.ErrorLogPath está vacío, consulte https://nginxui." +"com/guide/config-nginx.html para obtener más información" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4485,6 +5048,10 @@ msgstr "Registros del sitio" msgid "Site not found" msgstr "Sitio no encontrado" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "El directorio de sitios existe" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Lista de sitios" @@ -4618,6 +5185,14 @@ msgstr "Almacenamiento" msgid "Storage Configuration" msgstr "Configuración de almacenamiento" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"Falló la validación de la configuración de almacenamiento para la tarea de " +"copia de seguridad %{backup_name}, error: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4630,7 +5205,8 @@ msgstr "La ruta de almacenamiento es obligatoria" #: src/constants/errors/backup.ts:61 msgid "Storage path not in granted access paths: {0}" -msgstr "La ruta de almacenamiento no está en las rutas de acceso concedidas: {0}" +msgstr "" +"La ruta de almacenamiento no está en las rutas de acceso concedidas: {0}" #: src/views/backup/AutoBackup/AutoBackup.vue:70 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:45 @@ -4645,6 +5221,10 @@ msgstr "La transmisión está habilitada" msgid "Stream not found" msgstr "Transmisión no encontrada" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "El directorio de streams existe" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "El directorio streams-available no existe" @@ -4672,25 +5252,12 @@ msgstr "Éxito" msgid "Sunday" msgstr "Domingo" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Soporte para la comunicación con el backend a través del protocolo " -"Server-Sent Events. Si su Nginx UI se está utilizando a través de un proxy " -"inverso de Nginx, consulte este enlace para escribir el archivo de " -"configuración correspondiente: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "Permite la comunicación con el backend a través del protocolo WebSocket. Si " "su interfaz de Nginx se utiliza a través de un proxy inverso de Nginx, " @@ -4732,19 +5299,35 @@ msgstr "Sincronizar" msgid "Sync Certificate" msgstr "Sincronizar Certificado" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "Error al sincronizar el certificado %{cert_name} con %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "Sincronización del Certificado %{cert_name} a %{env_name} exitosa" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Error de Certificado de Sincronización" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Sincronización del Certificado exitosa" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "Error al sincronizar la configuración %{config_name} con %{env_name}" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "Configuración %{config_name} sincronizada con éxito en %{env_name}" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Error de Configuración de Sincronización" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Configuración de sincronización exitosa" @@ -4861,11 +5444,10 @@ msgstr "La entrada no es una clave de certificado SSL" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"La ruta del registro no está bajo las rutas en " -"settings.NginxSettings.LogDirWhiteList" +"La ruta del registro no está bajo las rutas en settings.NginxSettings." +"LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4877,7 +5459,8 @@ msgstr "" "dos puntos y puntos." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "El modelo utilizado para la finalización de código, si no se establece, se " "utilizará el modelo de chat." @@ -4993,14 +5576,21 @@ msgid "This field should not be empty" msgstr "Este campo no debe estar vacío" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." -msgstr "Este campo solo debe contener letras, caracteres Unicode, números y -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." +msgstr "" +"Este campo solo debe contener letras, caracteres Unicode, números y -_." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" -msgstr "Este campo solo debe contener letras, caracteres Unicode, números y -_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" +msgstr "" +"Este campo solo debe contener letras, caracteres Unicode, números y -_./:" + +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "Este es un mensaje de prueba enviado a %{TimeStamp} de Nginx UI." #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" @@ -5008,8 +5598,7 @@ msgid "" "After enabling it, you can view performance statistics" msgstr "" "Este módulo proporciona estadísticas de solicitudes de Nginx, recuento de " -"conexiones, etc. Después de activarlo, podrá ver estadísticas de " -"rendimiento." +"conexiones, etc. Después de activarlo, podrá ver estadísticas de rendimiento." #: src/views/preference/tabs/ExternalNotify.vue:15 msgid "This notification is disabled" @@ -5025,25 +5614,25 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" -"Este sitio está configurado como un servidor predeterminado " -"(default_server) para HTTPS (puerto 443). Los certificados IP requieren el " -"soporte de una Autoridad de Certificación (CA) y pueden no estar " -"disponibles con todos los proveedores de ACME." +"Este sitio está configurado como un servidor predeterminado (default_server) " +"para HTTPS (puerto 443). Los certificados IP requieren el soporte de una " +"Autoridad de Certificación (CA) y pueden no estar disponibles con todos los " +"proveedores de ACME." #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Este sitio utiliza un nombre de servidor comodín (_) que normalmente indica " -"un certificado basado en IP. Los certificados IP requieren el soporte de " -"una Autoridad de Certificación (CA) y pueden no estar disponibles con todos " -"los proveedores de ACME." +"un certificado basado en IP. Los certificados IP requieren el soporte de una " +"Autoridad de Certificación (CA) y pueden no estar disponibles con todos los " +"proveedores de ACME." #: src/views/backup/components/BackupCreator.vue:141 msgid "" @@ -5080,7 +5669,8 @@ msgstr "" "interfaz de Nginx se reiniciará una vez completada la restauración." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" "Esto actualizará o reinstalará la interfaz de usuario de Nginx en " "%{nodeNames} a %{version}." @@ -5114,8 +5704,7 @@ msgstr "Título" #: src/views/certificate/components/RemoveCert.vue:124 msgid "To confirm revocation, please type \"Revoke\" in the field below:" msgstr "" -"Para confirmar la revocación, escriba \"Revocar\" en el campo a " -"continuación:" +"Para confirmar la revocación, escriba \"Revocar\" en el campo a continuación:" #: src/views/preference/components/AuthSettings/TOTP.vue:68 msgid "" @@ -5132,21 +5721,21 @@ msgid "" "and restart Nginx UI." msgstr "" "Para garantizar la seguridad, no se puede agregar la configuración de " -"Webauthn a través de la UI. Configure manualmente lo siguiente en el " -"archivo de configuración app.ini y reinicie Nginx UI." +"Webauthn a través de la UI. Configure manualmente lo siguiente en el archivo " +"de configuración app.ini y reinicie Nginx UI." #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"Para garantizar que la renovación automática del certificado pueda " -"funcionar con normalidad, debemos agregar una ubicación para transmitir la " -"solicitud de la autoridad al backend, y debemos guardar este archivo y " -"volver a cargar Nginx. ¿Estás seguro de que quieres continuar?" +"Para garantizar que la renovación automática del certificado pueda funcionar " +"con normalidad, debemos agregar una ubicación para transmitir la solicitud " +"de la autoridad al backend, y debemos guardar este archivo y volver a cargar " +"Nginx. ¿Estás seguro de que quieres continuar?" #: src/views/preference/tabs/OpenAISettings.vue:36 msgid "" @@ -5454,9 +6043,9 @@ msgid "" "or consider using a private CA." msgstr "" "Advertencia: Parece que esta es una dirección IP privada. Las entidades de " -"certificación públicas como Let's Encrypt no pueden emitir certificados " -"para IPs privadas. Utilice una dirección IP pública o considere usar una " -"entidad de certificación privada." +"certificación públicas como Let's Encrypt no pueden emitir certificados para " +"IPs privadas. Utilice una dirección IP pública o considere usar una entidad " +"de certificación privada." #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5468,8 +6057,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Eliminaremos la configuración de HTTPChallenge de este archivo y " "recargaremos Nginx. ¿Estás seguro de que quieres continuar?" @@ -5590,8 +6179,8 @@ msgstr "Si" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" "Estás accediendo a esta terminal a través de una conexión HTTP insegura en " "un dominio que no es localhost. Esto puede exponer información sensible." @@ -5599,8 +6188,8 @@ msgstr "" #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" msgstr "" -"No tienes permiso para eliminar un archivo fuera de la ruta de " -"configuración de nginx" +"No tienes permiso para eliminar un archivo fuera de la ruta de configuración " +"de nginx" #: src/views/system/Upgrade.vue:224 msgid "You are using the latest version" @@ -5627,7 +6216,8 @@ msgstr "" "llave de acceso." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "Aún no has habilitado la autenticación en dos pasos. Por favor, habilítala " "para generar códigos de recuperación." @@ -5654,455 +6244,17 @@ msgstr "Tus códigos antiguos ya no funcionarán." msgid "Your passkeys" msgstr "Sus llaves de acceso" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "" -#~ "[Nginx UI] Usuario ACME: %{name}, Correo electrónico: %{email}, Directorio " -#~ "CA: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "" -#~ "[Nginx UI] Haciendo copia de seguridad del certificado actual para su " -#~ "posterior revocación" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Certificado renovado con éxito" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Certificado revocado con éxito" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] El certificado se utilizó para el servidor, recargando el " -#~ "certificado TLS del servidor" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] Creando cliente para facilitar la comunicación con el servidor CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Variables de entorno limpiadas" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Finalizado" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Certificado emitido con éxito" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Obteniendo certificado" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Preparándose para la revocación del certificado" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Preparando configuraciones de lego" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Recargando nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Revocación completada" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Revocando certificado" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Revocando certificado antiguo" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] Configurando el proveedor de desafío DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Configurando variables de entorno" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] Configurando el proveedor de desafío HTTP01" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Escribiendo la clave privada del certificado en el disco" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Escribiendo certificado en el disco" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Copia de seguridad automática completada" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Error de configuración de copia de seguridad automática" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Copia de seguridad automática fallida" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Fallo en el almacenamiento de copia de seguridad automática" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "" -#~ "Tarea de copia de seguridad %{backup_name} completada con éxito, archivo: " -#~ "%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "La tarea de copia de seguridad %{backup_name} falló durante la carga en el " -#~ "almacenamiento, error: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "" -#~ "La tarea de copia de seguridad %{backup_name} no se pudo ejecutar, error: " -#~ "%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "El certificado %{name} ha expirado" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "El certificado %{name} expirará en %{days} días" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "El certificado %{name} expirará en 1 día" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Aviso de caducidad del certificado" - -#~ msgid "Certificate Expired" -#~ msgstr "Certificado caducado" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Certificado a punto de expirar" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Certificado no encontrado: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Certificado revocado con éxito" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Verifique si /var/run/docker.sock existe. Si está utilizando la imagen " -#~ "oficial de Docker de Nginx UI, asegúrese de montar el socket de Docker de " -#~ "esta manera: `-v /var/run/docker.sock:/var/run/docker.sock`. La imagen " -#~ "oficial de Nginx UI utiliza /var/run/docker.sock para comunicarse con el " -#~ "motor Docker del host a través de la API de Docker Client. Esta función se " -#~ "utiliza para controlar Nginx en otro contenedor y realizar un reemplazo de " -#~ "contenedor en lugar de un reemplazo binario durante las actualizaciones OTA " -#~ "de Nginx UI para garantizar que las dependencias del contenedor también se " -#~ "actualicen. Si no necesita esta función, agregue la variable de entorno " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true al contenedor." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Verifique si existe la ruta del registro de acceso de nginx. Por defecto, " -#~ "esta ruta se obtiene de 'nginx -V'. Si no se puede obtener o la ruta " -#~ "obtenida no apunta a un archivo válido existente, se reportará un error. En " -#~ "este caso, debe modificar el archivo de configuración para especificar la " -#~ "ruta del registro de acceso. Consulte la documentación para más detalles: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Verificar si existe el directorio de configuración de nginx" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Verificar si existe el archivo de entrada de configuración de nginx" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Verifique si existe la ruta del registro de errores de nginx. Por defecto, " -#~ "esta ruta se obtiene de 'nginx -V'. Si no se puede obtener o la ruta " -#~ "obtenida no apunta a un archivo válido existente, se reportará un error. En " -#~ "este caso, debe modificar el archivo de configuración para especificar la " -#~ "ruta del registro de errores. Consulte la documentación para más detalles: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Verifique si existe la ruta del PID de Nginx. Por defecto, esta ruta se " -#~ "obtiene de 'nginx -V'. Si no se puede obtener, se reportará un error. En " -#~ "este caso, debe modificar el archivo de configuración para especificar la " -#~ "ruta del PID de Nginx. Consulte la documentación para más detalles: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Verifique si existe la ruta sbin de nginx" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Verificar si el nginx.conf incluye el directorio conf.d" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Verificar si el nginx.conf incluye el directorio sites-enabled" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Verificar si el nginx.conf incluye el directorio streams-enabled" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Verificar si los directorios sites-available y sites-enabled están en el " -#~ "directorio de configuración de nginx" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Verificar si los directorios streams-available y streams-enabled están en " -#~ "el directorio de configuración de nginx" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Error al eliminar %{path} en %{env_name}" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "Se eliminó %{path} en %{env_name} correctamente" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Error al eliminar la configuración remota" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Eliminación de configuración remota exitosa" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Error al eliminar transmisión remota" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Eliminación de transmisión remota exitosa" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Eliminar el sitio %{name} de %{node} falló" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Sitio %{name} eliminado de %{node} correctamente" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Error al eliminar el flujo %{name} de %{node}" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "Se eliminó el flujo %{name} de %{node} correctamente" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Error al desactivar el mantenimiento del sitio remoto" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Desactivación del mantenimiento del sitio remoto exitosa" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Error al desactivar transmisión remota" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Desactivación de transmisión remota exitosa" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Desactivar el sitio %{name} desde %{node} falló" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Sitio %{name} deshabilitado en %{node} correctamente" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Desactivar el mantenimiento del sitio %{name} en %{node} falló" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Desactivación del mantenimiento del sitio %{name} en %{node} exitosa" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Desactivar el flujo %{name} desde %{node} falló" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Deshabilitar el flujo %{name} desde %{node} con éxito" - -#~ msgid "Docker socket exists" -#~ msgstr "El socket de Docker existe" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Error al habilitar el mantenimiento del sitio remoto" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Habilitar mantenimiento del sitio remoto exitoso" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Error al habilitar transmisión remota" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Habilitar transmisión remota exitosa" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "No se pudo habilitar el mantenimiento del sitio %{name} en %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Habilitar el mantenimiento del sitio %{name} en %{node} correctamente" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "No se pudo habilitar el sitio %{name} en %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Sitio %{name} habilitado en %{node} correctamente" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "No se pudo habilitar el flujo %{name} en %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Habilitar el flujo %{name} en %{node} correctamente" - -#~ msgid "External Notification Test" -#~ msgstr "Prueba de notificación externa" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Error al eliminar el certificado de la base de datos: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "No se pudo revocar el certificado: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "El archivo de registro %{log_path} no es un archivo regular. Si está " -#~ "utilizando nginx-ui en un contenedor Docker, consulte " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html para obtener más " -#~ "información." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Existe la ruta del registro de acceso de Nginx" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "El directorio de configuración de Nginx existe" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "El archivo de entrada de configuración de Nginx existe" - -#~ msgid "Nginx error log path exists" -#~ msgstr "La ruta del registro de errores de Nginx existe" - -#~ msgid "Nginx PID path exists" -#~ msgstr "La ruta del PID de Nginx existe" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "El camino sbin de Nginx existe" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf incluye el directorio conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf incluye el directorio sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf incluye el directorio streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Recarga de Nginx en %{node} fallida, respuesta: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Recarga de Nginx en %{node} exitosa" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Error al recargar Nginx remoto" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Reinicio remoto de Nginx exitoso" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Error al renombrar %{orig_path} a %{new_path} en %{env_name}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "Renombrar %{orig_path} a %{new_path} en %{env_name} con éxito" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Error al renombrar el flujo remoto" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Renombrar flujo remoto exitoso" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Error al renombrar el sitio %{name} a %{new_name} en %{node}" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "El sitio %{name} se ha renombrado a %{new_name} en %{node} correctamente" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Error al renombrar el flujo %{name} a %{new_name} en %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Flujo %{name} renombrado a %{new_name} en %{node} correctamente" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Reinicio de Nginx en %{node} falló, respuesta: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Reinicio de Nginx en %{node} exitoso" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Error al reiniciar Nginx remoto" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Reinicio remoto de Nginx exitoso" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Error al guardar el flujo remoto" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Guardar transmisión remota exitoso" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Error al guardar el sitio %{name} en %{node}" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Sitio %{name} guardado en %{node} correctamente" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Error al guardar el flujo %{name} en %{node}" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Flujo %{name} guardado en %{node} correctamente" - -#~ msgid "Sites directory exists" -#~ msgstr "El directorio de sitios existe" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "Falló la validación de la configuración de almacenamiento para la tarea de " -#~ "copia de seguridad %{backup_name}, error: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "El directorio de streams existe" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Error al sincronizar el certificado %{cert_name} con %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Sincronización del Certificado %{cert_name} a %{env_name} exitosa" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "Error al sincronizar la configuración %{config_name} con %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Configuración %{config_name} sincronizada con éxito en %{env_name}" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "Este es un mensaje de prueba enviado a %{TimeStamp} de Nginx UI." +#~ "Soporte para la comunicación con el backend a través del protocolo Server-" +#~ "Sent Events. Si su Nginx UI se está utilizando a través de un proxy " +#~ "inverso de Nginx, consulte este enlace para escribir el archivo de " +#~ "configuración correspondiente: https://nginxui.com/guide/nginx-proxy-" +#~ "example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Si se deja en blanco, se utilizará el directorio CA predeterminado." @@ -6191,8 +6343,8 @@ msgstr "Sus llaves de acceso" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" #~ "Verifique si /var/run/docker.sock existe. Si está utilizando la imagen " #~ "oficial de Docker de Nginx UI, asegúrese de que el socket de Docker esté " @@ -6211,7 +6363,8 @@ msgstr "Sus llaves de acceso" #~ msgstr "Base de datos (Opcional, default: database)" #~ msgid "The filename cannot contain the following characters: %{c}" -#~ msgstr "El nombre del archivo no puede contener los siguientes caracteres: %{c}" +#~ msgstr "" +#~ "El nombre del archivo no puede contener los siguientes caracteres: %{c}" #~ msgid "Unknown issue" #~ msgstr "Problema desconocido" @@ -6221,7 +6374,8 @@ msgstr "Sus llaves de acceso" #~ msgstr "Este elemento de Auto Cert es inválido, elimínelo por favor." #~ msgid "Automatically indexed from site and stream configurations." -#~ msgstr "\"Indexado automáticamente desde configuraciones de sitio y transmisión.\"" +#~ msgstr "" +#~ "\"Indexado automáticamente desde configuraciones de sitio y transmisión.\"" #, fuzzy #~ msgid "Nginx Conf Include Conf.d" @@ -6231,12 +6385,14 @@ msgstr "Sus llaves de acceso" #~ msgstr "Error de formato %{msg}" #~ msgid "Failed to save, syntax error(s) was detected in the configuration." -#~ msgstr "No se pudo guardar, se detectó un error(es) de sintaxis en la configuración." +#~ msgstr "" +#~ "No se pudo guardar, se detectó un error(es) de sintaxis en la " +#~ "configuración." #, fuzzy #~ msgid "" -#~ "When you enable/disable, delete, or save this stream, the nodes set in the " -#~ "Node Group and the nodes selected below will be synchronized." +#~ "When you enable/disable, delete, or save this stream, the nodes set in " +#~ "the Node Group and the nodes selected below will be synchronized." #~ msgstr "" #~ "Cuando habilite/deshabilite, elimine o guarde este sitio, los nodos " #~ "configurados en la categoría del sitio y los nodos seleccionados a " @@ -6278,7 +6434,8 @@ msgstr "Sus llaves de acceso" #~ msgstr "Desplegado con éxito" #~ msgid "Disable site %{site} on %{node} error, response: %{resp}" -#~ msgstr "Error al deshabilitar el sitio %{site} en %{node}, respuesta: %{resp}" +#~ msgstr "" +#~ "Error al deshabilitar el sitio %{site} en %{node}, respuesta: %{resp}" #~ msgid "Do you want to deploy this file to remote server?" #~ msgid_plural "Do you want to deploy this file to remote servers?" @@ -6301,23 +6458,26 @@ msgstr "Sus llaves de acceso" #~ msgid "Please upgrade the remote Nginx UI to the latest version" #~ msgstr "" #~ "Sincronización de la configuración %{cert_name} a %{env_name} falló, por " -#~ "favor actualiza la interfaz de usuario de Nginx en el servidor remoto a la " -#~ "última versión" +#~ "favor actualiza la interfaz de usuario de Nginx en el servidor remoto a " +#~ "la última versión" -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "" #~ "Renombrar %{orig_path} a %{new_path} en %{env_name} falló, respuesta: " #~ "%{resp}" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "Renombrar %{orig_path} a %{new_path} en %{env_name} con éxito" #, fuzzy #~ msgid "Save site %{site} to %{node} error, response: %{resp}" #~ msgstr "" -#~ "Sincronización del Certificado %{cert_name} a %{env_name} falló, respuesta: " -#~ "%{resp}" +#~ "Sincronización del Certificado %{cert_name} a %{env_name} falló, " +#~ "respuesta: %{resp}" #~ msgid "" #~ "Sync Certificate %{cert_name} to %{env_name} failed, please upgrade the " @@ -6326,10 +6486,11 @@ msgstr "Sus llaves de acceso" #~ "Sincronización del Certificado %{cert_name} a %{env_name} fallida, por " #~ "favor actualice la interfaz de Nginx remota a la última versión" -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "" -#~ "Sincronización del Certificado %{cert_name} a %{env_name} falló, respuesta: " -#~ "%{resp}" +#~ "Sincronización del Certificado %{cert_name} a %{env_name} falló, " +#~ "respuesta: %{resp}" #~ msgid "Sync config %{config_name} to %{env_name} failed, response: %{resp}" #~ msgstr "" @@ -6340,8 +6501,8 @@ msgstr "Sus llaves de acceso" #~ msgstr "¿No puede escanear? Utilice la vinculación con una llave de texto" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "" #~ "Si pierde su teléfono móvil, puede usar el código de recuperación para " #~ "restablecer su 2FA." @@ -6352,10 +6513,11 @@ msgstr "Sus llaves de acceso" #~ msgid "Recovery Code:" #~ msgstr "Código de Recuperación:" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "" -#~ "El código de recuperación se muestra solo una vez, por favor guárdalo en un " -#~ "lugar seguro." +#~ "El código de recuperación se muestra solo una vez, por favor guárdalo en " +#~ "un lugar seguro." #~ msgid "Too many login failed attempts, please try again later" #~ msgstr "" @@ -6433,9 +6595,9 @@ msgstr "Sus llaves de acceso" #~ "Once the verification is complete, the records will be removed.\n" #~ "Please note that the unit of time configurations below are all in seconds." #~ msgstr "" -#~ "Complete las credenciales de autenticación de la API proporcionadas por su " -#~ "proveedor de DNS. Agregaremos uno o más registros TXT a los registros DNS " -#~ "de su dominio para verificar la propiedad. Una vez que se complete la " +#~ "Complete las credenciales de autenticación de la API proporcionadas por " +#~ "su proveedor de DNS. Agregaremos uno o más registros TXT a los registros " +#~ "DNS de su dominio para verificar la propiedad. Una vez que se complete la " #~ "verificación, se eliminarán los registros. Tenga en cuenta que las " #~ "configuraciones de tiempo que aparecen debajo están todas en segundos." @@ -6458,13 +6620,13 @@ msgstr "Sus llaves de acceso" #~ msgstr "Sincronización de operaciones" #~ msgid "" -#~ "Such as Reload and Configs, regex can configure as " -#~ "`/api/nginx/reload|/api/nginx/test|/api/config/.+`, please see system api" +#~ "Such as Reload and Configs, regex can configure as `/api/nginx/reload|/" +#~ "api/nginx/test|/api/config/.+`, please see system api" #~ msgstr "" #~ "Las reglas de sincronización de operación de `Recarga` y `Gestión de " -#~ "Configuración` se pueden configurar como " -#~ "`/api/nginx/reload|/api/nginx/test|/api/config/.+`, consulte la API del " -#~ "sistema para obtener más detalles" +#~ "Configuración` se pueden configurar como `/api/nginx/reload|/api/nginx/" +#~ "test|/api/config/.+`, consulte la API del sistema para obtener más " +#~ "detalles" #~ msgid "SyncApiRegex" #~ msgstr "Expresión Regular de la API" diff --git a/app/src/language/fr_FR/app.po b/app/src/language/fr_FR/app.po index 39438e26..22640113 100644 --- a/app/src/language/fr_FR/app.po +++ b/app/src/language/fr_FR/app.po @@ -5,15 +5,107 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2025-02-13 01:42+0000\n" "Last-Translator: Picman \n" -"Language-Team: French " -"\n" +"Language-Team: French \n" "Language: fr_FR\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Weblate 5.9.2\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] Utilisateur ACME : %{name}, Email : %{email}, Répertoire CA : " +"%{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" +"[Nginx UI] Sauvegarde du certificat actuel pour une révocation ultérieure" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Certificat renouvelé avec succès" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Certificat révoqué avec succès" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] Le certificat a été utilisé pour le serveur, rechargement du " +"certificat TLS du serveur" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" +"[Nginx UI] Création d'un client pour faciliter la communication avec le " +"serveur CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Variables d'environnement nettoyées" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Terminé" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Certificat émis avec succès" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Obtention du certificat" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Préparation de la révocation du certificat" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Préparation des configurations lego" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Rechargement de nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Révocation terminée" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Révoquer le certificat" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Révoquer l'ancien certificat" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] Configuration du fournisseur de défi DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Configuration des variables d'environnement" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] Configuration du fournisseur de défi HTTP01" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Écriture de la clé privée du certificat sur le disque" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Écriture du certificat sur le disque" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "" @@ -149,6 +241,7 @@ msgstr "" msgid "All" msgstr "Tous" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Tous les codes de récupération ont été utilisés" @@ -162,7 +255,8 @@ msgstr "" "DNS, sinon la demande de certificat échouera." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Toute adresse IP accessible peut être utilisée avec des autorités de " "certification privées" @@ -209,7 +303,8 @@ msgstr "Êtes-vous sûr de vouloir générer de nouveaux codes de récupération #: src/views/preference/components/AuthSettings/TOTP.vue:85 msgid "Are you sure to reset 2FA?" -msgstr "Êtes-vous sûr de vouloir réinitialiser l'authentification à deux facteurs ?" +msgstr "" +"Êtes-vous sûr de vouloir réinitialiser l'authentification à deux facteurs ?" #: src/components/Notification/Notification.vue:110 #: src/views/notification/Notification.vue:40 @@ -265,7 +360,7 @@ msgstr "Demander de l'aide à ChatGPT" msgid "Assistant" msgstr "Assistant" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Tenter de corriger" @@ -304,6 +399,22 @@ msgstr "auto = cœurs CPU" msgid "Auto Backup" msgstr "Sauvegarde automatique" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Sauvegarde automatique terminée" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Erreur de configuration de sauvegarde automatique" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Échec de la sauvegarde automatique" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Échec du stockage de sauvegarde automatique" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -366,8 +477,8 @@ msgstr "Sauvegarde" #: src/components/SystemRestore/SystemRestoreContent.vue:155 msgid "Backup file integrity check failed, it may have been tampered with" msgstr "" -"La vérification de l'intégrité du fichier de sauvegarde a échoué, il a " -"peut-être été falsifié" +"La vérification de l'intégrité du fichier de sauvegarde a échoué, il a peut-" +"être été falsifié" #: src/constants/errors/backup.ts:41 msgid "Backup file not found: {0}" @@ -397,12 +508,32 @@ msgstr "" #: src/constants/errors/backup.ts:60 msgid "Backup path not in granted access paths: {0}" -msgstr "Le chemin de sauvegarde n'est pas dans les chemins d'accès accordés : {0}" +msgstr "" +"Le chemin de sauvegarde n'est pas dans les chemins d'accès accordés : {0}" #: src/views/backup/AutoBackup/components/CronEditor.vue:141 msgid "Backup Schedule" msgstr "Planification de sauvegarde" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Tâche de sauvegarde %{backup_name} terminée avec succès, fichier : " +"%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"La tâche de sauvegarde %{backup_name} a échoué lors du téléchargement vers " +"le stockage, erreur : %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" +"La tâche de sauvegarde %{backup_name} n'a pas pu s'exécuter, erreur : " +"%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Type de sauvegarde" @@ -456,7 +587,8 @@ msgstr "Mise à jour par lot" #: src/language/curd.ts:38 msgid "Belows are selected items that you want to batch modify" -msgstr "Ci-dessous sont sélectionnés les éléments que vous voulez modifier en masse" +msgstr "" +"Ci-dessous sont sélectionnés les éléments que vous voulez modifier en masse" #: src/constants/errors/nginx.ts:3 msgid "Block is nil" @@ -476,7 +608,8 @@ msgstr "Cache" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:178 msgid "Cache items not accessed within this time will be removed" -msgstr "Les éléments du cache non consultés pendant cette période seront supprimés" +msgstr "" +"Les éléments du cache non consultés pendant cette période seront supprimés" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:350 msgid "Cache loader processing time threshold" @@ -545,7 +678,8 @@ msgstr "Impossible d'accéder au chemin de stockage {0} : {1}" #: src/constants/errors/user.ts:11 msgid "Cannot change initial user password in demo mode" -msgstr "Impossible de modifier le mot de passe de l'utilisateur initial en mode démo" +msgstr "" +"Impossible de modifier le mot de passe de l'utilisateur initial en mode démo" #: src/components/ConfigHistory/DiffViewer.vue:72 msgid "Cannot compare: Missing content" @@ -576,6 +710,20 @@ msgstr "Le chemin du certificat n'est pas dans le dossier conf de nginx" msgid "certificate" msgstr "certificat" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "Le certificat %{name} a expiré" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "Le certificat %{name} expirera dans %{days} jours" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "Le certificat %{name} expirera dans 1 jour" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "Le contenu du certificat et la clé privée ne peuvent pas être vides" @@ -584,6 +732,20 @@ msgstr "Le contenu du certificat et la clé privée ne peuvent pas être vides" msgid "Certificate decode error" msgstr "Erreur de décodage du certificat" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Avis d'expiration du certificat" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Certificat expiré" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Certificat expirant bientôt" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Fichiers de certificat téléchargés avec succès" @@ -592,6 +754,10 @@ msgstr "Fichiers de certificat téléchargés avec succès" msgid "Certificate name cannot be empty" msgstr "Le nom du certificat ne peut pas être vide" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Certificat introuvable : %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Erreur d'analyse du certificat" @@ -613,6 +779,10 @@ msgstr "Intervalle de renouvellement du certificat" msgid "Certificate renewed successfully" msgstr "Certificat renouvelé avec succès" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Certificat révoqué avec succès" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -678,6 +848,29 @@ msgstr "Vérifier" msgid "Check again" msgstr "Revérifier" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Vérifiez si /var/run/docker.sock existe. Si vous utilisez l'image Docker " +"officielle de Nginx UI, assurez-vous que le socket Docker est monté comme " +"ceci : `-v /var/run/docker.sock:/var/run/docker.sock`. L'image officielle de " +"Nginx UI utilise /var/run/docker.sock pour communiquer avec le moteur Docker " +"de l'hôte via l'API Docker Client. Cette fonctionnalité est utilisée pour " +"contrôler Nginx dans un autre conteneur et effectuer un remplacement de " +"conteneur plutôt qu'un remplacement binaire lors des mises à jour OTA de " +"Nginx UI pour s'assurer que les dépendances du conteneur sont également " +"mises à jour. Si vous n'avez pas besoin de cette fonctionnalité, ajoutez la " +"variable d'environnement NGINX_UI_IGNORE_DOCKER_SOCKET=true au conteneur." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -687,6 +880,93 @@ msgstr "" "sécurisé et empêche l'utilisation des Passkeys et des fonctionnalités du " "presse-papiers" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Vérifiez si le chemin du journal d'accès nginx existe. Par défaut, ce chemin " +"est obtenu à partir de 'nginx -V'. S'il ne peut pas être obtenu ou si le " +"chemin obtenu ne pointe pas vers un fichier valide existant, une erreur sera " +"signalée. Dans ce cas, vous devez modifier le fichier de configuration pour " +"spécifier le chemin du journal d'accès. Consultez la documentation pour plus " +"de détails : https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Vérifier si le répertoire de configuration de nginx existe" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Vérifier si le fichier d'entrée de configuration nginx existe" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Vérifiez si le chemin du journal des erreurs de nginx existe. Par défaut, ce " +"chemin est obtenu à partir de 'nginx -V'. S'il ne peut pas être obtenu ou si " +"le chemin obtenu ne pointe pas vers un fichier valide existant, une erreur " +"sera signalée. Dans ce cas, vous devez modifier le fichier de configuration " +"pour spécifier le chemin du journal des erreurs. Consultez la documentation " +"pour plus de détails : https://nginxui.com/zh_CN/guide/config-nginx." +"html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Vérifiez si le chemin du PID de Nginx existe. Par défaut, ce chemin est " +"obtenu à partir de 'nginx -V'. S'il ne peut pas être obtenu, une erreur sera " +"signalée. Dans ce cas, vous devez modifier le fichier de configuration pour " +"spécifier le chemin du PID de Nginx. Consultez la documentation pour plus de " +"détails: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Vérifiez si le chemin d'accès à nginx sbin existe" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Vérifier si le nginx.conf inclut le répertoire conf.d" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Vérifier si le nginx.conf inclut le répertoire sites-enabled" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "Vérifier si le nginx.conf inclut le répertoire streams-enabled" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Vérifier si les répertoires sites-available et sites-enabled se trouvent " +"dans le répertoire de configuration de nginx" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Vérifier si les répertoires streams-available et streams-enabled se trouvent " +"dans le répertoire de configuration de nginx" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "Texte de chiffrement trop court" @@ -715,11 +995,13 @@ msgstr "" #: src/language/curd.ts:51 src/language/curd.ts:55 msgid "Click or drag files to this area to upload" -msgstr "Cliquez ou faites glisser des fichiers dans cette zone pour les télécharger" +msgstr "" +"Cliquez ou faites glisser des fichiers dans cette zone pour les télécharger" #: src/language/curd.ts:52 src/language/curd.ts:56 msgid "Click or drag folders to this area to upload" -msgstr "Cliquez ou faites glisser des dossiers dans cette zone pour télécharger" +msgstr "" +"Cliquez ou faites glisser des dossiers dans cette zone pour télécharger" #: src/views/preference/components/AuthSettings/TOTP.vue:110 msgid "Click to copy" @@ -1076,6 +1358,14 @@ msgstr "" msgid "Delete" msgstr "Supprimer" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Échec de la suppression de %{path} sur %{env_name}" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{path} supprimé avec succès sur %{env_name}" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Supprimer le certificat" @@ -1088,18 +1378,51 @@ msgstr "Confirmation de suppression" msgid "Delete Permanently" msgstr "Supprimer définitivement" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Erreur de suppression de la configuration distante" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Suppression de la configuration distante réussie" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Erreur de suppression du site distant" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Suppression du site distant réussie" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Erreur de suppression du flux distant" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Suppression du flux distant réussie" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Échec de la suppression du site %{name} de %{node}" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Suppression du site %{name} de %{node} réussie" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Supprimer le site : %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Échec de la suppression du flux %{name} de %{node}" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "Le flux %{name} a été supprimé de %{node} avec succès" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Supprimer le flux : %{stream_name}" @@ -1186,14 +1509,57 @@ msgstr "Désactiver" msgid "Disable auto-renewal failed for %{name}" msgstr "Échec de la désactivation du renouvellement automatique pour %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Erreur de désactivation du site distant" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Erreur de désactivation de la maintenance du site distant" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Désactivation de la maintenance du site distant réussie" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Site distant désactivé avec succès" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Erreur de désactivation du flux à distance" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Désactivation du flux distant réussie" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Désactivation du site %{name} depuis %{node} a échoué" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Site %{name} désactivé sur %{node} avec succès" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "" +"Échec de la désactivation de la maintenance du site %{name} sur %{node}" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Désactivation de la maintenance du site %{name} sur %{node} réussie" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Échec de la désactivation du flux %{name} depuis %{node}" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Désactivation du flux %{name} depuis %{node} réussie" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1233,7 +1599,8 @@ msgstr "DNS01" #: src/components/AutoCertForm/AutoCertForm.vue:261 msgid "Do not enable this option unless you are sure that you need it." -msgstr "N'activez pas cette option sauf si vous êtes sûr d'en avoir avez besoin." +msgstr "" +"N'activez pas cette option sauf si vous êtes sûr d'en avoir avez besoin." #: src/views/site/components/SiteStatusSelect.vue:120 msgid "Do you want to %{action} this site?" @@ -1264,6 +1631,10 @@ msgstr "Voulez-vous supprimer cet upstream ?" msgid "Docker client not initialized" msgstr "Client Docker non initialisé" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Le socket Docker existe" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Le socket Docker n'existe pas" @@ -1280,7 +1651,8 @@ msgstr "Domaine" #: src/views/certificate/components/AutoCertManagement.vue:55 msgid "Domains list is empty, try to reopen Auto Cert for %{config}" -msgstr "La liste des domaines est vide, essayez de rouvrir Auto Cert pour %{config}" +msgstr "" +"La liste des domaines est vide, essayez de rouvrir Auto Cert pour %{config}" #: src/views/certificate/components/CertificateDownload.vue:93 msgid "Download Certificate Files" @@ -1413,14 +1785,56 @@ msgstr "Activer HTTPS" msgid "Enable Proxy Cache" msgstr "Activer le cache du proxy" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Erreur d'activation du site distant" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Erreur d'activation de la maintenance du site distant" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Activation de la maintenance du site distant réussie" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Activation du site distant réussie" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Erreur d'activation du flux distant" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Activation du flux distant réussie" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "Échec de l'activation de la maintenance du site %{name} sur %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "Activation de la maintenance du site %{name} sur %{node} réussie" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "Échec de l'activation du site %{name} sur %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Site %{name} activé sur %{node} avec succès" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "Échec de l'activation du flux %{name} sur %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Activation du flux %{name} sur %{node} réussie" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Activer le module stub_status" @@ -1567,8 +1981,8 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "ID de clé de liaison de compte externe (facultatif). Requis pour certains " "fournisseurs ACME comme ZeroSSL." @@ -1581,6 +1995,10 @@ msgstr "Conteneur Docker externe" msgid "External notification configuration not found" msgstr "Configuration de notification externe introuvable" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Test de notification externe" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1735,6 +2153,10 @@ msgstr "Échec du décryptage du répertoire Nginx UI : {0}" msgid "Failed to delete certificate" msgstr "Échec de la suppression du certificat" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Échec de la suppression du certificat de la base de données : %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1903,6 +2325,10 @@ msgstr "" msgid "Failed to revoke certificate" msgstr "Échec de la révocation du certificat" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Échec de la révocation du certificat : %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Échec de l'enregistrement des paramètres de performance de Nginx" @@ -2027,8 +2453,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "Pour les certificats basés sur IP, veuillez spécifier l'adresse IP du " "serveur qui sera incluse dans le certificat." @@ -2088,7 +2514,8 @@ msgstr "Échec de la récupération des données" #: src/constants/errors/cert.ts:12 msgid "Get dns credential error: {0}" -msgstr "Erreur lors de la récupération des informations d'identification DNS : {0}" +msgstr "" +"Erreur lors de la récupération des informations d'identification DNS : {0}" #: src/views/environments/list/BatchUpgrader.vue:181 #: src/views/system/Upgrade.vue:188 @@ -2129,7 +2556,8 @@ msgstr "Cacher" #: src/views/dashboard/components/PerformanceStatisticsCard.vue:87 msgid "Higher value means better connection reuse" -msgstr "Une valeur plus élevée signifie une meilleure réutilisation de la connexion" +msgstr "" +"Une valeur plus élevée signifie une meilleure réutilisation de la connexion" #: src/views/config/components/ConfigLeftPanel.vue:254 #: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:87 @@ -2197,8 +2625,8 @@ msgid "" "If your domain has CNAME records and you cannot obtain certificates, you " "need to enable this option." msgstr "" -"Si votre domaine possède des entrées CNAME et que vous ne pouvez pas " -"obtenir de certificats, activez cette option." +"Si votre domaine possède des entrées CNAME et que vous ne pouvez pas obtenir " +"de certificats, activez cette option." #: src/views/certificate/CertificateList/Certificate.vue:27 msgid "Import" @@ -2270,15 +2698,16 @@ msgstr "Installation" #: src/constants/errors/system.ts:3 msgid "Installation is not allowed after 10 minutes of system startup" -msgstr "L'installation n'est pas autorisée après 10 minutes de démarrage du système" +msgstr "" +"L'installation n'est pas autorisée après 10 minutes de démarrage du système" #: src/views/install/components/TimeoutAlert.vue:11 msgid "" "Installation is not allowed after 10 minutes of system startup, please " "restart the Nginx UI." msgstr "" -"L'installation n'est pas autorisée après 10 minutes de démarrage du " -"système, veuillez redémarrer l'interface Nginx." +"L'installation n'est pas autorisée après 10 minutes de démarrage du système, " +"veuillez redémarrer l'interface Nginx." #: src/views/preference/tabs/LogrotateSettings.vue:26 msgid "Interval" @@ -2558,6 +2987,16 @@ msgstr "Emplacements" msgid "Log" msgstr "Journal" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"Le fichier journal %{log_path} n'est pas un fichier régulier. Si vous " +"utilisez nginx-ui dans un conteneur Docker, veuillez consulter https://" +"nginxui.com/zh_CN/guide/config-nginx-log.html pour plus d'informations." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Liste des journaux" @@ -2580,20 +3019,20 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "Logrotate est activé par défaut dans la plupart des distributions Linux " "grand public pour les utilisateurs qui installent Nginx UI directement sur " "la machine hôte. Vous n'avez donc pas besoin de modifier les paramètres de " -"cette page. Pour les utilisateurs qui installent Nginx UI via des " -"conteneurs Docker, vous pouvez activer manuellement cette option. Le " -"planificateur de tâches crontab de Nginx UI exécutera la commande logrotate " -"à l'intervalle que vous avez défini en minutes." +"cette page. Pour les utilisateurs qui installent Nginx UI via des conteneurs " +"Docker, vous pouvez activer manuellement cette option. Le planificateur de " +"tâches crontab de Nginx UI exécutera la commande logrotate à l'intervalle " +"que vous avez défini en minutes." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2623,8 +3062,8 @@ msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." msgstr "" -"Assurez-vous d'avoir configuré un proxy inverse pour le répertoire " -".well-known vers HTTPChallengePort avant d'obtenir le certificat." +"Assurez-vous d'avoir configuré un proxy inverse pour le répertoire .well-" +"known vers HTTPChallengePort avant d'obtenir le certificat." #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2904,6 +3343,10 @@ msgstr "La sortie de Nginx -T est vide" msgid "Nginx Access Log Path" msgstr "Chemin du journal d'accès Nginx" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Le chemin du journal d'accès Nginx existe" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2933,6 +3376,14 @@ msgstr "La configuration Nginx n'inclut pas stream-enabled" msgid "Nginx config directory is not set" msgstr "Le répertoire de configuration de Nginx n'est pas défini" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Le répertoire de configuration Nginx existe" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Le fichier d'entrée de configuration Nginx existe" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "La configuration de Nginx a été restaurée" @@ -2967,6 +3418,10 @@ msgstr "Taux d'utilisation du CPU par Nginx" msgid "Nginx Error Log Path" msgstr "Chemin du journal des erreurs Nginx" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Le chemin du journal d'erreurs de Nginx existe" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Erreur Nginx : {0}" @@ -3004,6 +3459,10 @@ msgstr "Utilisation de la mémoire par Nginx" msgid "Nginx PID Path" msgstr "Chemin du PID de Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Le chemin du PID de Nginx existe" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Commande de rechargement de Nginx" @@ -3015,7 +3474,8 @@ msgstr "Échec du rechargement de Nginx : {0}" #: src/views/environments/list/Environment.vue:89 msgid "Nginx reload operations have been dispatched to remote nodes" -msgstr "Les opérations de rechargement de Nginx ont été envoyées aux nœuds distants" +msgstr "" +"Les opérations de rechargement de Nginx ont été envoyées aux nœuds distants" #: src/components/NginxControl/NginxControl.vue:26 msgid "Nginx reloaded successfully" @@ -3027,12 +3487,17 @@ msgstr "Commande de redémarrage de Nginx" #: src/views/environments/list/Environment.vue:103 msgid "Nginx restart operations have been dispatched to remote nodes" -msgstr "Les opérations de redémarrage de Nginx ont été envoyées aux nœuds distants" +msgstr "" +"Les opérations de redémarrage de Nginx ont été envoyées aux nœuds distants" #: src/components/NginxControl/NginxControl.vue:40 msgid "Nginx restarted successfully" msgstr "Nginx a redémarré avec succès" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Le chemin sbin de Nginx existe" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Commande de test de configuration Nginx" @@ -3056,12 +3521,24 @@ msgstr "La configuration de Nginx UI a été restaurée" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" "La configuration de Nginx UI a été restaurée et redémarrera automatiquement " "dans quelques secondes." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf inclut le répertoire conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf inclut le répertoire sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf inclut le répertoire streams-enabled" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3274,7 +3751,8 @@ msgstr "Activé" #: src/views/certificate/DNSCredential.vue:99 msgid "Once the verification is complete, the records will be removed." -msgstr "Une fois la vérification terminée, les enregistrements seront supprimés." +msgstr "" +"Une fois la vérification terminée, les enregistrements seront supprimés." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:127 #: src/components/NodeCard/NodeCard.vue:51 @@ -3420,8 +3898,8 @@ msgstr "Le chemin n'est pas dans les chemins d'accès accordés : {0}" #: src/constants/errors/cert.ts:7 src/constants/errors/config.ts:2 msgid "Path: {0} is not under the nginx conf dir: {1}" msgstr "" -"Le chemin : {0} ne se trouve pas dans le répertoire de configuration nginx " -": {1}" +"Le chemin : {0} ne se trouve pas dans le répertoire de configuration nginx : " +"{1}" #: src/constants/errors/cert.ts:6 msgid "Payload resource is nil" @@ -3542,10 +4020,11 @@ msgstr "" "DNS, puis sélectionner l'un des identifiants ci-dessous pour demander l'API " "du fournisseur DNS." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Veuillez générer immédiatement de nouveaux codes de récupération dans les " "préférences pour éviter un verrouillage." @@ -3593,14 +4072,16 @@ msgid "Please log in." msgstr "Veuillez vous connecter." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "" "Veuillez noter que les unités de temps des configurations ci-dessous sont " "toutes en secondes." #: src/views/install/components/InstallView.vue:102 msgid "Please resolve all issues before proceeding with installation" -msgstr "Veuillez résoudre tous les problèmes avant de procéder à l'installation" +msgstr "" +"Veuillez résoudre tous les problèmes avant de procéder à l'installation" #: src/views/backup/components/BackupCreator.vue:107 msgid "Please save this security token, you will need it for restoration:" @@ -3727,12 +4208,11 @@ msgstr "Répertoire protégé" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "La configuration du protocole ne prend effet que lors d'une connexion " -"directe. Si vous utilisez un proxy inverse, veuillez configurer le " -"protocole séparément dans le proxy inverse." +"directe. Si vous utilisez un proxy inverse, veuillez configurer le protocole " +"séparément dans le proxy inverse." #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3781,7 +4261,7 @@ msgstr "Lectures" msgid "Receive" msgstr "Réception" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Vérifier à nouveau" @@ -3870,11 +4350,26 @@ msgstr "Recharger nginx" msgid "Reload nginx failed: {0}" msgstr "Échec du rechargement de nginx : {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Rechargement de Nginx sur %{node} a échoué, réponse : %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Rechargement de Nginx sur %{node} réussi" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Erreur de rechargement de Nginx distant" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Rechargement distant de Nginx réussi" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "" -"La demande de rechargement a échoué, veuillez vérifier votre connexion " -"réseau" +"La demande de rechargement a échoué, veuillez vérifier votre connexion réseau" #: src/components/NginxControl/NginxControl.vue:77 msgid "Reloading" @@ -3911,22 +4406,56 @@ msgstr "Supprimé avec succès" msgid "Rename" msgstr "Renommer" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "Échec du renommage de %{orig_path} en %{new_path} sur %{env_name}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "%{orig_path} renommé en %{new_path} sur %{env_name} avec succès" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Erreur lors du renommage de la configuration distante" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Renommage de la configuration distante réussi" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Erreur de renommage du site distant" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Renommage du site distant réussi" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Erreur de renommage du flux distant" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Renommage du flux distant réussi" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Échec du renommage du site %{name} en %{new_name} sur %{node}" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "Le site %{name} a été renommé en %{new_name} sur %{node} avec succès" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "Échec du renommage du flux %{name} en %{new_name} sur %{node}" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Flux %{name} renommé en %{new_name} sur %{node} avec succès" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Renommage réussi" @@ -4008,9 +4537,26 @@ msgstr "Redémarrer" msgid "Restart Nginx" msgstr "Redémarrer Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Redémarrage de Nginx sur %{node} a échoué, réponse : %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Redémarrage de Nginx sur %{node} réussi" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Erreur de redémarrage de Nginx distant" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Redémarrage distant de Nginx réussi" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" -msgstr "La demande de redémarrage a échoué, veuillez vérifier votre connexion réseau" +msgstr "" +"La demande de redémarrage a échoué, veuillez vérifier votre connexion réseau" #: src/components/NginxControl/NginxControl.vue:82 msgid "Restarting" @@ -4219,14 +4765,40 @@ msgstr "Enregistrer" msgid "Save Directive" msgstr "Enregistrer la directive" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Erreur lors de l'enregistrement du site distant" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Enregistrement du site distant réussi" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Erreur lors de l'enregistrement du flux distant" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Enregistrement du flux distant réussi" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Échec de l'enregistrement du site %{name} sur %{node}" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Site %{name} enregistré sur %{node} avec succès" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Échec de l'enregistrement du flux %{name} sur %{node}" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Flux %{name} enregistré sur %{node} avec succès" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Enregistrement réussi" @@ -4337,7 +4909,7 @@ msgstr "{count} fichiers sélectionnés" msgid "Selector" msgstr "Sélecteur" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Vérification automatique" @@ -4429,19 +5001,19 @@ msgstr "Configuration du fournisseur de défi HTTP01" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath est vide, consultez " -"https://nginxui.com/guide/config-nginx.html pour plus d'informations" +"Settings.NginxLogSettings.AccessLogPath est vide, consultez https://nginxui." +"com/guide/config-nginx.html pour plus d'informations" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath est vide, consultez " -"https://nginxui.com/guide/config-nginx.html pour plus d'informations" +"Settings.NginxLogSettings.ErrorLogPath est vide, consultez https://nginxui." +"com/guide/config-nginx.html pour plus d'informations" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4483,6 +5055,10 @@ msgstr "Journaux du site" msgid "Site not found" msgstr "Site non trouvé" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "Le répertoire des sites existe" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Liste des sites" @@ -4616,6 +5192,14 @@ msgstr "Stockage" msgid "Storage Configuration" msgstr "Configuration du stockage" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"La validation de la configuration de stockage pour la tâche de sauvegarde " +"%{backup_name} a échoué, erreur : %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4643,6 +5227,10 @@ msgstr "Le flux est activé" msgid "Stream not found" msgstr "Flux introuvable" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Le répertoire des streams existe" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Le répertoire streams-available n'existe pas" @@ -4670,30 +5258,17 @@ msgstr "Succès" msgid "Sunday" msgstr "Dimanche" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Prise en charge de la communication avec le backend via le protocole " -"Server-Sent Events. Si votre interface Nginx est utilisée via un proxy " -"inverse Nginx, veuillez consulter ce lien pour écrire le fichier de " -"configuration correspondant : " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" -"Prend en charge la communication avec le backend via le protocole " -"WebSocket. Si votre interface Nginx est utilisée via un proxy inverse " -"Nginx, veuillez consulter ce lien pour écrire le fichier de configuration " -"correspondant : https://nginxui.com/guide/nginx-proxy-example.html" +"Prend en charge la communication avec le backend via le protocole WebSocket. " +"Si votre interface Nginx est utilisée via un proxy inverse Nginx, veuillez " +"consulter ce lien pour écrire le fichier de configuration correspondant : " +"https://nginxui.com/guide/nginx-proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4730,19 +5305,38 @@ msgstr "Synchroniser" msgid "Sync Certificate" msgstr "Certificat synchronisé" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "" +"Échec de la synchronisation du certificat %{cert_name} vers %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "Certificat %{cert_name} synchronisé avec succès vers %{env_name}" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Erreur de synchronisation du certificat" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Certificat synchronisé avec succès" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "" +"Échec de la synchronisation de la configuration %{config_name} vers " +"%{env_name}" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "Configuration %{config_name} synchronisée avec succès vers %{env_name}" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Erreur de synchronisation de la configuration" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Synchronisation de la configuration réussie" @@ -4838,8 +5432,8 @@ msgid "" "since it was last issued." msgstr "" "Le certificat du domaine sera vérifié toutes les 30 minutes et sera " -"renouvelé s'il a été émis il y a plus d'une semaine ou depuis la période " -"que vous avez définie dans les paramètres." +"renouvelé s'il a été émis il y a plus d'une semaine ou depuis la période que " +"vous avez définie dans les paramètres." #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" @@ -4859,11 +5453,10 @@ msgstr "L'entrée n'est pas une clé de certificat SSL" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"Le chemin du journal ne se trouve pas sous les chemins dans " -"settings.NginxSettings.LogDirWhiteList" +"Le chemin du journal ne se trouve pas sous les chemins dans settings." +"NginxSettings.LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4875,7 +5468,8 @@ msgstr "" "des traits d'union, des tirets, des deux-points et des points." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "Le modèle utilisé pour la complétion de code, s'il n'est pas défini, le " "modèle de chat sera utilisé." @@ -4955,13 +5549,14 @@ msgid "" "your password and second factors. If you cannot find these codes, you will " "lose access to your account." msgstr "" -"Ces codes sont le dernier recours pour accéder à votre compte si vous " -"perdez votre mot de passe et vos seconds facteurs. Si vous ne trouvez pas " -"ces codes, vous perdrez l'accès à votre compte." +"Ces codes sont le dernier recours pour accéder à votre compte si vous perdez " +"votre mot de passe et vos seconds facteurs. Si vous ne trouvez pas ces " +"codes, vous perdrez l'accès à votre compte." #: src/views/certificate/components/AutoCertManagement.vue:45 msgid "This Auto Cert item is invalid, please remove it." -msgstr "Cet élément de certificat automatique est invalide, veuillez le supprimer." +msgstr "" +"Cet élément de certificat automatique est invalide, veuillez le supprimer." #: src/views/certificate/components/AutoCertManagement.vue:35 msgid "This certificate is managed by Nginx UI" @@ -4992,19 +5587,24 @@ msgid "This field should not be empty" msgstr "Ce champ ne doit pas être vide" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "" "Ce champ ne doit contenir que des lettres, des caractères Unicode, des " "chiffres et -_." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "" "Ce champ ne doit contenir que des lettres, des caractères Unicode, des " "chiffres et -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "Il s'agit d'un message de test envoyé à% {horodat} de Nginx UI." + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " @@ -5028,9 +5628,9 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Ce site est configuré comme un serveur par défaut (default_server) pour " "HTTPS (port 443). Les certificats IP nécessitent le support d'une Autorité " @@ -5039,8 +5639,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Ce site utilise un nom de serveur générique (_) qui indique généralement un " @@ -5084,7 +5684,8 @@ msgstr "" "L'interface Nginx redémarrera une fois la restauration terminée." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" "Cela mettra à jour ou réinstallera l'interface Nginx sur %{nodeNames} vers " "la version %{version}." @@ -5118,8 +5719,8 @@ msgstr "Titre" #: src/views/certificate/components/RemoveCert.vue:124 msgid "To confirm revocation, please type \"Revoke\" in the field below:" msgstr "" -"Pour confirmer la révocation, veuillez taper \"Révoquer\" dans le champ " -"ci-dessous :" +"Pour confirmer la révocation, veuillez taper \"Révoquer\" dans le champ ci-" +"dessous :" #: src/views/preference/components/AuthSettings/TOTP.vue:68 msgid "" @@ -5144,12 +5745,12 @@ msgstr "" #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"Pour nous assurer que le renouvellement automatique de la certification " -"peut fonctionner normalement, nous devons ajouter un emplacement qui peut " +"Pour nous assurer que le renouvellement automatique de la certification peut " +"fonctionner normalement, nous devons ajouter un emplacement qui peut " "transmettre la demande de l'autorité au backend, et nous devons enregistrer " "ce fichier et recharger le Nginx. Êtes-vous sûr de vouloir continuer?" @@ -5458,10 +6059,10 @@ msgid "" "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." msgstr "" -"Avertissement : Il s'agit apparemment d'une adresse IP privée. Les " -"autorités de certification publiques comme Let's Encrypt ne peuvent pas " -"émettre de certificats pour les IP privées. Utilisez une adresse IP " -"publique ou envisagez d'utiliser une autorité de certification privée." +"Avertissement : Il s'agit apparemment d'une adresse IP privée. Les autorités " +"de certification publiques comme Let's Encrypt ne peuvent pas émettre de " +"certificats pour les IP privées. Utilisez une adresse IP publique ou " +"envisagez d'utiliser une autorité de certification privée." #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5473,8 +6074,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Nous allons supprimer la configuration HTTPChallenge de ce fichier et " "recharger le Nginx. Êtes-vous sûr de vouloir continuer?" @@ -5524,9 +6125,9 @@ msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." msgstr "" -"Lorsque vous activez/désactivez, supprimez ou enregistrez ce site, les " -"nœuds définis dans le Groupe de nœuds et les nœuds sélectionnés ci-dessous " -"seront synchronisés." +"Lorsque vous activez/désactivez, supprimez ou enregistrez ce site, les nœuds " +"définis dans le Groupe de nœuds et les nœuds sélectionnés ci-dessous seront " +"synchronisés." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" @@ -5598,8 +6199,8 @@ msgstr "Oui" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" "Vous accédez à ce terminal via une connexion HTTP non sécurisée sur un " "domaine non localhost. Cela peut exposer des informations sensibles." @@ -5635,7 +6236,8 @@ msgstr "" "pas ajouter de clé d'accès." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "Vous n'avez pas encore activé la 2FA. Veuillez activer la 2FA pour générer " "des codes de récupération." @@ -5662,459 +6264,17 @@ msgstr "Vos anciens codes ne fonctionneront plus." msgid "Your passkeys" msgstr "Vos clés d'accès" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "" -#~ "[Nginx UI] Utilisateur ACME : %{name}, Email : %{email}, Répertoire CA : " -#~ "%{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] Sauvegarde du certificat actuel pour une révocation ultérieure" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Certificat renouvelé avec succès" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Certificat révoqué avec succès" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] Le certificat a été utilisé pour le serveur, rechargement du " -#~ "certificat TLS du serveur" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "" -#~ "[Nginx UI] Création d'un client pour faciliter la communication avec le " -#~ "serveur CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Variables d'environnement nettoyées" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Terminé" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Certificat émis avec succès" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Obtention du certificat" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Préparation de la révocation du certificat" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Préparation des configurations lego" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Rechargement de nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Révocation terminée" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Révoquer le certificat" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Révoquer l'ancien certificat" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] Configuration du fournisseur de défi DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Configuration des variables d'environnement" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] Configuration du fournisseur de défi HTTP01" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Écriture de la clé privée du certificat sur le disque" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Écriture du certificat sur le disque" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Sauvegarde automatique terminée" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Erreur de configuration de sauvegarde automatique" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Échec de la sauvegarde automatique" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Échec du stockage de sauvegarde automatique" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "" -#~ "Tâche de sauvegarde %{backup_name} terminée avec succès, fichier : " -#~ "%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "La tâche de sauvegarde %{backup_name} a échoué lors du téléchargement vers " -#~ "le stockage, erreur : %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "" -#~ "La tâche de sauvegarde %{backup_name} n'a pas pu s'exécuter, erreur : " -#~ "%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "Le certificat %{name} a expiré" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "Le certificat %{name} expirera dans %{days} jours" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "Le certificat %{name} expirera dans 1 jour" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Avis d'expiration du certificat" - -#~ msgid "Certificate Expired" -#~ msgstr "Certificat expiré" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Certificat expirant bientôt" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Certificat introuvable : %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Certificat révoqué avec succès" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Vérifiez si /var/run/docker.sock existe. Si vous utilisez l'image Docker " -#~ "officielle de Nginx UI, assurez-vous que le socket Docker est monté comme " -#~ "ceci : `-v /var/run/docker.sock:/var/run/docker.sock`. L'image officielle " -#~ "de Nginx UI utilise /var/run/docker.sock pour communiquer avec le moteur " -#~ "Docker de l'hôte via l'API Docker Client. Cette fonctionnalité est utilisée " -#~ "pour contrôler Nginx dans un autre conteneur et effectuer un remplacement " -#~ "de conteneur plutôt qu'un remplacement binaire lors des mises à jour OTA de " -#~ "Nginx UI pour s'assurer que les dépendances du conteneur sont également " -#~ "mises à jour. Si vous n'avez pas besoin de cette fonctionnalité, ajoutez la " -#~ "variable d'environnement NGINX_UI_IGNORE_DOCKER_SOCKET=true au conteneur." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Vérifiez si le chemin du journal d'accès nginx existe. Par défaut, ce " -#~ "chemin est obtenu à partir de 'nginx -V'. S'il ne peut pas être obtenu ou " -#~ "si le chemin obtenu ne pointe pas vers un fichier valide existant, une " -#~ "erreur sera signalée. Dans ce cas, vous devez modifier le fichier de " -#~ "configuration pour spécifier le chemin du journal d'accès. Consultez la " -#~ "documentation pour plus de détails : " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Vérifier si le répertoire de configuration de nginx existe" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Vérifier si le fichier d'entrée de configuration nginx existe" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Vérifiez si le chemin du journal des erreurs de nginx existe. Par défaut, " -#~ "ce chemin est obtenu à partir de 'nginx -V'. S'il ne peut pas être obtenu " -#~ "ou si le chemin obtenu ne pointe pas vers un fichier valide existant, une " -#~ "erreur sera signalée. Dans ce cas, vous devez modifier le fichier de " -#~ "configuration pour spécifier le chemin du journal des erreurs. Consultez la " -#~ "documentation pour plus de détails : " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Vérifiez si le chemin du PID de Nginx existe. Par défaut, ce chemin est " -#~ "obtenu à partir de 'nginx -V'. S'il ne peut pas être obtenu, une erreur " -#~ "sera signalée. Dans ce cas, vous devez modifier le fichier de configuration " -#~ "pour spécifier le chemin du PID de Nginx. Consultez la documentation pour " -#~ "plus de détails: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Vérifiez si le chemin d'accès à nginx sbin existe" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Vérifier si le nginx.conf inclut le répertoire conf.d" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Vérifier si le nginx.conf inclut le répertoire sites-enabled" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Vérifier si le nginx.conf inclut le répertoire streams-enabled" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Vérifier si les répertoires sites-available et sites-enabled se trouvent " -#~ "dans le répertoire de configuration de nginx" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Vérifier si les répertoires streams-available et streams-enabled se " -#~ "trouvent dans le répertoire de configuration de nginx" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Échec de la suppression de %{path} sur %{env_name}" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{path} supprimé avec succès sur %{env_name}" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Erreur de suppression de la configuration distante" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Suppression de la configuration distante réussie" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Erreur de suppression du flux distant" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Suppression du flux distant réussie" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Échec de la suppression du site %{name} de %{node}" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Suppression du site %{name} de %{node} réussie" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Échec de la suppression du flux %{name} de %{node}" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "Le flux %{name} a été supprimé de %{node} avec succès" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Erreur de désactivation de la maintenance du site distant" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Désactivation de la maintenance du site distant réussie" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Erreur de désactivation du flux à distance" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Désactivation du flux distant réussie" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Désactivation du site %{name} depuis %{node} a échoué" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Site %{name} désactivé sur %{node} avec succès" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Échec de la désactivation de la maintenance du site %{name} sur %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Désactivation de la maintenance du site %{name} sur %{node} réussie" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Échec de la désactivation du flux %{name} depuis %{node}" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Désactivation du flux %{name} depuis %{node} réussie" - -#~ msgid "Docker socket exists" -#~ msgstr "Le socket Docker existe" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Erreur d'activation de la maintenance du site distant" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Activation de la maintenance du site distant réussie" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Erreur d'activation du flux distant" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Activation du flux distant réussie" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "Échec de l'activation de la maintenance du site %{name} sur %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Activation de la maintenance du site %{name} sur %{node} réussie" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "Échec de l'activation du site %{name} sur %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Site %{name} activé sur %{node} avec succès" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "Échec de l'activation du flux %{name} sur %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Activation du flux %{name} sur %{node} réussie" - -#~ msgid "External Notification Test" -#~ msgstr "Test de notification externe" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Échec de la suppression du certificat de la base de données : %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Échec de la révocation du certificat : %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "Le fichier journal %{log_path} n'est pas un fichier régulier. Si vous " -#~ "utilisez nginx-ui dans un conteneur Docker, veuillez consulter " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html pour plus " -#~ "d'informations." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Le chemin du journal d'accès Nginx existe" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Le répertoire de configuration Nginx existe" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Le fichier d'entrée de configuration Nginx existe" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Le chemin du journal d'erreurs de Nginx existe" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Le chemin du PID de Nginx existe" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Le chemin sbin de Nginx existe" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf inclut le répertoire conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf inclut le répertoire sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf inclut le répertoire streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Rechargement de Nginx sur %{node} a échoué, réponse : %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Rechargement de Nginx sur %{node} réussi" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Erreur de rechargement de Nginx distant" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Rechargement distant de Nginx réussi" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Échec du renommage de %{orig_path} en %{new_path} sur %{env_name}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "%{orig_path} renommé en %{new_path} sur %{env_name} avec succès" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Erreur de renommage du flux distant" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Renommage du flux distant réussi" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Échec du renommage du site %{name} en %{new_name} sur %{node}" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Le site %{name} a été renommé en %{new_name} sur %{node} avec succès" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Échec du renommage du flux %{name} en %{new_name} sur %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Flux %{name} renommé en %{new_name} sur %{node} avec succès" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Redémarrage de Nginx sur %{node} a échoué, réponse : %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Redémarrage de Nginx sur %{node} réussi" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Erreur de redémarrage de Nginx distant" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Redémarrage distant de Nginx réussi" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Erreur lors de l'enregistrement du flux distant" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Enregistrement du flux distant réussi" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Échec de l'enregistrement du site %{name} sur %{node}" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Site %{name} enregistré sur %{node} avec succès" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Échec de l'enregistrement du flux %{name} sur %{node}" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Flux %{name} enregistré sur %{node} avec succès" - -#~ msgid "Sites directory exists" -#~ msgstr "Le répertoire des sites existe" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "La validation de la configuration de stockage pour la tâche de sauvegarde " -#~ "%{backup_name} a échoué, erreur : %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Le répertoire des streams existe" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Échec de la synchronisation du certificat %{cert_name} vers %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Certificat %{cert_name} synchronisé avec succès vers %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "" -#~ "Échec de la synchronisation de la configuration %{config_name} vers " -#~ "%{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Configuration %{config_name} synchronisée avec succès vers %{env_name}" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "Il s'agit d'un message de test envoyé à% {horodat} de Nginx UI." +#~ "Prise en charge de la communication avec le backend via le protocole " +#~ "Server-Sent Events. Si votre interface Nginx est utilisée via un proxy " +#~ "inverse Nginx, veuillez consulter ce lien pour écrire le fichier de " +#~ "configuration correspondant : https://nginxui.com/guide/nginx-proxy-" +#~ "example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Si vide, le répertoire CA sera utilisé." @@ -6168,7 +6328,8 @@ msgstr "Vos clés d'accès" #~ msgstr "Action groupée appliquée avec succès" #~ msgid "Are you sure you want to apply to all selected?" -#~ msgstr "Êtes-vous sûr de vouloir appliquer à tous les éléments sélectionnés ?" +#~ msgstr "" +#~ "Êtes-vous sûr de vouloir appliquer à tous les éléments sélectionnés ?" #~ msgid "Are you sure you want to delete this item?" #~ msgstr "Êtes-vous sûr de vouloir supprimer cet élément ?" @@ -6203,8 +6364,8 @@ msgstr "Vos clés d'accès" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" #~ "Vérifiez si /var/run/docker.sock existe. Si vous utilisez l'image Docker " #~ "officielle de Nginx UI, assurez-vous que le socket Docker est monté comme " @@ -6223,7 +6384,8 @@ msgstr "Vos clés d'accès" #~ msgstr "Base de données (Facultatif, par défaut : database)" #~ msgid "The filename cannot contain the following characters: %{c}" -#~ msgstr "Le nom de fichier ne peut pas contenir les caractères suivants : %{c}" +#~ msgstr "" +#~ "Le nom de fichier ne peut pas contenir les caractères suivants : %{c}" #~ msgid "Unknown issue" #~ msgstr "Problème inconnu" @@ -6235,7 +6397,8 @@ msgstr "Vos clés d'accès" #~ "supprimer." #~ msgid "Automatically indexed from site and stream configurations." -#~ msgstr "\"Indexé automatiquement à partir des configurations de site et de flux.\"" +#~ msgstr "" +#~ "\"Indexé automatiquement à partir des configurations de site et de flux.\"" #, fuzzy #~ msgid "Nginx Conf Include Conf.d" @@ -6314,11 +6477,14 @@ msgstr "Vos clés d'accès" #~ msgstr "Dupliqué avec succès" #, fuzzy -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "Dupliqué avec succès" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "Dupliqué avec succès" #, fuzzy @@ -6332,7 +6498,8 @@ msgstr "Vos clés d'accès" #~ msgstr "Dupliqué avec succès" #, fuzzy -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "Dupliqué avec succès" #, fuzzy @@ -6412,8 +6579,8 @@ msgstr "Vos clés d'accès" #~ "Please note that the unit of time configurations below are all in seconds." #~ msgstr "" #~ "Veuillez remplir les identifiants d'authentification de l'API fournis par " -#~ "votre fournisseur DNS. Nous ajouterons un ou plusieurs enregistrements TXT " -#~ "aux enregistrements DNS de votre domaine pour la vérification de la " +#~ "votre fournisseur DNS. Nous ajouterons un ou plusieurs enregistrements " +#~ "TXT aux enregistrements DNS de votre domaine pour la vérification de la " #~ "propriété. Une fois la vérification terminée, les enregistrements seront " #~ "supprimés. Veuillez noter que les configurations de temps ci-dessous sont " #~ "toutes en secondes." diff --git a/app/src/language/generate.ts b/app/src/language/generate.ts index fd5d7934..dc57d2e8 100644 --- a/app/src/language/generate.ts +++ b/app/src/language/generate.ts @@ -1,4 +1,54 @@ // This file is auto-generated. DO NOT EDIT MANUALLY. export const msg = [ + $gettext('Certificate not found: %{error}'), + $gettext('Certificate revoked successfully'), + $gettext('Check if /var/run/docker.sock exists. If you are using Nginx UI Official Docker Image, please make sure the docker socket is mounted like this: `-v /var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/run/docker.sock to communicate with the host Docker Engine via Docker Client API. This feature is used to control Nginx in another container and perform container replacement rather than binary replacement during OTA upgrades of Nginx UI to ensure container dependencies are also upgraded. If you don\'t need this feature, please add the environment variable NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container.'), + $gettext('Check if the nginx PID path exists. By default, this path is obtained from \'nginx -V\'. If it cannot be obtained, an error will be reported. In this case, you need to modify the configuration file to specify the Nginx PID path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath'), + $gettext('Check if the nginx access log path exists. By default, this path is obtained from \'nginx -V\'. If it cannot be obtained or the obtained path does not point to a valid, existing file, an error will be reported. In this case, you need to modify the configuration file to specify the access log path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath'), + $gettext('Check if the nginx configuration directory exists'), + $gettext('Check if the nginx configuration entry file exists'), + $gettext('Check if the nginx error log path exists. By default, this path is obtained from \'nginx -V\'. If it cannot be obtained or the obtained path does not point to a valid, existing file, an error will be reported. In this case, you need to modify the configuration file to specify the error log path. Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath'), + $gettext('Check if the nginx sbin path exists'), + $gettext('Check if the nginx.conf includes the conf.d directory'), + $gettext('Check if the nginx.conf includes the sites-enabled directory'), + $gettext('Check if the nginx.conf includes the streams-enabled directory'), + $gettext('Check if the sites-available and sites-enabled directories are under the nginx configuration directory'), + $gettext('Check if the streams-available and streams-enabled directories are under the nginx configuration directory'), + $gettext('Docker socket exists'), + $gettext('Failed to delete certificate from database: %{error}'), + $gettext('Failed to revoke certificate: %{error}'), + $gettext('Log file %{log_path} is not a regular file. If you are using nginx-ui in docker container, please refer to https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information.'), + $gettext('Nginx PID path exists'), + $gettext('Nginx access log path exists'), + $gettext('Nginx configuration directory exists'), + $gettext('Nginx configuration entry file exists'), + $gettext('Nginx error log path exists'), + $gettext('Nginx sbin path exists'), + $gettext('Nginx.conf includes conf.d directory'), + $gettext('Nginx.conf includes sites-enabled directory'), + $gettext('Nginx.conf includes streams-enabled directory'), + $gettext('Sites directory exists'), + $gettext('Streams directory exists'), + $gettext('[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}'), + $gettext('[Nginx UI] Backing up current certificate for later revocation'), + $gettext('[Nginx UI] Certificate renewed successfully'), + $gettext('[Nginx UI] Certificate successfully revoked'), + $gettext('[Nginx UI] Certificate was used for server, reloading server TLS certificate'), + $gettext('[Nginx UI] Creating client facilitates communication with the CA server'), + $gettext('[Nginx UI] Environment variables cleaned'), + $gettext('[Nginx UI] Finished'), + $gettext('[Nginx UI] Issued certificate successfully'), + $gettext('[Nginx UI] Obtaining certificate'), + $gettext('[Nginx UI] Preparing for certificate revocation'), + $gettext('[Nginx UI] Preparing lego configurations'), + $gettext('[Nginx UI] Reloading nginx'), + $gettext('[Nginx UI] Revocation completed'), + $gettext('[Nginx UI] Revoking certificate'), + $gettext('[Nginx UI] Revoking old certificate'), + $gettext('[Nginx UI] Setting DNS01 challenge provider'), + $gettext('[Nginx UI] Setting HTTP01 challenge provider'), + $gettext('[Nginx UI] Setting environment variables'), + $gettext('[Nginx UI] Writing certificate private key to disk'), + $gettext('[Nginx UI] Writing certificate to disk'), ] diff --git a/app/src/language/ja_JP/app.po b/app/src/language/ja_JP/app.po index 57cf2e20..0e957b2a 100644 --- a/app/src/language/ja_JP/app.po +++ b/app/src/language/ja_JP/app.po @@ -7,15 +7,104 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2025-05-11 11:32+0800\n" "Last-Translator: Kohki Makimoto \n" -"Language-Team: Japanese " -"\n" +"Language-Team: Japanese \n" "Language: ja_JP\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 3.6\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] ACME ユーザー: %{name}、メール: %{email}、CA ディレクトリ: " +"%{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] 現在の証明書を後で失効させるためにバックアップ中" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] 証明書の更新が成功しました" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] 証明書の失効に成功しました" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] サーバーで証明書が使用されました、サーバーのTLS証明書を再読み込み" +"中" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] CA サーバーとの通信を容易にするクライアントを作成中" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] 環境変数をクリーンアップしました" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] 完了しました" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] 証明書の発行に成功しました" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] 証明書を取得中" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] 証明書の失効準備中" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Lego 設定の準備中" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Nginx を再読み込み中" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] 失効が完了しました" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] 証明書を失効中" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] 古い証明書を失効中" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] DNS01 チャレンジプロバイダーを設定中" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] 環境変数の設定" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] HTTP01 チャレンジプロバイダーの設定" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] 証明書の秘密鍵をディスクに書き込んでいます" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] 証明書をディスクに書き込み中" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* グループ %{groupName} のノードと手動で選択したノードを含む" @@ -147,6 +236,7 @@ msgstr "その後、このページを更新し、再度パスキーを追加を msgid "All" msgstr "すべて" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "すべてのリカバリーコードが使用済みです" @@ -155,10 +245,13 @@ msgstr "すべてのリカバリーコードが使用済みです" msgid "" "All selected subdomains must belong to the same DNS Provider, otherwise the " "certificate application will fail." -msgstr "選択したすべてのサブドメインは同じ DNS プロバイダーに属している必要があります。そうでない場合、証明書の申請は失敗します。" +msgstr "" +"選択したすべてのサブドメインは同じ DNS プロバイダーに属している必要がありま" +"す。そうでない場合、証明書の申請は失敗します。" #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "到達可能なIPアドレスは、プライベート認証局で使用できます" #: src/views/preference/tabs/OpenAISettings.vue:32 @@ -255,7 +348,7 @@ msgstr "ChatGPTに助けを求める" msgid "Assistant" msgstr "アシスタント" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "修正を試みる" @@ -294,6 +387,22 @@ msgstr "自動 = CPUコア数" msgid "Auto Backup" msgstr "自動バックアップ" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "自動バックアップ完了" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "自動バックアップ設定エラー" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "自動バックアップが失敗しました" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "自動バックアップの保存に失敗しました" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -355,7 +464,9 @@ msgstr "バックアップ" #: src/components/SystemRestore/SystemRestoreContent.vue:155 msgid "Backup file integrity check failed, it may have been tampered with" -msgstr "「バックアップファイルの整合性チェックに失敗しました。改ざんされている可能性があります」" +msgstr "" +"「バックアップファイルの整合性チェックに失敗しました。改ざんされている可能性" +"があります」" #: src/constants/errors/backup.ts:41 msgid "Backup file not found: {0}" @@ -389,6 +500,24 @@ msgstr "バックアップパスが許可されたアクセスパスにありま msgid "Backup Schedule" msgstr "バックアップスケジュール" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"バックアップタスク %{backup_name} が正常に完了しました、ファイル: " +"%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"バックアップタスク %{backup_name} のストレージへのアップロード中に失敗しまし" +"た。エラー: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" +"バックアップタスク %{backup_name} の実行に失敗しました。エラー: %{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "バックアップタイプ" @@ -504,8 +633,8 @@ msgid "" "Calculated based on worker_processes * worker_connections. Actual " "performance depends on hardware, configuration, and workload" msgstr "" -"worker_processes * worker_connections " -"に基づいて計算されます。実際のパフォーマンスはハードウェア、設定、およびワークロードに依存します" +"worker_processes * worker_connections に基づいて計算されます。実際のパフォー" +"マンスはハードウェア、設定、およびワークロードに依存します" #: src/components/ChatGPT/ChatMessage.vue:216 #: src/components/NgxConfigEditor/NgxServer.vue:61 @@ -561,6 +690,20 @@ msgstr "証明書のパスがnginxの設定ディレクトリ配下にありま msgid "certificate" msgstr "証明書" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "証明書 %{name} の有効期限が切れました" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "証明書 %{name} は %{days} 日後に期限切れになります" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "証明書 %{name} は1日で期限切れになります" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "証明書の内容と秘密鍵の内容は空にできません" @@ -569,6 +712,20 @@ msgstr "証明書の内容と秘密鍵の内容は空にできません" msgid "Certificate decode error" msgstr "証明書のデコードエラー" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "証明書有効期限のお知らせ" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "証明書の有効期限が切れました" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "証明書の有効期限が近づいています" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "証明書ファイルが正常にダウンロードされました" @@ -577,6 +734,10 @@ msgstr "証明書ファイルが正常にダウンロードされました" msgid "Certificate name cannot be empty" msgstr "証明書名は空にできません" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "証明書が見つかりません: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "証明書の解析エラー" @@ -598,6 +759,10 @@ msgstr "証明書更新間隔" msgid "Certificate renewed successfully" msgstr "証明書の更新に成功しました" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "証明書の失効に成功しました" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -663,13 +828,120 @@ msgstr "チェック" msgid "Check again" msgstr "再確認" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"/var/run/docker.sock が存在するか確認してください。Nginx UI 公式 Docker イ" +"メージを使用している場合は、Docker ソケットを次のようにマウントしてください: " +"`-v /var/run/docker.sock:/var/run/docker.sock`。Nginx UI 公式イメージは /var/" +"run/docker.sock を使用して、Docker Client API を介してホストの Docker Engine " +"と通信します。この機能は、別のコンテナ内で Nginx を制御し、Nginx UI の OTA " +"アップグレード時にバイナリの置き換えではなくコンテナの置き換えを実行するため" +"に使用され、コンテナの依存関係もアップグレードされるようにします。この機能が" +"必要ない場合は、環境変数 NGINX_UI_IGNORE_DOCKER_SOCKET=true をコンテナに追加" +"してください。" + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " "prevents using Passkeys and clipboard features" msgstr "" -"HTTPS が有効かどうかを確認します。localhost 以外で HTTP を使用するとセキュリティ上危険であり、Passkeys " -"やクリップボード機能の使用が妨げられます" +"HTTPS が有効かどうかを確認します。localhost 以外で HTTP を使用するとセキュリ" +"ティ上危険であり、Passkeys やクリップボード機能の使用が妨げられます" + +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"nginx のアクセスログのパスが存在するか確認してください。デフォルトでは、この" +"パスは 'nginx -V' から取得されます。取得できない場合、または取得したパスが有" +"効な既存のファイルを指していない場合、エラーが報告されます。この場合、設定" +"ファイルを変更してアクセスログのパスを指定する必要があります。詳細については" +"ドキュメントを参照してください: https://nginxui.com/zh_CN/guide/config-nginx." +"html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "nginxの設定ディレクトリが存在するか確認する" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "nginxの設定エントリファイルが存在するか確認する" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"nginx のエラーログのパスが存在するか確認してください。デフォルトでは、このパ" +"スは 'nginx -V' から取得されます。取得できない場合、または取得したパスが有効" +"な既存のファイルを指していない場合、エラーが報告されます。この場合、設定ファ" +"イルを変更してエラーログのパスを指定する必要があります。詳細についてはドキュ" +"メントを参照してください: https://nginxui.com/zh_CN/guide/config-nginx." +"html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"NginxのPIDパスが存在するか確認してください。デフォルトでは、このパスは'nginx " +"-V'から取得されます。取得できない場合、エラーが報告されます。この場合、設定" +"ファイルを変更してNginxのPIDパスを指定する必要があります。詳細はドキュメント" +"を参照してください: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "nginx の sbin パスが存在するか確認してください" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "nginx.conf に conf.d ディレクトリが含まれているか確認する" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "nginx.conf に sites-enabled ディレクトリが含まれているか確認する" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "nginx.conf に streams-enabled ディレクトリが含まれているか確認する" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"nginx の設定ディレクトリに sites-available と sites-enabled ディレクトリがあ" +"るか確認する" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"nginxの設定ディレクトリにstreams-availableとstreams-enabledディレクトリがある" +"か確認する" #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" @@ -693,7 +965,8 @@ msgstr "正常に削除しました" #: src/components/SystemRestore/SystemRestoreContent.vue:194 #: src/components/SystemRestore/SystemRestoreContent.vue:271 msgid "Click or drag backup file to this area to upload" -msgstr "この領域にバックアップファイルをクリックまたはドラッグしてアップロードします" +msgstr "" +"この領域にバックアップファイルをクリックまたはドラッグしてアップロードします" #: src/language/curd.ts:51 src/language/curd.ts:55 msgid "Click or drag files to this area to upload" @@ -888,7 +1161,8 @@ msgstr "CPU使用率" #: src/views/dashboard/components/ResourceUsageCard.vue:38 msgid "CPU usage is relatively high, consider optimizing Nginx configuration" -msgstr "CPU使用率が比較的高いため、Nginxの設定を最適化することを検討してください" +msgstr "" +"CPU使用率が比較的高いため、Nginxの設定を最適化することを検討してください" #: src/views/dashboard/ServerAnalytic.vue:199 msgid "CPU:" @@ -914,7 +1188,9 @@ msgstr "フォルダーを作成" msgid "" "Create system backups including Nginx configuration and Nginx UI settings. " "Backup files will be automatically downloaded to your computer." -msgstr "Nginx 設定と Nginx UI 設定を含むシステムバックアップを作成します。バックアップファイルは自動的にコンピュータにダウンロードされます。" +msgstr "" +"Nginx 設定と Nginx UI 設定を含むシステムバックアップを作成します。バックアッ" +"プファイルは自動的にコンピュータにダウンロードされます。" #: src/views/backup/AutoBackup/AutoBackup.vue:229 #: src/views/environments/group/columns.ts:72 @@ -1047,6 +1323,14 @@ msgstr "共有メモリゾーンの名前とサイズを定義します(例: p msgid "Delete" msgstr "削除" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "%{env_name} 上の %{path} の削除に失敗しました" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{env_name} 上の %{path} を削除しました" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "証明書を削除" @@ -1059,18 +1343,51 @@ msgstr "削除の確認" msgid "Delete Permanently" msgstr "完全に削除" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "リモート設定の削除エラー" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "リモート設定の削除成功" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "リモートサイト削除エラー" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "リモートサイトの削除に成功しました" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "リモートストリーム削除エラー" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "リモートストリームの削除に成功しました" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "サイト %{name} を %{node} から削除できませんでした" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "サイト %{name} を %{node} から正常に削除しました" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "サイトを削除しました: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "%{node} からのストリーム %{name} の削除に失敗しました" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "ストリーム %{name} を %{node} から削除しました" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "ストリームを削除: %{stream_name}" @@ -1157,14 +1474,56 @@ msgstr "無効化" msgid "Disable auto-renewal failed for %{name}" msgstr "%{name} の自動更新の無効化に失敗しました" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "リモートサイトの無効化エラー" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "リモートサイトメンテナンスの無効化エラー" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "リモートサイトのメンテナンスを無効化しました" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "リモートサイトの無効化に成功しました" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "リモートストリーム無効化エラー" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "リモートストリームの無効化に成功しました" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "サイト %{name} を %{node} から無効化できませんでした" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "サイト %{name} を %{node} から無効化しました" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "サイト %{name} のメンテナンスを %{node} で無効にするのに失敗しました" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "サイト %{name} のメンテナンスを %{node} で無効化しました" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "ノード %{node} からのストリーム %{name} の無効化に失敗しました" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "ストリーム %{name} を %{node} から無効化しました" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1235,6 +1594,10 @@ msgstr "このアップストリームを削除しますか?" msgid "Docker client not initialized" msgstr "Docker クライアントが初期化されていません" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Docker ソケットが存在します" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Dockerソケットが存在しません" @@ -1282,7 +1645,9 @@ msgstr "ドライランモードが有効です" msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." -msgstr "一部のブラウザのセキュリティポリシーのため、localhostで実行している場合を除き、非HTTPSウェブサイトではパスキーを使用できません。" +msgstr "" +"一部のブラウザのセキュリティポリシーのため、localhostで実行している場合を除" +"き、非HTTPSウェブサイトではパスキーを使用できません。" #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1381,14 +1746,56 @@ msgstr "HTTPS を有効にする" msgid "Enable Proxy Cache" msgstr "プロキシキャッシュを有効にする" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "リモートサイトの有効化エラー" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "リモートサイトのメンテナンス有効化エラー" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "リモートサイトのメンテナンス有効化成功" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "リモートサイトの有効化に成功しました" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "リモートストリームの有効化エラー" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "リモートストリームの有効化成功" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "サイト %{name} のメンテナンスを %{node} で有効化できませんでした" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "サイト %{name} のメンテナンスを %{node} で有効化しました" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "サイト %{name} を %{node} で有効化できませんでした" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "サイト %{name} を %{node} で有効化しました" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "ストリーム %{name} を %{node} で有効化できませんでした" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "ストリーム %{name} を %{node} で有効化しました" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "stub_status モジュールを有効にする" @@ -1430,7 +1837,9 @@ msgstr "多重化とサーバープッシュ機能を備えたHTTP/2サポート #: src/views/preference/tabs/ServerSettings.vue:56 msgid "Enables HTTP/3 support based on QUIC protocol for best performance" -msgstr "最高のパフォーマンスを得るためにQUICプロトコルに基づくHTTP/3サポートを有効にします" +msgstr "" +"最高のパフォーマンスを得るためにQUICプロトコルに基づくHTTP/3サポートを有効に" +"します" #: src/views/site/site_edit/components/Cert/IssueCert.vue:76 msgid "Encrypt website with Let's Encrypt" @@ -1446,7 +1855,8 @@ msgstr "ドメイン名を入力" #: src/components/AutoCertForm/AutoCertForm.vue:183 msgid "Enter server IP address (e.g., 203.0.113.1 or 2001:db8::1)" -msgstr "サーバーのIPアドレスを入力してください(例:203.0.113.1 または 2001:db8::1)" +msgstr "" +"サーバーのIPアドレスを入力してください(例:203.0.113.1 または 2001:db8::1)" #: src/views/certificate/components/DNSIssueCertificate.vue:122 msgid "Enter your domain" @@ -1525,13 +1935,17 @@ msgstr "Excel にエクスポート" msgid "" "External Account Binding HMAC Key (optional). Should be in Base64 URL " "encoding format." -msgstr "外部アカウントバインディング HMAC キー(オプション)。Base64 URL エンコード形式である必要があります。" +msgstr "" +"外部アカウントバインディング HMAC キー(オプション)。Base64 URL エンコード形" +"式である必要があります。" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." -msgstr "外部アカウントバインディングキーID(オプション)。ZeroSSLなどの一部のACMEプロバイダーで必要です。" +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." +msgstr "" +"外部アカウントバインディングキーID(オプション)。ZeroSSLなどの一部のACMEプロ" +"バイダーで必要です。" #: src/views/preference/tabs/NginxSettings.vue:49 msgid "External Docker Container" @@ -1541,6 +1955,10 @@ msgstr "外部 Docker コンテナ" msgid "External notification configuration not found" msgstr "外部通知設定が見つかりません" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "外部通知テスト" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1695,6 +2113,10 @@ msgstr "Nginx UIディレクトリの復号に失敗しました: {0}" msgid "Failed to delete certificate" msgstr "証明書の削除に失敗しました" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "データベースから証明書の削除に失敗しました: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1861,6 +2283,10 @@ msgstr "Nginx UIファイルの復元に失敗しました: {0}" msgid "Failed to revoke certificate" msgstr "証明書の失効に失敗しました" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "証明書の失効に失敗しました: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Nginxのパフォーマンス設定の保存に失敗しました" @@ -1976,13 +2402,17 @@ msgstr "中国のユーザー向け: https://cloud.nginxui.com/" msgid "" "For IP-based certificate configurations, only HTTP-01 challenge method is " "supported. DNS-01 challenge is not compatible with IP-based certificates." -msgstr "IPベースの証明書構成では、HTTP-01チャレンジ方式のみがサポートされています。DNS-01チャレンジはIPベースの証明書と互換性がありません。" +msgstr "" +"IPベースの証明書構成では、HTTP-01チャレンジ方式のみがサポートされています。" +"DNS-01チャレンジはIPベースの証明書と互換性がありません。" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." -msgstr "IPベースの証明書の場合、証明書に含まれるサーバーIPアドレスを指定してください。" +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." +msgstr "" +"IPベースの証明書の場合、証明書に含まれるサーバーIPアドレスを指定してくださ" +"い。" #: src/constants/errors/middleware.ts:4 msgid "Form parse failed" @@ -2124,23 +2554,30 @@ msgstr "ICP番号" msgid "" "If the number of login failed attempts from a ip reach the max attempts in " "ban threshold minutes, the ip will be banned for a period of time." -msgstr "IP からのログイン失敗試行回数が禁止閾値分以内に最大試行回数に達した場合、その IP は一定期間禁止されます。" +msgstr "" +"IP からのログイン失敗試行回数が禁止閾値分以内に最大試行回数に達した場合、そ" +"の IP は一定期間禁止されます。" #: src/components/AutoCertForm/AutoCertForm.vue:280 msgid "" "If you want to automatically revoke the old certificate, please enable this " "option." -msgstr "古い証明書を自動的に失効させたい場合は、このオプションを有効にしてください。" +msgstr "" +"古い証明書を自動的に失効させたい場合は、このオプションを有効にしてください。" #: src/views/preference/components/AuthSettings/AddPasskey.vue:75 msgid "If your browser supports WebAuthn Passkey, a dialog box will appear." -msgstr "お使いのブラウザがWebAuthnパスキーに対応している場合、ダイアログボックスが表示されます。" +msgstr "" +"お使いのブラウザがWebAuthnパスキーに対応している場合、ダイアログボックスが表" +"示されます。" #: src/components/AutoCertForm/AutoCertForm.vue:271 msgid "" "If your domain has CNAME records and you cannot obtain certificates, you " "need to enable this option." -msgstr "ドメインにCNAMEレコードがあり、証明書を取得できない場合は、このオプションを有効にする必要があります。" +msgstr "" +"ドメインにCNAMEレコードがあり、証明書を取得できない場合は、このオプションを有" +"効にする必要があります。" #: src/views/certificate/CertificateList/Certificate.vue:27 msgid "Import" @@ -2159,7 +2596,9 @@ msgstr "非アクティブ時間" msgid "" "Includes master process, worker processes, cache processes, and other Nginx " "processes" -msgstr "マスタープロセス、ワーカープロセス、キャッシュプロセス、その他のNginxプロセスを含む" +msgstr "" +"マスタープロセス、ワーカープロセス、キャッシュプロセス、その他のNginxプロセス" +"を含む" #: src/components/ProcessingStatus/ProcessingStatus.vue:31 msgid "Indexing..." @@ -2216,7 +2655,9 @@ msgstr "システム起動後10分経過するとインストールは許可さ msgid "" "Installation is not allowed after 10 minutes of system startup, please " "restart the Nginx UI." -msgstr "システム起動から10分後はインストールが許可されません。Nginx UIを再起動してください。" +msgstr "" +"システム起動から10分後はインストールが許可されません。Nginx UIを再起動してく" +"ださい。" #: src/views/preference/tabs/LogrotateSettings.vue:26 msgid "Interval" @@ -2337,7 +2778,9 @@ msgstr "JWT シークレット" msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." -msgstr "リカバリーコードはパスワードと同じように安全に保管してください。パスワードマネージャーでの保存をお勧めします。" +msgstr "" +"リカバリーコードはパスワードと同じように安全に保管してください。パスワードマ" +"ネージャーでの保存をお勧めします。" #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2386,7 +2829,8 @@ msgstr "変更しない場合は空欄のままにしてください" #: src/views/preference/tabs/OpenAISettings.vue:41 msgid "Leave blank for the default: https://api.openai.com/" -msgstr "デフォルトのままにする場合、空欄のままにしてください: https://api.openai.com/" +msgstr "" +"デフォルトのままにする場合、空欄のままにしてください: https://api.openai.com/" #: src/language/curd.ts:39 msgid "Leave blank if do not want to modify" @@ -2409,7 +2853,8 @@ msgstr "空白のままにすると何も変更されません" #: src/constants/errors/user.ts:6 msgid "Legacy recovery code not allowed since totp is not enabled" -msgstr "TOTPが有効になっていないため、従来のリカバリーコードは許可されていません" +msgstr "" +"TOTPが有効になっていないため、従来のリカバリーコードは許可されていません" #: src/components/AutoCertForm/AutoCertForm.vue:268 msgid "Lego disable CNAME Support" @@ -2494,6 +2939,16 @@ msgstr "ロケーション" msgid "Log" msgstr "ログ" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"ログファイル %{log_path} は通常のファイルではありません。Docker コンテナで " +"nginx-ui を使用している場合は、詳細について https://nginxui.com/zh_CN/guide/" +"config-nginx-log.html を参照してください。" + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "ログリスト" @@ -2516,17 +2971,19 @@ msgstr "ログローテート" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" -"Logrotate は、ホストマシンに Nginx UI をインストールするユーザー向けに、ほとんどの主流な Linux " -"ディストリビューションでデフォルトで有効になっています。そのため、このページのパラメータを変更する必要はありません。Docker コンテナを使用して " -"Nginx UI をインストールするユーザーは、このオプションを手動で有効にすることができます。Nginx UI の crontab " -"タスクスケジューラは、設定した間隔(分単位)で logrotate コマンドを実行します。" +"Logrotate は、ホストマシンに Nginx UI をインストールするユーザー向けに、ほと" +"んどの主流な Linux ディストリビューションでデフォルトで有効になっています。そ" +"のため、このページのパラメータを変更する必要はありません。Docker コンテナを使" +"用して Nginx UI をインストールするユーザーは、このオプションを手動で有効にす" +"ることができます。Nginx UI の crontab タスクスケジューラは、設定した間隔(分" +"単位)で logrotate コマンドを実行します。" #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2556,8 +3013,8 @@ msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." msgstr "" -"証明書を取得する前に、.well-known ディレクトリのリバースプロキシを HTTPChallengePort " -"に設定していることを確認してください。" +"証明書を取得する前に、.well-known ディレクトリのリバースプロキシを " +"HTTPChallengePort に設定していることを確認してください。" #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2738,7 +3195,8 @@ msgstr "複数行ディレクティブ" #: src/components/AutoCertForm/AutoCertForm.vue:196 msgid "Must be a public IP address accessible from the internet" -msgstr "インターネットからアクセス可能なパブリックIPアドレスでなければなりません" +msgstr "" +"インターネットからアクセス可能なパブリックIPアドレスでなければなりません" #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:38 #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:56 @@ -2837,6 +3295,10 @@ msgstr "Nginx -T の出力が空です" msgid "Nginx Access Log Path" msgstr "Nginx アクセスログパス" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Nginx アクセスログのパスが存在します" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2866,6 +3328,14 @@ msgstr "Nginx設定にstream-enabledが含まれていません" msgid "Nginx config directory is not set" msgstr "Nginx設定ディレクトリが設定されていません" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Nginx設定ディレクトリが存在します" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Nginx設定エントリファイルが存在します" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Nginxの設定が復元されました" @@ -2900,6 +3370,10 @@ msgstr "NginxのCPU使用率" msgid "Nginx Error Log Path" msgstr "Nginx エラーログのパス" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Nginxエラーログのパスが存在します" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Nginxエラー: {0}" @@ -2937,6 +3411,10 @@ msgstr "Nginxメモリ使用量" msgid "Nginx PID Path" msgstr "Nginx PID パス" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Nginx PID パスが存在します" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Nginx リロードコマンド" @@ -2966,6 +3444,10 @@ msgstr "Nginx の再起動操作がリモートノードに送信されました msgid "Nginx restarted successfully" msgstr "Nginxの再起動が成功しました" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Nginx の Sbin パスが存在します" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Nginx 設定テストコマンド" @@ -2989,10 +3471,22 @@ msgstr "Nginx UI の設定が復元されました" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "Nginx UI の設定が復元され、数秒後に自動的に再起動します。" +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf は conf.d ディレクトリを含んでいます" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf は sites-enabled ディレクトリを含んでいます" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf には streams-enabled ディレクトリが含まれています" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3032,7 +3526,9 @@ msgstr "サーバーが設定されていません" msgid "" "No specific IP address found in server_name configuration. Please specify " "the server IP address below for the certificate." -msgstr "server_name の設定で特定のIPアドレスが見つかりませんでした。証明書のためにサーバーのIPアドレスを以下で指定してください。" +msgstr "" +"server_name の設定で特定のIPアドレスが見つかりませんでした。証明書のために" +"サーバーのIPアドレスを以下で指定してください。" #: src/components/NgxConfigEditor/NgxUpstream.vue:103 msgid "No upstreams configured" @@ -3100,7 +3596,9 @@ msgstr "注記" msgid "" "Note, if the configuration file include other configurations or " "certificates, please synchronize them to the remote nodes in advance." -msgstr "設定ファイルに他の設定や証明書が含まれている場合は、事前にリモートノードに同期してください。" +msgstr "" +"設定ファイルに他の設定や証明書が含まれている場合は、事前にリモートノードに同" +"期してください。" #: src/views/notification/Notification.vue:28 msgid "Notification" @@ -3154,7 +3652,9 @@ msgstr "OCSP Must Staple" msgid "" "OCSP Must Staple may cause errors for some users on first access using " "Firefox." -msgstr "OCSP Must Staple は、Firefox を使用した初回アクセス時に一部のユーザーでエラーを引き起こす可能性があります。" +msgstr "" +"OCSP Must Staple は、Firefox を使用した初回アクセス時に一部のユーザーでエラー" +"を引き起こす可能性があります。" #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:73 #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:165 @@ -3298,8 +3798,9 @@ msgid "" "facial recognition, a device password, or a PIN. They can be used as a " "password replacement or as a 2FA method." msgstr "" -"パスキーは、タッチ、顔認証、デバイスパスワード、または PIN を使用して身元を確認する WebAuthn 認証情報です。パスワードの代わりや 2FA " -"方法として使用できます。" +"パスキーは、タッチ、顔認証、デバイスパスワード、または PIN を使用して身元を確" +"認する WebAuthn 認証情報です。パスワードの代わりや 2FA 方法として使用できま" +"す。" #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3391,7 +3892,9 @@ msgstr "プレーンテキストが空です" msgid "" "Please enable the stub_status module to get request statistics, connection " "count, etc." -msgstr "リクエスト統計や接続数などを取得するには、stub_statusモジュールを有効にしてください。" +msgstr "" +"リクエスト統計や接続数などを取得するには、stub_statusモジュールを有効にしてく" +"ださい。" #: src/views/preference/components/AuthSettings/AddPasskey.vue:74 msgid "" @@ -3451,14 +3954,17 @@ msgid "" "Please first add credentials in Certification > DNS Credentials, and then " "select one of the credentialsbelow to request the API of the DNS provider." msgstr "" -"まず、Certification > DNS Credentials " -"で認証情報を追加し、その後、以下の認証情報のいずれかを選択してDNSプロバイダーのAPIをリクエストしてください。" +"まず、Certification > DNS Credentials で認証情報を追加し、その後、以下の認証" +"情報のいずれかを選択してDNSプロバイダーのAPIをリクエストしてください。" +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." -msgstr "ロックアウトを防ぐため、設定からすぐに新しいリカバリーコードを生成してください。" +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." +msgstr "" +"ロックアウトを防ぐため、設定からすぐに新しいリカバリーコードを生成してくださ" +"い。" #: src/views/config/components/ConfigRightPanel/Basic.vue:27 #: src/views/config/components/Rename.vue:65 @@ -3473,13 +3979,15 @@ msgstr "フォルダ名を入力してください" msgid "" "Please input name, this will be used as the filename of the new " "configuration!" -msgstr "名前を入力してください。これは新しい設定のファイル名として使用されます!" +msgstr "" +"名前を入力してください。これは新しい設定のファイル名として使用されます!" #: src/views/site/site_list/SiteDuplicate.vue:33 msgid "" "Please input name, this will be used as the filename of the new " "configuration." -msgstr "名前を入力してください。これは新しい設定のファイル名として使用されます。" +msgstr "" +"名前を入力してください。これは新しい設定のファイル名として使用されます。" #: src/views/install/components/InstallForm.vue:25 msgid "Please input your E-mail!" @@ -3499,7 +4007,8 @@ msgid "Please log in." msgstr "ログインしてください。" #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "以下の時間設定の単位はすべて秒であることに注意してください。" #: src/views/install/components/InstallView.vue:102 @@ -3629,9 +4138,10 @@ msgstr "保護されたディレクトリ" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." -msgstr "プロトコル設定は直接接続時にのみ有効です。リバースプロキシを使用している場合は、リバースプロキシで個別にプロトコルを設定してください。" +"reverse proxy, please configure the protocol separately in the reverse proxy." +msgstr "" +"プロトコル設定は直接接続時にのみ有効です。リバースプロキシを使用している場合" +"は、リバースプロキシで個別にプロトコルを設定してください。" #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3680,7 +4190,7 @@ msgstr "読み取り" msgid "Receive" msgstr "受信" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "再チェック" @@ -3696,7 +4206,9 @@ msgstr "リカバリーコード" msgid "" "Recovery codes are used to access your account when you lose access to your " "2FA device. Each code can only be used once." -msgstr "リカバリーコードは、2FAデバイスへのアクセスを失った場合にアカウントにアクセスするために使用されます。各コードは一度しか使用できません。" +msgstr "" +"リカバリーコードは、2FAデバイスへのアクセスを失った場合にアカウントにアクセス" +"するために使用されます。各コードは一度しか使用できません。" #: src/views/preference/tabs/CertSettings.vue:40 msgid "Recursive Nameservers" @@ -3714,7 +4226,9 @@ msgstr "登録" msgid "" "Register a user or use this account to issue a certificate through an HTTP " "proxy." -msgstr "ユーザーを登録するか、このアカウントを使用してHTTPプロキシ経由で証明書を発行します。" +msgstr "" +"ユーザーを登録するか、このアカウントを使用してHTTPプロキシ経由で証明書を発行" +"します。" #: src/views/certificate/ACMEUser.vue:140 msgid "Register failed" @@ -3764,6 +4278,22 @@ msgstr "Nginx をリロード" msgid "Reload nginx failed: {0}" msgstr "nginxの再読み込みに失敗しました: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "%{node} での Nginx の再読み込みに失敗しました、応答: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "%{node} での Nginx のリロードに成功しました" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "リモートNginxの再読み込みエラー" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "リモートNginxのリロード成功" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "再読み込みリクエストが失敗しました。ネットワーク接続を確認してください" @@ -3803,22 +4333,59 @@ msgstr "正常に削除されました" msgid "Rename" msgstr "名前を変更" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "" +"%{env_name} 上の %{orig_path} から %{new_path} への名前変更に失敗しました" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "%{env_name} 上の %{orig_path} を %{new_path} に名前変更しました" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "リモート設定の名前変更エラー" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "リモート設定の名前変更に成功しました" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "リモートサイト名変更エラー" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "リモートサイトの名前変更成功" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "リモートストリームの名前変更エラー" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "リモートストリームの名前変更成功" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "" +"サイト %{name} を %{new_name} にリネームする際に %{node} で失敗しました" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "サイト %{name} を %{new_name} にリネームしました(%{node})" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "" +"ストリーム %{name} を %{new_name} にリネームする際に %{node} で失敗しました" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "ストリーム %{name} を %{new_name} に名前変更しました(%{node})" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "名前の変更に成功しました" @@ -3880,7 +4447,9 @@ msgid "" "Resident Set Size: Actual memory resident in physical memory, including all " "shared library memory, which will be repeated calculated for multiple " "processes" -msgstr "Resident Set Size: 物理メモリに実際に存在するメモリで、共有ライブラリのメモリを含み、複数のプロセスに対して繰り返し計算されます" +msgstr "" +"Resident Set Size: 物理メモリに実際に存在するメモリで、共有ライブラリのメモリ" +"を含み、複数のプロセスに対して繰り返し計算されます" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -3897,6 +4466,22 @@ msgstr "再起動" msgid "Restart Nginx" msgstr "Nginx を再起動" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "%{node} での Nginx の再起動に失敗しました、応答: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "%{node} での Nginx の再起動が成功しました" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "リモートNginxの再起動エラー" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "リモートNginxの再起動成功" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "再起動リクエストが失敗しました。ネットワーク接続を確認してください" @@ -3957,7 +4542,9 @@ msgstr "この証明書を失効させる" msgid "" "Revoking a certificate will affect any services currently using it. This " "action cannot be undone." -msgstr "証明書を失効させると、現在それを使用しているすべてのサービスに影響します。この操作は元に戻せません。" +msgstr "" +"証明書を失効させると、現在それを使用しているすべてのサービスに影響します。こ" +"の操作は元に戻せません。" #: src/views/preference/tabs/AuthSettings.vue:75 msgid "RP Display Name" @@ -4106,14 +4693,40 @@ msgstr "保存" msgid "Save Directive" msgstr "ディレクティブを保存" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "リモートサイトの保存エラー" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "リモートサイトの保存に成功しました" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "リモートストリームの保存エラー" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "リモートストリームの保存に成功しました" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "サイト %{name} を %{node} に保存できませんでした" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "サイト %{name} を %{node} に正常に保存しました" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "ストリーム %{name} を %{node} に保存できませんでした" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "ストリーム %{name} を %{node} に正常に保存しました" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "保存に成功しました" @@ -4153,7 +4766,8 @@ msgstr "スキャン結果" #: src/views/preference/components/AuthSettings/TOTP.vue:69 msgid "Scan the QR code with your mobile phone to add the account to the app." -msgstr "スマートフォンでQRコードをスキャンして、アプリにアカウントを追加します。" +msgstr "" +"スマートフォンでQRコードをスキャンして、アプリにアカウントを追加します。" #: src/views/nginx_log/NginxLogList.vue:101 msgid "Scanning logs..." @@ -4202,7 +4816,9 @@ msgstr "セキュリティトークン情報" msgid "" "Select a predefined CA directory or enter a custom one. Leave blank to use " "the default CA directory." -msgstr "事前定義されたCAディレクトリを選択するか、カスタムのものを入力してください。空白のままにすると、デフォルトのCAディレクトリが使用されます。" +msgstr "" +"事前定義されたCAディレクトリを選択するか、カスタムのものを入力してください。" +"空白のままにすると、デフォルトのCAディレクトリが使用されます。" #: src/language/curd.ts:31 msgid "Select all" @@ -4220,7 +4836,7 @@ msgstr "選択された {count} ファイル" msgid "Selector" msgstr "セレクター" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "セルフチェック" @@ -4286,7 +4902,9 @@ msgstr "lego CNAME サポートを無効にする環境フラグ設定エラー: msgid "" "Set the recursive nameservers to override the systems nameservers for the " "step of DNS challenge." -msgstr "DNSチャレンジのステップでシステムのネームサーバーを上書きするために、再帰的なネームサーバーを設定してください。" +msgstr "" +"DNSチャレンジのステップでシステムのネームサーバーを上書きするために、再帰的な" +"ネームサーバーを設定してください。" #: src/views/site/components/SiteStatusSelect.vue:116 msgid "set to maintenance mode" @@ -4306,19 +4924,19 @@ msgstr "HTTP01チャレンジプロバイダーの設定" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath が空です。詳細については " -"https://nginxui.com/guide/config-nginx.html を参照してください" +"Settings.NginxLogSettings.AccessLogPath が空です。詳細については https://" +"nginxui.com/guide/config-nginx.html を参照してください" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath " -"が空です。詳細については、https://nginxui.com/guide/config-nginx.html を参照してください" +"Settings.NginxLogSettings.ErrorLogPath が空です。詳細については、https://" +"nginxui.com/guide/config-nginx.html を参照してください" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4360,6 +4978,10 @@ msgstr "サイトログ" msgid "Site not found" msgstr "サイトが見つかりません" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "サイトディレクトリが存在します" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "サイト一覧" @@ -4489,6 +5111,14 @@ msgstr "ストレージ" msgid "Storage Configuration" msgstr "ストレージ設定" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"バックアップタスク %{backup_name} のストレージ構成の検証に失敗しました。エ" +"ラー: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4516,6 +5146,10 @@ msgstr "ストリームが有効です" msgid "Stream not found" msgstr "ストリームが見つかりません" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "ストリームディレクトリが存在します" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "streams-available ディレクトリが存在しません" @@ -4543,27 +5177,17 @@ msgstr "成功" msgid "Sunday" msgstr "日曜日" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Server-Sent Events プロトコルを介してバックエンドとの通信をサポートします。Nginx UI を Nginx " -"リバースプロキシ経由で使用している場合は、このリンクを参照して対応する設定ファイルを作成してください: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" -"WebSocket プロトコルを介してバックエンドとの通信をサポートします。Nginx UI が Nginx " -"リバースプロキシ経由で使用されている場合は、このリンクを参照して対応する設定ファイルを作成してください: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"WebSocket プロトコルを介してバックエンドとの通信をサポートします。Nginx UI " +"が Nginx リバースプロキシ経由で使用されている場合は、このリンクを参照して対応" +"する設定ファイルを作成してください: https://nginxui.com/guide/nginx-proxy-" +"example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4600,19 +5224,35 @@ msgstr "同期" msgid "Sync Certificate" msgstr "証明書を同期" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "証明書 %{cert_name} を %{env_name} に同期できませんでした" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "証明書 %{cert_name} を %{env_name} に同期しました" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "証明書の同期エラー" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "証明書の同期に成功しました" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "設定 %{config_name} を %{env_name} に同期できませんでした" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "設定 %{config_name} を %{env_name} に正常に同期しました" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "設定同期エラー" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "設定の同期に成功しました" @@ -4706,13 +5346,17 @@ msgid "" "The certificate for the domain will be checked 30 minutes, and will be " "renewed if it has been more than 1 week or the period you set in settings " "since it was last issued." -msgstr "ドメインの証明書は30分ごとにチェックされ、最後に発行されてから1週間以上経過しているか、設定で指定した期間が経過している場合に更新されます。" +msgstr "" +"ドメインの証明書は30分ごとにチェックされ、最後に発行されてから1週間以上経過し" +"ているか、設定で指定した期間が経過している場合に更新されます。" #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" "The ICP Number should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "ICP番号には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットのみを含める必要があります。" +msgstr "" +"ICP番号には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットの" +"みを含める必要があります。" #: src/views/certificate/components/CertificateContentEditor.vue:96 msgid "The input is not a SSL Certificate" @@ -4724,26 +5368,33 @@ msgstr "入力はSSL証明書キーではありません" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" -msgstr "ログパスが settings.NginxSettings.LogDirWhiteList のパスに含まれていません" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" +msgstr "" +"ログパスが settings.NginxSettings.LogDirWhiteList のパスに含まれていません" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 msgid "" "The model name should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "モデル名には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットのみを含める必要があります。" +msgstr "" +"モデル名には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットの" +"みを含める必要があります。" #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." -msgstr "コード補完に使用されるモデル。設定されていない場合は、チャットモデルが使用されます。" +msgid "" +"The model used for code completion, if not set, the chat model will be used." +msgstr "" +"コード補完に使用されるモデル。設定されていない場合は、チャットモデルが使用さ" +"れます。" #: src/views/preference/tabs/NodeSettings.vue:18 msgid "" "The node name should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "ノード名には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットのみを含める必要があります。" +msgstr "" +"ノード名には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットの" +"みを含める必要があります。" #: src/views/site/site_add/SiteAdd.vue:96 msgid "The parameter of server_name is required" @@ -4761,7 +5412,9 @@ msgstr "パスは存在しますが、ファイルは秘密鍵ではありませ msgid "" "The Public Security Number should only contain letters, unicode, numbers, " "hyphens, dashes, colons, and dots." -msgstr "公安番号には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットのみを含める必要があります。" +msgstr "" +"公安番号には、文字、Unicode、数字、ハイフン、ダッシュ、コロン、およびドットの" +"みを含める必要があります。" #: src/views/dashboard/components/NodeAnalyticItem.vue:107 msgid "" @@ -4769,14 +5422,17 @@ msgid "" "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." msgstr "" -"リモートのNginx UIバージョンはローカルのNginx UIバージョンと互換性がありません。潜在的なエラーを避けるため、リモートのNginx " -"UIをローカルバージョンに合わせてアップグレードしてください。" +"リモートのNginx UIバージョンはローカルのNginx UIバージョンと互換性がありませ" +"ん。潜在的なエラーを避けるため、リモートのNginx UIをローカルバージョンに合わ" +"せてアップグレードしてください。" #: src/components/AutoCertForm/AutoCertForm.vue:155 msgid "" "The server_name in the current configuration must be the domain name you " "need to get the certificate, supportmultiple domains." -msgstr "現在の設定における server_name は、証明書を取得する必要があるドメイン名でなければならず、複数のドメインをサポートします。" +msgstr "" +"現在の設定における server_name は、証明書を取得する必要があるドメイン名でなけ" +"ればならず、複数のドメインをサポートします。" #: src/views/preference/tabs/CertSettings.vue:22 #: src/views/preference/tabs/HTTPSettings.vue:14 @@ -4806,7 +5462,8 @@ msgid "" "your password and second factors. If you cannot find these codes, you will " "lose access to your account." msgstr "" -"これらのコードは、パスワードと第二要素を失った場合にアカウントにアクセスするための最後の手段です。これらのコードが見つからない場合、アカウントにアクセス" +"これらのコードは、パスワードと第二要素を失った場合にアカウントにアクセスする" +"ための最後の手段です。これらのコードが見つからない場合、アカウントにアクセス" "できなくなります。" #: src/views/certificate/components/AutoCertManagement.vue:45 @@ -4819,7 +5476,8 @@ msgstr "この証明書はNginx UIによって管理されています" #: src/views/config/components/Delete.vue:108 msgid "This directory is protected and cannot be deleted for system safety." -msgstr "このディレクトリは保護されており、システムの安全のために削除できません。" +msgstr "" +"このディレクトリは保護されており、システムの安全のために削除できません。" #: src/views/certificate/components/CertificateBasicInfo.vue:26 #: src/views/certificate/components/CertificateBasicInfo.vue:41 @@ -4840,20 +5498,31 @@ msgid "This field should not be empty" msgstr "このフィールドは空にできません" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." -msgstr "このフィールドには、文字、Unicode文字、数字、および -_ のみを含める必要があります。" +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." +msgstr "" +"このフィールドには、文字、Unicode文字、数字、および -_ のみを含める必要があり" +"ます。" #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" -msgstr "このフィールドには、文字、Unicode文字、数字、および -_./: のみを含める必要があります" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" +msgstr "" +"このフィールドには、文字、Unicode文字、数字、および -_./: のみを含める必要が" +"あります" + +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "これは、Nginx UIから%{Timestamp}で送信されたテストメッセージです。" #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " "After enabling it, you can view performance statistics" -msgstr "このモジュールは、Nginxのリクエスト統計、接続数などのデータを提供します。有効にすると、パフォーマンス統計を表示できます" +msgstr "" +"このモジュールは、Nginxのリクエスト統計、接続数などのデータを提供します。有効" +"にすると、パフォーマンス統計を表示できます" #: src/views/preference/tabs/ExternalNotify.vue:15 msgid "This notification is disabled" @@ -4863,32 +5532,37 @@ msgstr "この通知は無効です" msgid "" "This operation will only remove the certificate from the database. The " "certificate files on the file system will not be deleted." -msgstr "この操作はデータベースから証明書を削除するのみです。ファイルシステム上の証明書ファイルは削除されません。" +msgstr "" +"この操作はデータベースから証明書を削除するのみです。ファイルシステム上の証明" +"書ファイルは削除されません。" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" -"このサイトはHTTPS(ポート443)のデフォルトサーバー(default_" -"server)として設定されています。IP証明書には認証局(CA)のサポートが必要であり、すべてのACMEプロバイダーで利用可能とは限りません。" +"このサイトはHTTPS(ポート443)のデフォルトサーバー(default_server)として設" +"定されています。IP証明書には認証局(CA)のサポートが必要であり、すべてのACME" +"プロバイダーで利用可能とは限りません。" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" -"このサイトはワイルドカードサーバー名(_" -")を使用しており、通常はIPベースの証明書を示しています。IP証明書には認証局(CA)のサポートが必要であり、すべてのACMEプロバイダーで利用可能では" -"ない場合があります。" +"このサイトはワイルドカードサーバー名(_)を使用しており、通常はIPベースの証明" +"書を示しています。IP証明書には認証局(CA)のサポートが必要であり、すべての" +"ACMEプロバイダーで利用可能ではない場合があります。" #: src/views/backup/components/BackupCreator.vue:141 msgid "" "This token will only be shown once and cannot be retrieved later. Please " "make sure to save it in a secure location." -msgstr "このトークンは一度しか表示されず、後で取得することはできません。必ず安全な場所に保存してください。" +msgstr "" +"このトークンは一度しか表示されず、後で取得することはできません。必ず安全な場" +"所に保存してください。" #: src/constants/form_errors.ts:4 src/language/curd.ts:44 msgid "This value is already taken" @@ -4903,18 +5577,25 @@ msgstr "これにより %{type} が完全に削除されます。" msgid "" "This will restore all Nginx configuration files. Nginx will restart after " "the restoration is complete." -msgstr "これにより、すべてのNginx設定ファイルが復元されます。復元が完了すると、Nginxが再起動します。" +msgstr "" +"これにより、すべてのNginx設定ファイルが復元されます。復元が完了すると、Nginx" +"が再起動します。" #: src/components/SystemRestore/SystemRestoreContent.vue:238 #: src/components/SystemRestore/SystemRestoreContent.vue:315 msgid "" "This will restore configuration files and database. Nginx UI will restart " "after the restoration is complete." -msgstr "これにより設定ファイルとデータベースが復元されます。復元が完了すると、Nginx UI が再起動します。" +msgstr "" +"これにより設定ファイルとデータベースが復元されます。復元が完了すると、Nginx " +"UI が再起動します。" #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." -msgstr "これにより、%{nodeNames} 上の Nginx UI が %{version} にアップグレードまたは再インストールされます。" +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgstr "" +"これにより、%{nodeNames} 上の Nginx UI が %{version} にアップグレードまたは再" +"インストールされます。" #: src/views/preference/tabs/AuthSettings.vue:92 msgid "Throttle" @@ -4934,7 +5615,9 @@ msgstr "ヒント" msgid "" "Tips: You can increase the concurrency processing capacity by increasing " "worker_processes or worker_connections" -msgstr "ヒント: worker_processes または worker_connections を増やすことで、並列処理能力を向上させることができます" +msgstr "" +"ヒント: worker_processes または worker_connections を増やすことで、並列処理能" +"力を向上させることができます" #: src/views/notification/notificationColumns.tsx:58 msgid "Title" @@ -4958,19 +5641,20 @@ msgid "" "Please manually configure the following in the app.ini configuration file " "and restart Nginx UI." msgstr "" -"セキュリティを確保するため、WebAuthn の設定は UI から追加できません。app.ini 設定ファイルに以下の内容を手動で設定し、Nginx " -"UI を再起動してください。" +"セキュリティを確保するため、WebAuthn の設定は UI から追加できません。app.ini " +"設定ファイルに以下の内容を手動で設定し、Nginx UI を再起動してください。" #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"証明書の自動更新が正常に動作するようにするため、認証局からのリクエストをバックエンドにプロキシするロケーションを追加し、このファイルを保存してNginx" -"を再読み込みする必要があります。続行してもよろしいですか?" +"証明書の自動更新が正常に動作するようにするため、認証局からのリクエストをバッ" +"クエンドにプロキシするロケーションを追加し、このファイルを保存してNginxを再読" +"み込みする必要があります。続行してもよろしいですか?" #: src/views/preference/tabs/OpenAISettings.vue:36 msgid "" @@ -4978,8 +5662,9 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"ローカルの大規模モデルを使用するには、ollama、vllm、または lmdeploy でデプロイしてください。これらは OpenAI 互換の API " -"エンドポイントを提供するため、baseUrl をローカルの API に設定するだけです。" +"ローカルの大規模モデルを使用するには、ollama、vllm、または lmdeploy でデプロ" +"イしてください。これらは OpenAI 互換の API エンドポイントを提供するため、" +"baseUrl をローカルの API に設定するだけです。" #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5040,7 +5725,9 @@ msgstr "TOTP" msgid "" "TOTP is a two-factor authentication method that uses a time-based one-time " "password algorithm." -msgstr "TOTP は、時間ベースのワンタイムパスワードアルゴリズムを使用する二要素認証方法です。" +msgstr "" +"TOTP は、時間ベースのワンタイムパスワードアルゴリズムを使用する二要素認証方法" +"です。" #: src/language/curd.ts:20 msgid "Trash" @@ -5263,7 +5950,9 @@ msgid "" "Warning: Restore operation will overwrite current configurations. Make sure " "you have a valid backup file and security token, and carefully select what " "to restore." -msgstr "警告: 復元操作は現在の設定を上書きします。有効なバックアップファイルとセキュリティトークンがあることを確認し、復元する内容を慎重に選択してください。" +msgstr "" +"警告: 復元操作は現在の設定を上書きします。有効なバックアップファイルとセキュ" +"リティトークンがあることを確認し、復元する内容を慎重に選択してください。" #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" @@ -5271,21 +5960,25 @@ msgid "" "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." msgstr "" -"警告:これはプライベートIPアドレスのようです。Let's " -"Encryptのようなパブリック認証局はプライベートIPの証明書を発行できません。パブリックIPアドレスを使用するか、プライベート認証局の使用を検討して" -"ください。" +"警告:これはプライベートIPアドレスのようです。Let's Encryptのようなパブリック" +"認証局はプライベートIPの証明書を発行できません。パブリックIPアドレスを使用す" +"るか、プライベート認証局の使用を検討してください。" #: src/views/certificate/DNSCredential.vue:96 msgid "" "We will add one or more TXT records to the DNS records of your domain for " "ownership verification." -msgstr "所有権確認のために、お客様のドメインのDNSレコードに1つ以上のTXTレコードを追加します。" +msgstr "" +"所有権確認のために、お客様のドメインのDNSレコードに1つ以上のTXTレコードを追加" +"します。" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" -msgstr "このファイルからHTTPChallengeの設定を削除し、Nginxを再読み込みします。続行してもよろしいですか?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" +msgstr "" +"このファイルからHTTPChallengeの設定を削除し、Nginxを再読み込みします。続行し" +"てもよろしいですか?" #: src/views/preference/tabs/AuthSettings.vue:65 msgid "Webauthn" @@ -5321,21 +6014,26 @@ msgid "" "Generally, do not enable this unless you are in a dev environment and using " "Pebble as CA." msgstr "" -"有効にすると、Nginx UI は起動時に自動的にユーザーを再登録します。一般的に、開発環境で Pebble を CA " -"として使用している場合以外は、これを有効にしないでください。" +"有効にすると、Nginx UI は起動時に自動的にユーザーを再登録します。一般的に、開" +"発環境で Pebble を CA として使用している場合以外は、これを有効にしないでくだ" +"さい。" #: src/views/site/site_edit/components/RightPanel/Basic.vue:62 #: src/views/stream/components/RightPanel/Basic.vue:57 msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." -msgstr "このサイトを有効/無効にしたり、削除または保存すると、ノードグループで設定されたノードと以下で選択されたノードが同期されます。" +msgstr "" +"このサイトを有効/無効にしたり、削除または保存すると、ノードグループで設定され" +"たノードと以下で選択されたノードが同期されます。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" "When you generate new recovery codes, you must download or print the new " "codes." -msgstr "新しいリカバリーコードを生成するときは、新しいコードをダウンロードまたは印刷する必要があります。" +msgstr "" +"新しいリカバリーコードを生成するときは、新しいコードをダウンロードまたは印刷" +"する必要があります。" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:160 msgid "Whether to use a temporary path when writing temporary files" @@ -5397,9 +6095,11 @@ msgstr "はい" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." -msgstr "あなたは非localhostドメインで安全でないHTTP接続を介してこのターミナルにアクセスしています。これにより機密情報が漏洩する可能性があります。" +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." +msgstr "" +"あなたは非localhostドメインで安全でないHTTP接続を介してこのターミナルにアクセ" +"スしています。これにより機密情報が漏洩する可能性があります。" #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5428,8 +6128,11 @@ msgid "" msgstr "WebAuthnの設定が行われていないため、パスキーを追加できません。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." -msgstr "2FAが有効になっていません。リカバリーコードを生成するには2FAを有効にしてください。" +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgstr "" +"2FAが有効になっていません。リカバリーコードを生成するには2FAを有効にしてくだ" +"さい。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94 msgid "You have not generated recovery codes yet." @@ -5439,7 +6142,9 @@ msgstr "まだリカバリーコードを生成していません。" msgid "" "Your current recovery code might be outdated and insecure. Please generate " "new recovery codes at your earliest convenience to ensure security." -msgstr "現在のリカバリーコードは古く、安全でない可能性があります。セキュリティを確保するため、できるだけ早く新しいリカバリーコードを生成してください。" +msgstr "" +"現在のリカバリーコードは古く、安全でない可能性があります。セキュリティを確保" +"するため、できるだけ早く新しいリカバリーコードを生成してください。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:142 #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:155 @@ -5450,427 +6155,16 @@ msgstr "以前のコードはもう使えません。" msgid "Your passkeys" msgstr "あなたのパスキー" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] ACME ユーザー: %{name}、メール: %{email}、CA ディレクトリ: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] 現在の証明書を後で失効させるためにバックアップ中" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] 証明書の更新が成功しました" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] 証明書の失効に成功しました" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "[Nginx UI] サーバーで証明書が使用されました、サーバーのTLS証明書を再読み込み中" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] CA サーバーとの通信を容易にするクライアントを作成中" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] 環境変数をクリーンアップしました" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] 完了しました" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] 証明書の発行に成功しました" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] 証明書を取得中" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] 証明書の失効準備中" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Lego 設定の準備中" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Nginx を再読み込み中" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] 失効が完了しました" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] 証明書を失効中" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] 古い証明書を失効中" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] DNS01 チャレンジプロバイダーを設定中" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] 環境変数の設定" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] HTTP01 チャレンジプロバイダーの設定" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] 証明書の秘密鍵をディスクに書き込んでいます" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] 証明書をディスクに書き込み中" - -#~ msgid "Auto Backup Completed" -#~ msgstr "自動バックアップ完了" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "自動バックアップ設定エラー" - -#~ msgid "Auto Backup Failed" -#~ msgstr "自動バックアップが失敗しました" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "自動バックアップの保存に失敗しました" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "バックアップタスク %{backup_name} が正常に完了しました、ファイル: %{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "バックアップタスク %{backup_name} のストレージへのアップロード中に失敗しました。エラー: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "バックアップタスク %{backup_name} の実行に失敗しました。エラー: %{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "証明書 %{name} の有効期限が切れました" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "証明書 %{name} は %{days} 日後に期限切れになります" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "証明書 %{name} は1日で期限切れになります" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "証明書有効期限のお知らせ" - -#~ msgid "Certificate Expired" -#~ msgstr "証明書の有効期限が切れました" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "証明書の有効期限が近づいています" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "証明書が見つかりません: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "証明書の失効に成功しました" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "/var/run/docker.sock が存在するか確認してください。Nginx UI 公式 Docker " -#~ "イメージを使用している場合は、Docker ソケットを次のようにマウントしてください: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`。Nginx UI 公式イメージは " -#~ "/var/run/docker.sock を使用して、Docker Client API を介してホストの Docker Engine " -#~ "と通信します。この機能は、別のコンテナ内で Nginx を制御し、Nginx UI の OTA " -#~ "アップグレード時にバイナリの置き換えではなくコンテナの置き換えを実行するために使用され、コンテナの依存関係もアップグレードされるようにします。この機能が" -#~ "必要ない場合は、環境変数 NGINX_UI_IGNORE_DOCKER_SOCKET=true をコンテナに追加してください。" - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "nginx のアクセスログのパスが存在するか確認してください。デフォルトでは、このパスは 'nginx -V' " -#~ "から取得されます。取得できない場合、または取得したパスが有効な既存のファイルを指していない場合、エラーが報告されます。この場合、設定ファイルを変更してア" -#~ "クセスログのパスを指定する必要があります。詳細についてはドキュメントを参照してください: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "nginxの設定ディレクトリが存在するか確認する" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "nginxの設定エントリファイルが存在するか確認する" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "nginx のエラーログのパスが存在するか確認してください。デフォルトでは、このパスは 'nginx -V' " -#~ "から取得されます。取得できない場合、または取得したパスが有効な既存のファイルを指していない場合、エラーが報告されます。この場合、設定ファイルを変更してエ" -#~ "ラーログのパスを指定する必要があります。詳細についてはドキュメントを参照してください: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "NginxのPIDパスが存在するか確認してください。デフォルトでは、このパスは'nginx " -#~ "-V'" -#~ "から取得されます。取得できない場合、エラーが報告されます。この場合、設定ファイルを変更してNginxのPIDパスを指定する必要があります。詳細はドキュメ" -#~ "ントを参照してください: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "nginx の sbin パスが存在するか確認してください" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "nginx.conf に conf.d ディレクトリが含まれているか確認する" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "nginx.conf に sites-enabled ディレクトリが含まれているか確認する" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "nginx.conf に streams-enabled ディレクトリが含まれているか確認する" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "nginx の設定ディレクトリに sites-available と sites-enabled ディレクトリがあるか確認する" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "nginxの設定ディレクトリにstreams-availableとstreams-enabledディレクトリがあるか確認する" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "%{env_name} 上の %{path} の削除に失敗しました" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{env_name} 上の %{path} を削除しました" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "リモート設定の削除エラー" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "リモート設定の削除成功" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "リモートストリーム削除エラー" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "リモートストリームの削除に成功しました" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "サイト %{name} を %{node} から削除できませんでした" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "サイト %{name} を %{node} から正常に削除しました" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "%{node} からのストリーム %{name} の削除に失敗しました" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "ストリーム %{name} を %{node} から削除しました" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "リモートサイトメンテナンスの無効化エラー" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "リモートサイトのメンテナンスを無効化しました" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "リモートストリーム無効化エラー" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "リモートストリームの無効化に成功しました" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "サイト %{name} を %{node} から無効化できませんでした" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "サイト %{name} を %{node} から無効化しました" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "サイト %{name} のメンテナンスを %{node} で無効にするのに失敗しました" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "サイト %{name} のメンテナンスを %{node} で無効化しました" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "ノード %{node} からのストリーム %{name} の無効化に失敗しました" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "ストリーム %{name} を %{node} から無効化しました" - -#~ msgid "Docker socket exists" -#~ msgstr "Docker ソケットが存在します" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "リモートサイトのメンテナンス有効化エラー" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "リモートサイトのメンテナンス有効化成功" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "リモートストリームの有効化エラー" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "リモートストリームの有効化成功" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "サイト %{name} のメンテナンスを %{node} で有効化できませんでした" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "サイト %{name} のメンテナンスを %{node} で有効化しました" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "サイト %{name} を %{node} で有効化できませんでした" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "サイト %{name} を %{node} で有効化しました" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "ストリーム %{name} を %{node} で有効化できませんでした" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "ストリーム %{name} を %{node} で有効化しました" - -#~ msgid "External Notification Test" -#~ msgstr "外部通知テスト" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "データベースから証明書の削除に失敗しました: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "証明書の失効に失敗しました: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "ログファイル %{log_path} は通常のファイルではありません。Docker コンテナで nginx-ui を使用している場合は、詳細について " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html を参照してください。" - -#~ msgid "Nginx access log path exists" -#~ msgstr "Nginx アクセスログのパスが存在します" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Nginx設定ディレクトリが存在します" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Nginx設定エントリファイルが存在します" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Nginxエラーログのパスが存在します" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Nginx PID パスが存在します" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Nginx の Sbin パスが存在します" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf は conf.d ディレクトリを含んでいます" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf は sites-enabled ディレクトリを含んでいます" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf には streams-enabled ディレクトリが含まれています" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "%{node} での Nginx の再読み込みに失敗しました、応答: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "%{node} での Nginx のリロードに成功しました" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "リモートNginxの再読み込みエラー" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "リモートNginxのリロード成功" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "%{env_name} 上の %{orig_path} から %{new_path} への名前変更に失敗しました" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "%{env_name} 上の %{orig_path} を %{new_path} に名前変更しました" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "リモートストリームの名前変更エラー" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "リモートストリームの名前変更成功" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "サイト %{name} を %{new_name} にリネームする際に %{node} で失敗しました" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "サイト %{name} を %{new_name} にリネームしました(%{node})" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "ストリーム %{name} を %{new_name} にリネームする際に %{node} で失敗しました" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "ストリーム %{name} を %{new_name} に名前変更しました(%{node})" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "%{node} での Nginx の再起動に失敗しました、応答: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "%{node} での Nginx の再起動が成功しました" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "リモートNginxの再起動エラー" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "リモートNginxの再起動成功" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "リモートストリームの保存エラー" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "リモートストリームの保存に成功しました" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "サイト %{name} を %{node} に保存できませんでした" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "サイト %{name} を %{node} に正常に保存しました" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "ストリーム %{name} を %{node} に保存できませんでした" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "ストリーム %{name} を %{node} に正常に保存しました" - -#~ msgid "Sites directory exists" -#~ msgstr "サイトディレクトリが存在します" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "バックアップタスク %{backup_name} のストレージ構成の検証に失敗しました。エラー: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "ストリームディレクトリが存在します" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "証明書 %{cert_name} を %{env_name} に同期できませんでした" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "証明書 %{cert_name} を %{env_name} に同期しました" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "設定 %{config_name} を %{env_name} に同期できませんでした" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "設定 %{config_name} を %{env_name} に正常に同期しました" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "これは、Nginx UIから%{Timestamp}で送信されたテストメッセージです。" +#~ "Server-Sent Events プロトコルを介してバックエンドとの通信をサポートしま" +#~ "す。Nginx UI を Nginx リバースプロキシ経由で使用している場合は、このリンク" +#~ "を参照して対応する設定ファイルを作成してください: https://nginxui.com/" +#~ "guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "空白の場合、デフォルトの CA ディレクトリが使用されます。" @@ -5959,12 +6253,12 @@ msgstr "あなたのパスキー" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "/var/run/docker.sock が存在するか確認してください。Nginx UI 公式 Docker " -#~ "イメージを使用している場合は、Docker ソケットが次のようにマウントされていることを確認してください: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "/var/run/docker.sock が存在するか確認してください。Nginx UI 公式 Docker イ" +#~ "メージを使用している場合は、Docker ソケットが次のようにマウントされている" +#~ "ことを確認してください: `-v /var/run/docker.sock:/var/run/docker.sock`." #~ msgid "Check if the nginx access log path exists" #~ msgstr "Nginx のアクセスログパスが存在するか確認する" @@ -5985,4 +6279,5 @@ msgstr "あなたのパスキー" #~ msgstr "不明な問題" #~ msgid "Automatically indexed from site and stream configurations." -#~ msgstr "「サイトおよびストリーム設定から自動的にインデックス化されました。」" +#~ msgstr "" +#~ "「サイトおよびストリーム設定から自動的にインデックス化されました。」" diff --git a/app/src/language/ko_KR/app.po b/app/src/language/ko_KR/app.po index aabacd8e..6acc9937 100644 --- a/app/src/language/ko_KR/app.po +++ b/app/src/language/ko_KR/app.po @@ -5,15 +5,102 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "PO-Revision-Date: 2025-04-07 12:21+0000\n" "Last-Translator: jkh0kr \n" -"Language-Team: Korean " -"\n" +"Language-Team: Korean \n" "Language: ko_KR\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Weblate 5.10.4\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] ACME 사용자: %{name}, 이메일: %{email}, CA 디렉터리: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] 현재 인증서를 나중에 취소하기 위해 백업 중" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] 인증서 갱신 성공" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] 인증서가 성공적으로 취소되었습니다" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] 서버에 인증서가 사용되었습니다, 서버 TLS 인증서 다시 불러오는 중" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] CA 서버와의 통신을 용이하게 하는 클라이언트 생성" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] 환경 변수가 정리되었습니다" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] 완료됨" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] 인증서가 성공적으로 발급되었습니다" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] 인증서 획득 중" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] 인증서 해지 준비 중" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] 레고 구성 준비 중" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Nginx 다시 로드 중" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] 해지 완료" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] 인증서 취소 중" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] 이전 인증서 취소 중" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] DNS01 챌린지 공급자 설정 중" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] 환경 변수 설정 중" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] HTTP01 챌린지 공급자 설정 중" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] 인증서 개인 키를 디스크에 기록 중" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] 인증서를 디스크에 작성 중" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* 그룹 %{groupName}의 노드와 수동으로 선택한 노드 포함" @@ -145,6 +232,7 @@ msgstr "이후에 이 페이지를 새로 고치고 패스키 추가를 다시 msgid "All" msgstr "모두" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "모든 복구 코드가 사용되었습니다" @@ -153,10 +241,13 @@ msgstr "모든 복구 코드가 사용되었습니다" msgid "" "All selected subdomains must belong to the same DNS Provider, otherwise the " "certificate application will fail." -msgstr "선택한 모든 서브도메인은 동일한 DNS 공급자에 속해야 합니다. 그렇지 않으면 인증서 신청이 실패합니다." +msgstr "" +"선택한 모든 서브도메인은 동일한 DNS 공급자에 속해야 합니다. 그렇지 않으면 인" +"증서 신청이 실패합니다." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "도달 가능한 모든 IP 주소는 개인 인증 기관과 함께 사용할 수 있습니다" #: src/views/preference/tabs/OpenAISettings.vue:32 @@ -253,7 +344,7 @@ msgstr "ChatGPT에게 도움 요청" msgid "Assistant" msgstr "어시스턴트" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "수정 시도" @@ -292,6 +383,22 @@ msgstr "자동 = CPU 코어" msgid "Auto Backup" msgstr "자동 백업" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "자동 백업 완료" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "자동 백업 구성 오류" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "자동 백업 실패" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "자동 백업 저장 실패" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -387,6 +494,20 @@ msgstr "백업 경로가 허용된 접근 경로에 없습니다: {0}" msgid "Backup Schedule" msgstr "백업 일정" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"백업 작업 %{backup_name} 이(가) 성공적으로 완료되었습니다, 파일: %{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "백업 작업 %{backup_name}의 저장소 업로드 중 실패, 오류: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "백업 작업 %{backup_name} 실행 실패, 오류: %{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "백업 유형" @@ -502,8 +623,8 @@ msgid "" "Calculated based on worker_processes * worker_connections. Actual " "performance depends on hardware, configuration, and workload" msgstr "" -"worker_processes * worker_connections를 기반으로 계산되었습니다. 실제 성능은 하드웨어, 구성 및 작업량에 " -"따라 달라집니다" +"worker_processes * worker_connections를 기반으로 계산되었습니다. 실제 성능은 " +"하드웨어, 구성 및 작업량에 따라 달라집니다" #: src/components/ChatGPT/ChatMessage.vue:216 #: src/components/NgxConfigEditor/NgxServer.vue:61 @@ -559,6 +680,20 @@ msgstr "인증서 경로가 nginx 설정 디렉터리 아래에 있지 않습니 msgid "certificate" msgstr "인증서" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "인증서 %{name}의 유효 기간이 만료되었습니다" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "인증서 %{name}은(는) %{days}일 후에 만료됩니다" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "인증서 %{name}의 유효 기간이 1일 남았습니다" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "인증서 내용과 개인 키 내용은 비워둘 수 없습니다" @@ -567,6 +702,20 @@ msgstr "인증서 내용과 개인 키 내용은 비워둘 수 없습니다" msgid "Certificate decode error" msgstr "인증서 디코드 오류" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "인증서 만료 알림" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "인증서 만료됨" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "인증서 만료 임박" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "인증서 파일이 성공적으로 다운로드되었습니다" @@ -575,6 +724,10 @@ msgstr "인증서 파일이 성공적으로 다운로드되었습니다" msgid "Certificate name cannot be empty" msgstr "인증서 이름은 비워둘 수 없습니다" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "인증서를 찾을 수 없음: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "인증서 파싱 오류" @@ -596,6 +749,10 @@ msgstr "인증서 갱신 간격" msgid "Certificate renewed successfully" msgstr "인증서 갱신 성공" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "인증서가 성공적으로 취소되었습니다" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -662,13 +819,116 @@ msgstr "확인" msgid "Check again" msgstr "다시 확인" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"/var/run/docker.sock이 존재하는지 확인하세요. Nginx UI 공식 Docker 이미지를 " +"사용 중이라면 Docker 소켓을 다음과 같이 마운트했는지 확인하세요: `-v /var/" +"run/docker.sock:/var/run/docker.sock`. Nginx UI 공식 이미지는 /var/run/" +"docker.sock을 사용하여 Docker Client API를 통해 호스트의 Docker 엔진과 통신합" +"니다. 이 기능은 다른 컨테이너에서 Nginx를 제어하고 Nginx UI의 OTA 업그레이드 " +"시 바이너리 교체 대신 컨테이너 교체를 수행하여 컨테이너 종속성도 업그레이드되" +"도록 하는 데 사용됩니다. 이 기능이 필요하지 않다면 컨테이너에 환경 변수 " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true를 추가하세요." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " "prevents using Passkeys and clipboard features" msgstr "" -"HTTPS가 활성화되었는지 확인하세요. localhost 외부에서 HTTP를 사용하는 것은 안전하지 않으며 Passkeys 및 클립보드 " -"기능 사용을 방해합니다" +"HTTPS가 활성화되었는지 확인하세요. localhost 외부에서 HTTP를 사용하는 것은 안" +"전하지 않으며 Passkeys 및 클립보드 기능 사용을 방해합니다" + +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"nginx 액세스 로그 경로가 존재하는지 확인하세요. 기본적으로 이 경로는 'nginx -" +"V'에서 가져옵니다. 가져올 수 없거나 가져온 경로가 유효한 기존 파일을 가리키" +"지 않는 경우 오류가 보고됩니다. 이 경우 구성 파일을 수정하여 액세스 로그 경로" +"를 지정해야 합니다. 자세한 내용은 문서를 참조하세요: https://nginxui.com/" +"zh_CN/guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "nginx 설정 디렉터리가 존재하는지 확인" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "nginx 구성 항목 파일이 존재하는지 확인하세요" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"nginx 오류 로그 경로가 존재하는지 확인하세요. 기본적으로 이 경로는 'nginx -" +"V'에서 얻습니다. 경로를 얻을 수 없거나 얻은 경로가 유효한 기존 파일을 가리키" +"지 않으면 오류가 보고됩니다. 이 경우 구성 파일을 수정하여 오류 로그 경로를 지" +"정해야 합니다. 자세한 내용은 문서를 참조하세요: https://nginxui.com/zh_CN/" +"guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Nginx PID 경로가 존재하는지 확인하세요. 기본적으로 이 경로는 'nginx -V'에서 " +"얻습니다. 얻을 수 없는 경우 오류가 보고됩니다. 이 경우 구성 파일을 수정하여 " +"Nginx PID 경로를 지정해야 합니다. 자세한 내용은 문서를 참조하세요: https://" +"nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "nginx sbin 경로가 존재하는지 확인하세요" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "nginx.conf에 conf.d 디렉터리가 포함되어 있는지 확인" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "nginx.conf에 sites-enabled 디렉토리가 포함되어 있는지 확인" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "nginx.conf에 streams-enabled 디렉토리가 포함되어 있는지 확인" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"nginx 설정 디렉터리에 sites-available 및 sites-enabled 디렉터리가 있는지 확인" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"nginx 구성 디렉터리 아래에 streams-available 및 streams-enabled 디렉터리가 있" +"는지 확인하세요" #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" @@ -913,7 +1173,9 @@ msgstr "폴더 생성" msgid "" "Create system backups including Nginx configuration and Nginx UI settings. " "Backup files will be automatically downloaded to your computer." -msgstr "Nginx 구성 및 Nginx UI 설정을 포함한 시스템 백업을 생성합니다. 백업 파일은 자동으로 컴퓨터에 다운로드됩니다." +msgstr "" +"Nginx 구성 및 Nginx UI 설정을 포함한 시스템 백업을 생성합니다. 백업 파일은 자" +"동으로 컴퓨터에 다운로드됩니다." #: src/views/backup/AutoBackup/AutoBackup.vue:229 #: src/views/environments/group/columns.ts:72 @@ -1046,6 +1308,14 @@ msgstr "공유 메모리 영역 이름과 크기를 정의합니다(예: proxy_c msgid "Delete" msgstr "삭제" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "%{env_name}에서 %{path} 삭제 실패" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{env_name}에서 %{path} 삭제 완료" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "인증서 삭제" @@ -1058,18 +1328,51 @@ msgstr "삭제 확인" msgid "Delete Permanently" msgstr "영구 삭제" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "원격 구성 삭제 오류" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "원격 구성 삭제 성공" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "원격 사이트 삭제 오류" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "원격 사이트 삭제 성공" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "원격 스트림 삭제 오류" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "원격 스트림 삭제 성공" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "%{node}에서 사이트 %{name} 삭제 실패" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "%{node}에서 사이트 %{name} 삭제 성공" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "사이트 삭제: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "%{node}에서 스트림 %{name} 삭제 실패" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "스트림 %{name}을(를) %{node}에서 성공적으로 삭제했습니다" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "스트림 삭제: %{stream_name}" @@ -1156,14 +1459,56 @@ msgstr "비활성화" msgid "Disable auto-renewal failed for %{name}" msgstr "%{name}의 자동 갱신 비활성화 실패" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "원격 사이트 비활성화 오류" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "원격 사이트 유지 관리 비활성화 오류" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "원격 사이트 유지 관리 비활성화 성공" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "원격 사이트 비활성화 성공" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "원격 스트림 비활성화 오류" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "원격 스트림 비활성화 성공" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "%{node}에서 사이트 %{name} 비활성화 실패" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "%{node}에서 사이트 %{name} 비활성화 성공" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "%{node}에서 사이트 %{name} 유지 관리를 비활성화하지 못했습니다" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "%{node}에서 %{name} 사이트 유지 관리 비활성화 성공" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "%{node}에서 스트림 %{name} 비활성화 실패" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "스트림 %{name}을(를) %{node}에서 비활성화했습니다" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1234,6 +1579,10 @@ msgstr "이 업스트림을 제거하시겠습니까?" msgid "Docker client not initialized" msgstr "Docker 클라이언트가 초기화되지 않았습니다" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Docker 소켓이 존재합니다" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Docker 소켓이 존재하지 않습니다" @@ -1250,7 +1599,8 @@ msgstr "도메인" #: src/views/certificate/components/AutoCertManagement.vue:55 msgid "Domains list is empty, try to reopen Auto Cert for %{config}" -msgstr "도메인 목록이 비어 있습니다. %{config}에 대한 자동 인증서를 다시 열어보세요" +msgstr "" +"도메인 목록이 비어 있습니다. %{config}에 대한 자동 인증서를 다시 열어보세요" #: src/views/certificate/components/CertificateDownload.vue:93 msgid "Download Certificate Files" @@ -1282,8 +1632,8 @@ msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." msgstr "" -"일부 브라우저의 보안 정책으로 인해 localhost에서 실행하는 경우를 제외하고 비 HTTPS 웹사이트에서는 패스키를 사용할 수 " -"없습니다." +"일부 브라우저의 보안 정책으로 인해 localhost에서 실행하는 경우를 제외하고 비 " +"HTTPS 웹사이트에서는 패스키를 사용할 수 없습니다." #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1382,14 +1732,56 @@ msgstr "HTTPS 활성화" msgid "Enable Proxy Cache" msgstr "프록시 캐시 활성화" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "원격 사이트 활성화 오류" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "원격 사이트 유지 관리 활성화 오류" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "원격 사이트 유지 관리 활성화 성공" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "원격 사이트 활성화 성공" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "원격 스트림 활성화 오류" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "원격 스트림 활성화 성공" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "%{node}에서 사이트 %{name} 유지 관리 활성화 실패" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "%{node}에서 사이트 %{name} 유지 관리 활성화 성공" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "%{node}에서 사이트 %{name} 활성화 실패" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "%{node}에서 사이트 %{name} 활성화 성공" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "%{node}에서 스트림 %{name} 활성화 실패" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "%{node}에서 스트림 %{name} 활성화 성공" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "stub_status 모듈 활성화" @@ -1526,13 +1918,16 @@ msgstr "Excel로 내보내기" msgid "" "External Account Binding HMAC Key (optional). Should be in Base64 URL " "encoding format." -msgstr "외부 계정 바인딩 HMAC 키 (선택 사항). Base64 URL 인코딩 형식이어야 합니다." +msgstr "" +"외부 계정 바인딩 HMAC 키 (선택 사항). Base64 URL 인코딩 형식이어야 합니다." #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." -msgstr "외부 계정 바인딩 키 ID (선택 사항). ZeroSSL과 같은 일부 ACME 공급자에 필요합니다." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." +msgstr "" +"외부 계정 바인딩 키 ID (선택 사항). ZeroSSL과 같은 일부 ACME 공급자에 필요합" +"니다." #: src/views/preference/tabs/NginxSettings.vue:49 msgid "External Docker Container" @@ -1542,6 +1937,10 @@ msgstr "외부 Docker 컨테이너" msgid "External notification configuration not found" msgstr "외부 알림 구성이 없습니다" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "외부 알림 테스트" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1696,6 +2095,10 @@ msgstr "Nginx UI 디렉터리 복호화 실패: {0}" msgid "Failed to delete certificate" msgstr "인증서 삭제 실패" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "데이터베이스에서 인증서 삭제 실패: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1862,6 +2265,10 @@ msgstr "Nginx UI 파일 복원 실패: {0}" msgid "Failed to revoke certificate" msgstr "인증서 취소에 실패했습니다" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "인증서 취소 실패: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Nginx 성능 설정 저장 실패" @@ -1977,12 +2384,14 @@ msgstr "중국 사용자를 위해: https://cloud.nginxui.com/" msgid "" "For IP-based certificate configurations, only HTTP-01 challenge method is " "supported. DNS-01 challenge is not compatible with IP-based certificates." -msgstr "IP 기반 인증서 구성에서는 HTTP-01 챌린지 방법만 지원됩니다. DNS-01 챌린지는 IP 기반 인증서와 호환되지 않습니다." +msgstr "" +"IP 기반 인증서 구성에서는 HTTP-01 챌린지 방법만 지원됩니다. DNS-01 챌린지는 " +"IP 기반 인증서와 호환되지 않습니다." #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "IP 기반 인증서의 경우 인증서에 포함될 서버 IP 주소를 지정해 주세요." #: src/constants/errors/middleware.ts:4 @@ -2125,7 +2534,9 @@ msgstr "ICP 번호" msgid "" "If the number of login failed attempts from a ip reach the max attempts in " "ban threshold minutes, the ip will be banned for a period of time." -msgstr "IP에서 로그인 실패 시도 횟수가 차단 임계 시간 내에 최대 시도 횟수에 도달하면 해당 IP는 일정 시간 동안 차단됩니다." +msgstr "" +"IP에서 로그인 실패 시도 횟수가 차단 임계 시간 내에 최대 시도 횟수에 도달하면 " +"해당 IP는 일정 시간 동안 차단됩니다." #: src/components/AutoCertForm/AutoCertForm.vue:280 msgid "" @@ -2141,7 +2552,9 @@ msgstr "브라우저가 WebAuthn 패스키를 지원하는 경우 대화 상자 msgid "" "If your domain has CNAME records and you cannot obtain certificates, you " "need to enable this option." -msgstr "도메인에 CNAME 레코드가 있고 인증서를 얻을 수 없는 경우 이 옵션을 활성화해야 합니다." +msgstr "" +"도메인에 CNAME 레코드가 있고 인증서를 얻을 수 없는 경우 이 옵션을 활성화해야 " +"합니다." #: src/views/certificate/CertificateList/Certificate.vue:27 msgid "Import" @@ -2160,7 +2573,8 @@ msgstr "비활성 시간" msgid "" "Includes master process, worker processes, cache processes, and other Nginx " "processes" -msgstr "마스터 프로세스, 워커 프로세스, 캐시 프로세스 및 기타 Nginx 프로세스 포함" +msgstr "" +"마스터 프로세스, 워커 프로세스, 캐시 프로세스 및 기타 Nginx 프로세스 포함" #: src/components/ProcessingStatus/ProcessingStatus.vue:31 msgid "Indexing..." @@ -2217,7 +2631,9 @@ msgstr "시스템 시작 후 10분이 지나면 설치가 허용되지 않습니 msgid "" "Installation is not allowed after 10 minutes of system startup, please " "restart the Nginx UI." -msgstr "시스템 시작 후 10분이 지나면 설치가 허용되지 않습니다. Nginx UI를 다시 시작하세요." +msgstr "" +"시스템 시작 후 10분이 지나면 설치가 허용되지 않습니다. Nginx UI를 다시 시작하" +"세요." #: src/views/preference/tabs/LogrotateSettings.vue:26 msgid "Interval" @@ -2338,7 +2754,9 @@ msgstr "Jwt 토큰" msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." -msgstr "복구 코드를 비밀번호와 같이 안전하게 보관하세요. 비밀번호 관리자에 저장하는 것을 권장합니다." +msgstr "" +"복구 코드를 비밀번호와 같이 안전하게 보관하세요. 비밀번호 관리자에 저장하는 " +"것을 권장합니다." #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2495,6 +2913,16 @@ msgstr "위치들" msgid "Log" msgstr "로그" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"로그 파일 %{log_path}은(는) 일반 파일이 아닙니다. Docker 컨테이너에서 nginx-" +"ui를 사용 중이라면 자세한 내용은 https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html을 참조하십시오." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "로그 목록" @@ -2517,16 +2945,18 @@ msgstr "로그관리" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" -"Logrotate는 대부분의 주류 리눅스 배포판에서Nginx UI를 호스트 머신에 설치하는 사용자에게 기본적으로 활성화되어 있으므로이 " -"페이지의 매개 변수를 수정할 필요가 없습니다. 도커 컨테이너를 사용하여 Nginx UI를 설치하는사용자는이 옵션을 수동으로 활성화할 수 " -"있습니다. Nginx UI의 크론탭 작업 스케줄러는설정한 간격 (분 단위)에서 logrotate 명령을 실행합니다." +"Logrotate는 대부분의 주류 리눅스 배포판에서Nginx UI를 호스트 머신에 설치하는 " +"사용자에게 기본적으로 활성화되어 있으므로이 페이지의 매개 변수를 수정할 필요" +"가 없습니다. 도커 컨테이너를 사용하여 Nginx UI를 설치하는사용자는이 옵션을 수" +"동으로 활성화할 수 있습니다. Nginx UI의 크론탭 작업 스케줄러는설정한 간격 " +"(분 단위)에서 logrotate 명령을 실행합니다." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2555,7 +2985,9 @@ msgstr "인증서 디렉터리 생성 오류: {0}" msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." -msgstr "인증서를 받기 전에 .well-known 디렉터리에 대한 역방향 프록시를 HTTPChallengePort로 구성했는지 확인하세요." +msgstr "" +"인증서를 받기 전에 .well-known 디렉터리에 대한 역방향 프록시를 " +"HTTPChallengePort로 구성했는지 확인하세요." #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2835,6 +3267,10 @@ msgstr "Nginx -T 의 출력이 비어 있습니다" msgid "Nginx Access Log Path" msgstr "Nginx 접근 로그 경로" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Nginx 접근 로그 경로가 존재합니다" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2864,6 +3300,14 @@ msgstr "Nginx 설정에 stream-enabled가 포함되어 있지 않음" msgid "Nginx config directory is not set" msgstr "Nginx 설정 디렉터리가 설정되지 않았습니다" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Nginx 설정 디렉터리가 존재합니다" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Nginx 구성 진입 파일이 존재합니다" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Nginx 구성이 복원되었습니다" @@ -2898,6 +3342,10 @@ msgstr "Nginx CPU 사용률" msgid "Nginx Error Log Path" msgstr "Nginx 오류 로그 경로" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Nginx 오류 로그 경로가 존재합니다" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Nginx 오류: {0}" @@ -2935,6 +3383,10 @@ msgstr "Nginx 메모리 사용량" msgid "Nginx PID Path" msgstr "Nginx PID 경로" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Nginx PID 경로가 존재합니다" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Nginx 재로드 명령어" @@ -2964,6 +3416,10 @@ msgstr "Nginx 재시작 작업이 원격 노드로 전송되었습니다" msgid "Nginx restarted successfully" msgstr "Nginx 재시작이 성공적으로 완료되었습니다" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Nginx Sbin 경로가 존재합니다" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Nginx 설정 테스트 명령어" @@ -2987,10 +3443,22 @@ msgstr "Nginx UI 설정이 복원되었습니다" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "Nginx UI 설정이 복원되었으며 몇 초 후에 자동으로 재시작됩니다." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf는 conf.d 디렉토리를 포함합니다" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf에 sites-enabled 디렉터리가 포함되어 있습니다" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf에는 streams-enabled 디렉토리가 포함됩니다" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3030,7 +3498,9 @@ msgstr "서버가 구성되지 않았습니다" msgid "" "No specific IP address found in server_name configuration. Please specify " "the server IP address below for the certificate." -msgstr "server_name 구성에서 특정 IP 주소를 찾을 수 없습니다. 인증서를 위해 아래에 서버 IP 주소를 지정해 주세요." +msgstr "" +"server_name 구성에서 특정 IP 주소를 찾을 수 없습니다. 인증서를 위해 아래에 서" +"버 IP 주소를 지정해 주세요." #: src/components/NgxConfigEditor/NgxUpstream.vue:103 msgid "No upstreams configured" @@ -3098,7 +3568,9 @@ msgstr "참고" msgid "" "Note, if the configuration file include other configurations or " "certificates, please synchronize them to the remote nodes in advance." -msgstr "구성 파일에 다른 구성이나 인증서가 포함되어 있는 경우, 미리 원격 노드에 동기화하십시오." +msgstr "" +"구성 파일에 다른 구성이나 인증서가 포함되어 있는 경우, 미리 원격 노드에 동기" +"화하십시오." #: src/views/notification/Notification.vue:28 msgid "Notification" @@ -3152,7 +3624,9 @@ msgstr "OCSP Must Staple" msgid "" "OCSP Must Staple may cause errors for some users on first access using " "Firefox." -msgstr "OCSP Must Staple은 Firefox를 사용한 첫 접속 시 일부 사용자에게 오류를 일으킬 수 있습니다." +msgstr "" +"OCSP Must Staple은 Firefox를 사용한 첫 접속 시 일부 사용자에게 오류를 일으킬 " +"수 있습니다." #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:73 #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:165 @@ -3296,8 +3770,9 @@ msgid "" "facial recognition, a device password, or a PIN. They can be used as a " "password replacement or as a 2FA method." msgstr "" -"패스키는 터치, 얼굴 인식, 기기 비밀번호 또는 PIN을 사용하여 신원을 확인하는 웹인증(WebAuthn) 자격 증명입니다. 비밀번호 " -"대체 또는 2FA 방법으로 사용할 수 있습니다." +"패스키는 터치, 얼굴 인식, 기기 비밀번호 또는 PIN을 사용하여 신원을 확인하는 " +"웹인증(WebAuthn) 자격 증명입니다. 비밀번호 대체 또는 2FA 방법으로 사용할 수 " +"있습니다." #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3448,12 +3923,15 @@ msgstr "DNS 제공자가 제공한 API 인증 자격 증명을 입력해주세 msgid "" "Please first add credentials in Certification > DNS Credentials, and then " "select one of the credentialsbelow to request the API of the DNS provider." -msgstr "먼저 인증서 > DNS 자격 증명에 자격 증명을 추가한 다음,DNS 제공자의 API를 요청하려면 아래 자격 증명 중 하나를 선택해주세요." +msgstr "" +"먼저 인증서 > DNS 자격 증명에 자격 증명을 추가한 다음,DNS 제공자의 API를 요청" +"하려면 아래 자격 증명 중 하나를 선택해주세요." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "잠금을 방지하려면 설정에서 즉시 새로운 복구 코드를 생성하세요." #: src/views/config/components/ConfigRightPanel/Basic.vue:27 @@ -3495,7 +3973,8 @@ msgid "Please log in." msgstr "로그인해 주세요." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "아래의 시간 설정 단위는 모두 초 단위임을 유의해주세요." #: src/views/install/components/InstallView.vue:102 @@ -3625,9 +4104,10 @@ msgstr "보호된 디렉터리" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." -msgstr "프로토콜 설정은 직접 연결할 때만 적용됩니다. 리버스 프록시를 사용하는 경우 리버스 프록시에서 별도로 프로토콜을 구성하세요." +"reverse proxy, please configure the protocol separately in the reverse proxy." +msgstr "" +"프로토콜 설정은 직접 연결할 때만 적용됩니다. 리버스 프록시를 사용하는 경우 리" +"버스 프록시에서 별도로 프로토콜을 구성하세요." #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3676,7 +4156,7 @@ msgstr "읽기" msgid "Receive" msgstr "수신" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "재확인" @@ -3692,7 +4172,9 @@ msgstr "복구 코드" msgid "" "Recovery codes are used to access your account when you lose access to your " "2FA device. Each code can only be used once." -msgstr "복구 코드는 2FA 장치에 대한 접근 권한을 잃었을 때 계정에 접근하는 데 사용됩니다. 각 코드는 한 번만 사용할 수 있습니다." +msgstr "" +"복구 코드는 2FA 장치에 대한 접근 권한을 잃었을 때 계정에 접근하는 데 사용됩니" +"다. 각 코드는 한 번만 사용할 수 있습니다." #: src/views/preference/tabs/CertSettings.vue:40 msgid "Recursive Nameservers" @@ -3710,7 +4192,9 @@ msgstr "등록" msgid "" "Register a user or use this account to issue a certificate through an HTTP " "proxy." -msgstr "사용자를 등록하거나 이 계정을 사용하여 HTTP 프록시를 통해 인증서를 발급합니다." +msgstr "" +"사용자를 등록하거나 이 계정을 사용하여 HTTP 프록시를 통해 인증서를 발급합니" +"다." #: src/views/certificate/ACMEUser.vue:140 msgid "Register failed" @@ -3760,6 +4244,22 @@ msgstr "Nginx 다시 로드" msgid "Reload nginx failed: {0}" msgstr "nginx 다시 로드 실패: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "%{node}에서 Nginx 다시 로드 실패, 응답: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "%{node}에서 Nginx 다시 로드 성공" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "원격 Nginx 다시 로드 오류" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "원격 Nginx 다시 로드 성공" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "다시 로드 요청이 실패했습니다. 네트워크 연결을 확인하세요" @@ -3799,22 +4299,60 @@ msgstr "성공적으로 제거됨" msgid "Rename" msgstr "이름 바꾸기" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "%{env_name}에서 %{orig_path}을(를) %{new_path}(으)로 이름 변경 실패" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "%{env_name}에서 %{orig_path}을(를) %{new_path}(으)로 이름 변경 성공" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "원격 구성 이름 변경 오류" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "원격 구성 이름 변경 성공" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "원격 사이트 이름 변경 오류" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "원격 사이트 이름 변경 성공" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "원격 스트림 이름 변경 오류" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "원격 스트림 이름 변경 성공" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "" +"%{node}에서 사이트 %{name}을(를) %{new_name}(으)로 이름 변경하는 데 실패했습" +"니다" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "사이트 %{name}을(를) %{new_name}(으)로 이름 변경했습니다 (%{node})" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "" +"%{node}에서 스트림 %{name}을(를) %{new_name}(으)로 이름 변경하는 데 실패했습" +"니다" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "스트림 %{name}을(를) %{new_name}(으)로 이름 변경했습니다 (%{node})" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "이름 변경 성공" @@ -3877,8 +4415,8 @@ msgid "" "shared library memory, which will be repeated calculated for multiple " "processes" msgstr "" -"Resident Set Size: 물리적 메모리에 상주하는 실제 메모리로, 모든 공유 라이브러리 메모리를 포함하며, 여러 프로세스에 " -"대해 반복 계산됩니다" +"Resident Set Size: 물리적 메모리에 상주하는 실제 메모리로, 모든 공유 라이브러" +"리 메모리를 포함하며, 여러 프로세스에 대해 반복 계산됩니다" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -3895,6 +4433,22 @@ msgstr "재시작" msgid "Restart Nginx" msgstr "Nginx 다시 시작" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "%{node}에서 Nginx 재시작 실패, 응답: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "%{node}에서 Nginx 재시작 성공" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "원격 Nginx 재시작 오류" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "원격 Nginx 재시작 성공" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "재시작 요청이 실패했습니다. 네트워크 연결을 확인해 주세요" @@ -3955,7 +4509,9 @@ msgstr "이 인증서 취소" msgid "" "Revoking a certificate will affect any services currently using it. This " "action cannot be undone." -msgstr "인증서를 취소하면 현재 이를 사용 중인 모든 서비스에 영향을 미칩니다. 이 작업은 취소할 수 없습니다." +msgstr "" +"인증서를 취소하면 현재 이를 사용 중인 모든 서비스에 영향을 미칩니다. 이 작업" +"은 취소할 수 없습니다." #: src/views/preference/tabs/AuthSettings.vue:75 msgid "RP Display Name" @@ -4104,14 +4660,40 @@ msgstr "저장" msgid "Save Directive" msgstr "지시문 저장" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "원격 사이트 저장 오류" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "원격 사이트 저장 성공" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "원격 스트림 저장 오류" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "원격 스트림 저장 성공" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "%{name} 사이트를 %{node}에 저장하지 못했습니다" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "사이트 %{name}을(를) %{node}에 성공적으로 저장했습니다" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "스트림 %{name}을(를) %{node}에 저장하지 못했습니다" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "스트림 %{name}을(를) %{node}에 성공적으로 저장했습니다" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "저장 성공" @@ -4200,7 +4782,9 @@ msgstr "보안 토큰 정보" msgid "" "Select a predefined CA directory or enter a custom one. Leave blank to use " "the default CA directory." -msgstr "미리 정의된 CA 디렉터리를 선택하거나 사용자 지정 디렉터리를 입력하세요. 기본 CA 디렉터리를 사용하려면 비워 두세요." +msgstr "" +"미리 정의된 CA 디렉터리를 선택하거나 사용자 지정 디렉터리를 입력하세요. 기본 " +"CA 디렉터리를 사용하려면 비워 두세요." #: src/language/curd.ts:31 msgid "Select all" @@ -4218,7 +4802,7 @@ msgstr "선택된 {count} 파일" msgid "Selector" msgstr "선택" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "자체 점검" @@ -4284,7 +4868,9 @@ msgstr "lego CNAME 지원 비활성화 환경 플래그 설정 오류: {0}" msgid "" "Set the recursive nameservers to override the systems nameservers for the " "step of DNS challenge." -msgstr "DNS 챌린지 단계에서 시스템 네임서버를 재정의하기 위해 재귀 네임서버를 설정하세요." +msgstr "" +"DNS 챌린지 단계에서 시스템 네임서버를 재정의하기 위해 재귀 네임서버를 설정하" +"세요." #: src/views/site/components/SiteStatusSelect.vue:116 msgid "set to maintenance mode" @@ -4304,16 +4890,16 @@ msgstr "HTTP01 공급자 설정" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" "Settings.NginxLogSettings.AccessLogPath이 비어 있습니다. 자세한 내용은 " "https://nginxui.com/guide/config-nginx.html을 참조하십시오" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" "Settings.NginxLogSettings.ErrorLogPath가 비어 있습니다. 자세한 내용은 " "https://nginxui.com/guide/config-nginx.html을 참조하세요" @@ -4358,6 +4944,10 @@ msgstr "사이트 로그" msgid "Site not found" msgstr "사이트를 찾을 수 없음" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "사이트 디렉터리가 존재합니다" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "사이트 목록" @@ -4487,6 +5077,13 @@ msgstr "저장소" msgid "Storage Configuration" msgstr "스토리지 구성" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"백업 작업 %{backup_name}에 대한 저장소 구성 유효성 검사 실패, 오류: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4514,6 +5111,10 @@ msgstr "스트림이 활성화되었습니다" msgid "Stream not found" msgstr "스트림을 찾을 수 없음" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "스트림 디렉터리가 존재합니다" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "streams-available 디렉터리가 존재하지 않습니다" @@ -4541,27 +5142,16 @@ msgstr "성공" msgid "Sunday" msgstr "일요일" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Server-Sent Events 프로토콜을 통해 백엔드와의 통신을 지원합니다. Nginx UI를 Nginx 리버스 프록시를 통해 사용 " -"중인 경우, 해당 구성 파일을 작성하려면 이 링크를 참조하세요: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" -"WebSocket 프로토콜을 통해 백엔드와의 통신을 지원합니다. Nginx UI가 Nginx 리버스 프록시를 통해 사용 중인 경우 이 " -"링크를 참조하여 해당 구성 파일을 작성하십시오: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"WebSocket 프로토콜을 통해 백엔드와의 통신을 지원합니다. Nginx UI가 Nginx 리버" +"스 프록시를 통해 사용 중인 경우 이 링크를 참조하여 해당 구성 파일을 작성하십" +"시오: https://nginxui.com/guide/nginx-proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4598,19 +5188,35 @@ msgstr "동기화" msgid "Sync Certificate" msgstr "인증서 동기화" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "인증서 %{cert_name}을(를) %{env_name}(으)로 동기화하지 못했습니다" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "인증서 %{cert_name}을(를) %{env_name}(으)로 성공적으로 동기화했습니다" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "인증서 동기화 오류" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "인증서 동기화 성공" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "구성 %{config_name}을(를) %{env_name}에 동기화하지 못했습니다" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "구성 %{config_name}을(를) %{env_name}(으)로 성공적으로 동기화했습니다" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "구성 동기화 오류" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "구성 동기화 성공" @@ -4704,13 +5310,16 @@ msgid "" "The certificate for the domain will be checked 30 minutes, and will be " "renewed if it has been more than 1 week or the period you set in settings " "since it was last issued." -msgstr "도메인에 대한 인증서는 30분마다 확인되며, 마지막으로 발급된 후 1주 이상이 지났거나 설정에서 지정한 기간이 지난 경우 갱신됩니다." +msgstr "" +"도메인에 대한 인증서는 30분마다 확인되며, 마지막으로 발급된 후 1주 이상이 지" +"났거나 설정에서 지정한 기간이 지난 경우 갱신됩니다." #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" "The ICP Number should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "ICP 번호는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함해야 합니다." +msgstr "" +"ICP 번호는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함해야 합니다." #: src/views/certificate/components/CertificateContentEditor.vue:96 msgid "The input is not a SSL Certificate" @@ -4722,26 +5331,32 @@ msgstr "입력한 내용이 SSL 인증서 키가 아닙니다" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" -msgstr "로그 경로가 settings.NginxSettings.LogDirWhiteList의 경로에 속하지 않습니다" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" +msgstr "" +"로그 경로가 settings.NginxSettings.LogDirWhiteList의 경로에 속하지 않습니다" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 msgid "" "The model name should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "모델 이름에는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함되어야 합니다." +msgstr "" +"모델 이름에는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함되어야 합" +"니다." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." -msgstr "코드 완성에 사용되는 모델입니다. 설정되지 않은 경우 채팅 모델이 사용됩니다." +msgid "" +"The model used for code completion, if not set, the chat model will be used." +msgstr "" +"코드 완성에 사용되는 모델입니다. 설정되지 않은 경우 채팅 모델이 사용됩니다." #: src/views/preference/tabs/NodeSettings.vue:18 msgid "" "The node name should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." -msgstr "노드 이름에는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함되어야 합니다." +msgstr "" +"노드 이름에는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함되어야 합" +"니다." #: src/views/site/site_add/SiteAdd.vue:96 msgid "The parameter of server_name is required" @@ -4759,7 +5374,9 @@ msgstr "경로는 존재하지만 파일은 개인 키가 아닙니다" msgid "" "The Public Security Number should only contain letters, unicode, numbers, " "hyphens, dashes, colons, and dots." -msgstr "공공 보안 번호는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함해야 합니다." +msgstr "" +"공공 보안 번호는 문자, 유니코드, 숫자, 하이픈, 대시, 콜론 및 점만 포함해야 합" +"니다." #: src/views/dashboard/components/NodeAnalyticItem.vue:107 msgid "" @@ -4767,14 +5384,16 @@ msgid "" "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." msgstr "" -"원격 Nginx UI 버전이 로컬 Nginx UI 버전과 호환되지 않습니다. 잠재적인 오류를 방지하려면 원격 Nginx UI를 로컬 " -"버전과 일치하도록 업그레이드하십시오." +"원격 Nginx UI 버전이 로컬 Nginx UI 버전과 호환되지 않습니다. 잠재적인 오류를 " +"방지하려면 원격 Nginx UI를 로컬 버전과 일치하도록 업그레이드하십시오." #: src/components/AutoCertForm/AutoCertForm.vue:155 msgid "" "The server_name in the current configuration must be the domain name you " "need to get the certificate, supportmultiple domains." -msgstr "현재 구성에서 server_name은 인증서를 받아야 하는 도메인 이름이어야 하며, 여러 도메인을 지원합니다." +msgstr "" +"현재 구성에서 server_name은 인증서를 받아야 하는 도메인 이름이어야 하며, 여" +"러 도메인을 지원합니다." #: src/views/preference/tabs/CertSettings.vue:22 #: src/views/preference/tabs/HTTPSettings.vue:14 @@ -4804,8 +5423,9 @@ msgid "" "your password and second factors. If you cannot find these codes, you will " "lose access to your account." msgstr "" -"이 코드들은 비밀번호와 두 번째 요소를 잃어버린 경우 계정에 접근할 수 있는 최후의 수단입니다. 이 코드들을 찾을 수 없다면 계정에 " -"대한 접근 권한을 잃게 됩니다." +"이 코드들은 비밀번호와 두 번째 요소를 잃어버린 경우 계정에 접근할 수 있는 최" +"후의 수단입니다. 이 코드들을 찾을 수 없다면 계정에 대한 접근 권한을 잃게 됩니" +"다." #: src/views/certificate/components/AutoCertManagement.vue:45 msgid "This Auto Cert item is invalid, please remove it." @@ -4838,20 +5458,27 @@ msgid "This field should not be empty" msgstr "이 필드는 비워둘 수 없습니다" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "이 필드에는 문자, 유니코드 문자, 숫자 및 -_만 포함되어야 합니다." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "이 필드에는 문자, 유니코드 문자, 숫자 및 -_./: 만 포함되어야 합니다" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "이것은 nginx ui에서 %{timestamp}에서 전송 된 테스트 메시지입니다." + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " "After enabling it, you can view performance statistics" -msgstr "이 모듈은 Nginx 요청 통계, 연결 수 등 데이터를 제공합니다. 활성화한 후 성능 통계를 볼 수 있습니다." +msgstr "" +"이 모듈은 Nginx 요청 통계, 연결 수 등 데이터를 제공합니다. 활성화한 후 성능 " +"통계를 볼 수 있습니다." #: src/views/preference/tabs/ExternalNotify.vue:15 msgid "This notification is disabled" @@ -4861,31 +5488,37 @@ msgstr "이 알림은 비활성화되었습니다" msgid "" "This operation will only remove the certificate from the database. The " "certificate files on the file system will not be deleted." -msgstr "이 작업은 데이터베이스에서만 인증서를 제거합니다. 파일 시스템의 인증서 파일은 삭제되지 않습니다." +msgstr "" +"이 작업은 데이터베이스에서만 인증서를 제거합니다. 파일 시스템의 인증서 파일" +"은 삭제되지 않습니다." #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" -"이 사이트는 HTTPS(포트 443)의 기본 서버(default_server)로 구성되어 있습니다. IP 인증서는 인증 기관(CA)의 " -"지원이 필요하며 모든 ACME 공급자에서 사용할 수 있는 것은 아닙니다." +"이 사이트는 HTTPS(포트 443)의 기본 서버(default_server)로 구성되어 있습니다. " +"IP 인증서는 인증 기관(CA)의 지원이 필요하며 모든 ACME 공급자에서 사용할 수 있" +"는 것은 아닙니다." #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" -"이 사이트는 와일드카드 서버 이름(_)을 사용하며, 일반적으로 IP 기반 인증서를 나타냅니다. IP 인증서는 인증 기관(CA)의 지원이 " -"필요하며 모든 ACME 공급자에서 사용할 수 없을 수 있습니다." +"이 사이트는 와일드카드 서버 이름(_)을 사용하며, 일반적으로 IP 기반 인증서를 " +"나타냅니다. IP 인증서는 인증 기관(CA)의 지원이 필요하며 모든 ACME 공급자에서 " +"사용할 수 없을 수 있습니다." #: src/views/backup/components/BackupCreator.vue:141 msgid "" "This token will only be shown once and cannot be retrieved later. Please " "make sure to save it in a secure location." -msgstr "이 토큰은 한 번만 표시되며 나중에 다시 가져올 수 없습니다. 반드시 안전한 곳에 저장하세요." +msgstr "" +"이 토큰은 한 번만 표시되며 나중에 다시 가져올 수 없습니다. 반드시 안전한 곳" +"에 저장하세요." #: src/constants/form_errors.ts:4 src/language/curd.ts:44 msgid "This value is already taken" @@ -4900,18 +5533,25 @@ msgstr "이 작업으로 %{type}이(가) 영구적으로 삭제됩니다." msgid "" "This will restore all Nginx configuration files. Nginx will restart after " "the restoration is complete." -msgstr "이렇게 하면 모든 Nginx 구성 파일이 복원됩니다. 복원이 완료된 후 Nginx가 재시작됩니다." +msgstr "" +"이렇게 하면 모든 Nginx 구성 파일이 복원됩니다. 복원이 완료된 후 Nginx가 재시" +"작됩니다." #: src/components/SystemRestore/SystemRestoreContent.vue:238 #: src/components/SystemRestore/SystemRestoreContent.vue:315 msgid "" "This will restore configuration files and database. Nginx UI will restart " "after the restoration is complete." -msgstr "이 작업은 구성 파일과 데이터베이스를 복원합니다. 복원이 완료되면 Nginx UI가 재시작됩니다." +msgstr "" +"이 작업은 구성 파일과 데이터베이스를 복원합니다. 복원이 완료되면 Nginx UI가 " +"재시작됩니다." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." -msgstr "이 작업은 %{nodeNames}의 Nginx UI를 %{version}으로 업그레이드하거나 재설치합니다." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgstr "" +"이 작업은 %{nodeNames}의 Nginx UI를 %{version}으로 업그레이드하거나 재설치합" +"니다." #: src/views/preference/tabs/AuthSettings.vue:92 msgid "Throttle" @@ -4931,7 +5571,9 @@ msgstr "팁" msgid "" "Tips: You can increase the concurrency processing capacity by increasing " "worker_processes or worker_connections" -msgstr "팁: worker_processes 또는 worker_connections를 증가시켜 동시 처리 능력을 향상시킬 수 있습니다." +msgstr "" +"팁: worker_processes 또는 worker_connections를 증가시켜 동시 처리 능력을 향상" +"시킬 수 있습니다." #: src/views/notification/notificationColumns.tsx:58 msgid "Title" @@ -4945,7 +5587,9 @@ msgstr "취소를 확인하려면 아래 필드에 \"취소\"를 입력하세요 msgid "" "To enable it, you need to install the Google or Microsoft Authenticator app " "on your mobile phone." -msgstr "활성화하려면 휴대폰에 Google Authenticator 또는 Microsoft Authenticator 앱을 설치해야 합니다." +msgstr "" +"활성화하려면 휴대폰에 Google Authenticator 또는 Microsoft Authenticator 앱을 " +"설치해야 합니다." #: src/views/preference/components/AuthSettings/AddPasskey.vue:94 msgid "" @@ -4953,19 +5597,20 @@ msgid "" "Please manually configure the following in the app.ini configuration file " "and restart Nginx UI." msgstr "" -"보안을 위해 WebAuthn 설정은 UI를 통해 추가할 수 없습니다. app.ini 구성 파일에 다음을 수동으로 구성하고 Nginx " -"UI를 다시 시작하십시오." +"보안을 위해 WebAuthn 설정은 UI를 통해 추가할 수 없습니다. app.ini 구성 파일" +"에 다음을 수동으로 구성하고 Nginx UI를 다시 시작하십시오." #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"인증서 자동 갱신이 정상적으로 작동하도록 하려면,권한에서 백엔드로 요청을 프록시할 수 있는 위치를 추가해야 하며,이 파일을 저장하고 " -"Nginx를 다시로드해야 합니다.계속하시겠습니까?" +"인증서 자동 갱신이 정상적으로 작동하도록 하려면,권한에서 백엔드로 요청을 프록" +"시할 수 있는 위치를 추가해야 하며,이 파일을 저장하고 Nginx를 다시로드해야 합" +"니다.계속하시겠습니까?" #: src/views/preference/tabs/OpenAISettings.vue:36 msgid "" @@ -4973,8 +5618,9 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"로컬 대형 모델을 사용하려면 ollama, vllm 또는 lmdeploy로 배포하세요. 이들은 OpenAI 호환 API 엔드포인트를 " -"제공하므로 baseUrl을 로컬 API로 설정하기만 하면 됩니다." +"로컬 대형 모델을 사용하려면 ollama, vllm 또는 lmdeploy로 배포하세요. 이들은 " +"OpenAI 호환 API 엔드포인트를 제공하므로 baseUrl을 로컬 API로 설정하기만 하면 " +"됩니다." #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5035,7 +5681,8 @@ msgstr "TOTP" msgid "" "TOTP is a two-factor authentication method that uses a time-based one-time " "password algorithm." -msgstr "TOTP는 시간 기반의 일회용 비밀번호 알고리즘을 사용하는 이중 인증 방법입니다." +msgstr "" +"TOTP는 시간 기반의 일회용 비밀번호 알고리즘을 사용하는 이중 인증 방법입니다." #: src/language/curd.ts:20 msgid "Trash" @@ -5258,7 +5905,9 @@ msgid "" "Warning: Restore operation will overwrite current configurations. Make sure " "you have a valid backup file and security token, and carefully select what " "to restore." -msgstr "경고: 복원 작업은 현재 구성을 덮어씁니다. 유효한 백업 파일과 보안 토큰이 있는지 확인하고 복원할 내용을 신중하게 선택하십시오." +msgstr "" +"경고: 복원 작업은 현재 구성을 덮어씁니다. 유효한 백업 파일과 보안 토큰이 있는" +"지 확인하고 복원할 내용을 신중하게 선택하십시오." #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" @@ -5266,20 +5915,25 @@ msgid "" "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." msgstr "" -"경고: 이 주소는 사설 IP 주소로 보입니다. Let's Encrypt와 같은 공인 인증 기관은 사설 IP에 대한 인증서를 발급할 수 " -"없습니다. 공인 IP 주소를 사용하거나 사설 인증 기관 사용을 고려해 보세요." +"경고: 이 주소는 사설 IP 주소로 보입니다. Let's Encrypt와 같은 공인 인증 기관" +"은 사설 IP에 대한 인증서를 발급할 수 없습니다. 공인 IP 주소를 사용하거나 사" +"설 인증 기관 사용을 고려해 보세요." #: src/views/certificate/DNSCredential.vue:96 msgid "" "We will add one or more TXT records to the DNS records of your domain for " "ownership verification." -msgstr "도메인 소유권 검증을 위해 도메인의 DNS레코드에 하나 이상의 TXT 레코드를 추가할 것입니다." +msgstr "" +"도메인 소유권 검증을 위해 도메인의 DNS레코드에 하나 이상의 TXT 레코드를 추가" +"할 것입니다." #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" -msgstr "이 파일에서 HTTPChallenge 구성을 제거하고 Nginx를 다시 로드할 예정입니다. 계속하시겠습니까?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" +msgstr "" +"이 파일에서 HTTPChallenge 구성을 제거하고 Nginx를 다시 로드할 예정입니다. 계" +"속하시겠습니까?" #: src/views/preference/tabs/AuthSettings.vue:65 msgid "Webauthn" @@ -5315,21 +5969,26 @@ msgid "" "Generally, do not enable this unless you are in a dev environment and using " "Pebble as CA." msgstr "" -"활성화하면 Nginx UI가 시작 시 사용자를 자동으로 재등록합니다. 일반적으로 개발 환경에서 Pebble을 CA로 사용하는 경우가 " -"아니면 이 기능을 활성화하지 마십시오." +"활성화하면 Nginx UI가 시작 시 사용자를 자동으로 재등록합니다. 일반적으로 개" +"발 환경에서 Pebble을 CA로 사용하는 경우가 아니면 이 기능을 활성화하지 마십시" +"오." #: src/views/site/site_edit/components/RightPanel/Basic.vue:62 #: src/views/stream/components/RightPanel/Basic.vue:57 msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." -msgstr "이 사이트를 활성화/비활성화하거나 삭제 또는 저장할 때, 노드 그룹에 설정된 노드와 아래에서 선택한 노드가 동기화됩니다." +msgstr "" +"이 사이트를 활성화/비활성화하거나 삭제 또는 저장할 때, 노드 그룹에 설정된 노" +"드와 아래에서 선택한 노드가 동기화됩니다." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" "When you generate new recovery codes, you must download or print the new " "codes." -msgstr "새로운 복구 코드를 생성할 때는 반드시 새 코드를 다운로드하거나 인쇄해야 합니다." +msgstr "" +"새로운 복구 코드를 생성할 때는 반드시 새 코드를 다운로드하거나 인쇄해야 합니" +"다." #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:160 msgid "Whether to use a temporary path when writing temporary files" @@ -5391,11 +6050,11 @@ msgstr "예" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" -"비 로컬호스트 도메인에서 안전하지 않은 HTTP 연결을 통해 이 터미널에 접속하고 있습니다. 이로 인해 민감한 정보가 노출될 수 " -"있습니다." +"비 로컬호스트 도메인에서 안전하지 않은 HTTP 연결을 통해 이 터미널에 접속하고 " +"있습니다. 이로 인해 민감한 정보가 노출될 수 있습니다." #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5424,8 +6083,10 @@ msgid "" msgstr "WebAuthn 설정을 하지 않았기 때문에 패스키를 추가할 수 없습니다." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." -msgstr "2FA가 아직 활성화되지 않았습니다. 복구 코드를 생성하려면 2FA를 활성화하세요." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgstr "" +"2FA가 아직 활성화되지 않았습니다. 복구 코드를 생성하려면 2FA를 활성화하세요." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94 msgid "You have not generated recovery codes yet." @@ -5435,7 +6096,9 @@ msgstr "아직 복구 코드를 생성하지 않았습니다." msgid "" "Your current recovery code might be outdated and insecure. Please generate " "new recovery codes at your earliest convenience to ensure security." -msgstr "현재 복구 코드는 오래되어 안전하지 않을 수 있습니다. 보안을 위해 가능한 한 빨리 새로운 복구 코드를 생성해 주세요." +msgstr "" +"현재 복구 코드는 오래되어 안전하지 않을 수 있습니다. 보안을 위해 가능한 한 빨" +"리 새로운 복구 코드를 생성해 주세요." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:142 #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:155 @@ -5446,425 +6109,15 @@ msgstr "이전 코드는 더 이상 작동하지 않습니다." msgid "Your passkeys" msgstr "귀하의 패스키" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] ACME 사용자: %{name}, 이메일: %{email}, CA 디렉터리: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] 현재 인증서를 나중에 취소하기 위해 백업 중" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] 인증서 갱신 성공" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] 인증서가 성공적으로 취소되었습니다" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "[Nginx UI] 서버에 인증서가 사용되었습니다, 서버 TLS 인증서 다시 불러오는 중" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] CA 서버와의 통신을 용이하게 하는 클라이언트 생성" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] 환경 변수가 정리되었습니다" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] 완료됨" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] 인증서가 성공적으로 발급되었습니다" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] 인증서 획득 중" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] 인증서 해지 준비 중" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] 레고 구성 준비 중" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Nginx 다시 로드 중" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] 해지 완료" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] 인증서 취소 중" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] 이전 인증서 취소 중" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] DNS01 챌린지 공급자 설정 중" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] 환경 변수 설정 중" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] HTTP01 챌린지 공급자 설정 중" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] 인증서 개인 키를 디스크에 기록 중" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] 인증서를 디스크에 작성 중" - -#~ msgid "Auto Backup Completed" -#~ msgstr "자동 백업 완료" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "자동 백업 구성 오류" - -#~ msgid "Auto Backup Failed" -#~ msgstr "자동 백업 실패" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "자동 백업 저장 실패" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "백업 작업 %{backup_name} 이(가) 성공적으로 완료되었습니다, 파일: %{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "백업 작업 %{backup_name}의 저장소 업로드 중 실패, 오류: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "백업 작업 %{backup_name} 실행 실패, 오류: %{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "인증서 %{name}의 유효 기간이 만료되었습니다" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "인증서 %{name}은(는) %{days}일 후에 만료됩니다" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "인증서 %{name}의 유효 기간이 1일 남았습니다" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "인증서 만료 알림" - -#~ msgid "Certificate Expired" -#~ msgstr "인증서 만료됨" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "인증서 만료 임박" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "인증서를 찾을 수 없음: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "인증서가 성공적으로 취소되었습니다" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "/var/run/docker.sock이 존재하는지 확인하세요. Nginx UI 공식 Docker 이미지를 사용 중이라면 Docker " -#~ "소켓을 다음과 같이 마운트했는지 확인하세요: `-v /var/run/docker.sock:/var/run/docker.sock`. " -#~ "Nginx UI 공식 이미지는 /var/run/docker.sock을 사용하여 Docker Client API를 통해 호스트의 " -#~ "Docker 엔진과 통신합니다. 이 기능은 다른 컨테이너에서 Nginx를 제어하고 Nginx UI의 OTA 업그레이드 시 바이너리 교체 " -#~ "대신 컨테이너 교체를 수행하여 컨테이너 종속성도 업그레이드되도록 하는 데 사용됩니다. 이 기능이 필요하지 않다면 컨테이너에 환경 변수 " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true를 추가하세요." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "nginx 액세스 로그 경로가 존재하는지 확인하세요. 기본적으로 이 경로는 'nginx -V'에서 가져옵니다. 가져올 수 없거나 가져온 " -#~ "경로가 유효한 기존 파일을 가리키지 않는 경우 오류가 보고됩니다. 이 경우 구성 파일을 수정하여 액세스 로그 경로를 지정해야 합니다. " -#~ "자세한 내용은 문서를 참조하세요: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "nginx 설정 디렉터리가 존재하는지 확인" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "nginx 구성 항목 파일이 존재하는지 확인하세요" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "nginx 오류 로그 경로가 존재하는지 확인하세요. 기본적으로 이 경로는 'nginx -V'에서 얻습니다. 경로를 얻을 수 없거나 얻은 " -#~ "경로가 유효한 기존 파일을 가리키지 않으면 오류가 보고됩니다. 이 경우 구성 파일을 수정하여 오류 로그 경로를 지정해야 합니다. 자세한 " -#~ "내용은 문서를 참조하세요: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Nginx PID 경로가 존재하는지 확인하세요. 기본적으로 이 경로는 'nginx -V'에서 얻습니다. 얻을 수 없는 경우 오류가 " -#~ "보고됩니다. 이 경우 구성 파일을 수정하여 Nginx PID 경로를 지정해야 합니다. 자세한 내용은 문서를 참조하세요: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "nginx sbin 경로가 존재하는지 확인하세요" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "nginx.conf에 conf.d 디렉터리가 포함되어 있는지 확인" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "nginx.conf에 sites-enabled 디렉토리가 포함되어 있는지 확인" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "nginx.conf에 streams-enabled 디렉토리가 포함되어 있는지 확인" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "nginx 설정 디렉터리에 sites-available 및 sites-enabled 디렉터리가 있는지 확인" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "nginx 구성 디렉터리 아래에 streams-available 및 streams-enabled 디렉터리가 있는지 확인하세요" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "%{env_name}에서 %{path} 삭제 실패" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{env_name}에서 %{path} 삭제 완료" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "원격 구성 삭제 오류" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "원격 구성 삭제 성공" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "원격 스트림 삭제 오류" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "원격 스트림 삭제 성공" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "%{node}에서 사이트 %{name} 삭제 실패" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "%{node}에서 사이트 %{name} 삭제 성공" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "%{node}에서 스트림 %{name} 삭제 실패" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "스트림 %{name}을(를) %{node}에서 성공적으로 삭제했습니다" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "원격 사이트 유지 관리 비활성화 오류" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "원격 사이트 유지 관리 비활성화 성공" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "원격 스트림 비활성화 오류" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "원격 스트림 비활성화 성공" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "%{node}에서 사이트 %{name} 비활성화 실패" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "%{node}에서 사이트 %{name} 비활성화 성공" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "%{node}에서 사이트 %{name} 유지 관리를 비활성화하지 못했습니다" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "%{node}에서 %{name} 사이트 유지 관리 비활성화 성공" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "%{node}에서 스트림 %{name} 비활성화 실패" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "스트림 %{name}을(를) %{node}에서 비활성화했습니다" - -#~ msgid "Docker socket exists" -#~ msgstr "Docker 소켓이 존재합니다" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "원격 사이트 유지 관리 활성화 오류" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "원격 사이트 유지 관리 활성화 성공" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "원격 스트림 활성화 오류" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "원격 스트림 활성화 성공" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "%{node}에서 사이트 %{name} 유지 관리 활성화 실패" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "%{node}에서 사이트 %{name} 유지 관리 활성화 성공" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "%{node}에서 사이트 %{name} 활성화 실패" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "%{node}에서 사이트 %{name} 활성화 성공" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "%{node}에서 스트림 %{name} 활성화 실패" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "%{node}에서 스트림 %{name} 활성화 성공" - -#~ msgid "External Notification Test" -#~ msgstr "외부 알림 테스트" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "데이터베이스에서 인증서 삭제 실패: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "인증서 취소 실패: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "로그 파일 %{log_path}은(는) 일반 파일이 아닙니다. Docker 컨테이너에서 nginx-ui를 사용 중이라면 자세한 내용은 " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html을 참조하십시오." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Nginx 접근 로그 경로가 존재합니다" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Nginx 설정 디렉터리가 존재합니다" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Nginx 구성 진입 파일이 존재합니다" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Nginx 오류 로그 경로가 존재합니다" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Nginx PID 경로가 존재합니다" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Nginx Sbin 경로가 존재합니다" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf는 conf.d 디렉토리를 포함합니다" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf에 sites-enabled 디렉터리가 포함되어 있습니다" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf에는 streams-enabled 디렉토리가 포함됩니다" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "%{node}에서 Nginx 다시 로드 실패, 응답: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "%{node}에서 Nginx 다시 로드 성공" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "원격 Nginx 다시 로드 오류" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "원격 Nginx 다시 로드 성공" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "%{env_name}에서 %{orig_path}을(를) %{new_path}(으)로 이름 변경 실패" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "%{env_name}에서 %{orig_path}을(를) %{new_path}(으)로 이름 변경 성공" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "원격 스트림 이름 변경 오류" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "원격 스트림 이름 변경 성공" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "%{node}에서 사이트 %{name}을(를) %{new_name}(으)로 이름 변경하는 데 실패했습니다" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "사이트 %{name}을(를) %{new_name}(으)로 이름 변경했습니다 (%{node})" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "%{node}에서 스트림 %{name}을(를) %{new_name}(으)로 이름 변경하는 데 실패했습니다" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "스트림 %{name}을(를) %{new_name}(으)로 이름 변경했습니다 (%{node})" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "%{node}에서 Nginx 재시작 실패, 응답: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "%{node}에서 Nginx 재시작 성공" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "원격 Nginx 재시작 오류" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "원격 Nginx 재시작 성공" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "원격 스트림 저장 오류" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "원격 스트림 저장 성공" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "%{name} 사이트를 %{node}에 저장하지 못했습니다" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "사이트 %{name}을(를) %{node}에 성공적으로 저장했습니다" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "스트림 %{name}을(를) %{node}에 저장하지 못했습니다" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "스트림 %{name}을(를) %{node}에 성공적으로 저장했습니다" - -#~ msgid "Sites directory exists" -#~ msgstr "사이트 디렉터리가 존재합니다" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "백업 작업 %{backup_name}에 대한 저장소 구성 유효성 검사 실패, 오류: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "스트림 디렉터리가 존재합니다" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "인증서 %{cert_name}을(를) %{env_name}(으)로 동기화하지 못했습니다" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "인증서 %{cert_name}을(를) %{env_name}(으)로 성공적으로 동기화했습니다" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "구성 %{config_name}을(를) %{env_name}에 동기화하지 못했습니다" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "구성 %{config_name}을(를) %{env_name}(으)로 성공적으로 동기화했습니다" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "이것은 nginx ui에서 %{timestamp}에서 전송 된 테스트 메시지입니다." +#~ "Server-Sent Events 프로토콜을 통해 백엔드와의 통신을 지원합니다. Nginx UI" +#~ "를 Nginx 리버스 프록시를 통해 사용 중인 경우, 해당 구성 파일을 작성하려면 " +#~ "이 링크를 참조하세요: https://nginxui.com/guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "비워 둘 경우 기본 CA 디렉터리가 사용됩니다." @@ -5953,11 +6206,12 @@ msgstr "귀하의 패스키" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "/var/run/docker.sock이 존재하는지 확인하세요. Nginx UI 공식 Docker 이미지를 사용 중이라면 Docker " -#~ "소켓이 다음과 같이 마운트되었는지 확인하세요: `-v /var/run/docker.sock:/var/run/docker.sock`." +#~ "/var/run/docker.sock이 존재하는지 확인하세요. Nginx UI 공식 Docker 이미지" +#~ "를 사용 중이라면 Docker 소켓이 다음과 같이 마운트되었는지 확인하세요: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgid "Check if the nginx access log path exists" #~ msgstr "Nginx 액세스 로그 경로가 존재하는지 확인" @@ -6051,11 +6305,14 @@ msgstr "귀하의 패스키" #~ msgstr "%{conf_name}을(를) %{node_name}(으)로 성공적으로 복제함" #, fuzzy -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "%{conf_name}을(를) %{node_name}(으)로 성공적으로 복제함" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "%{conf_name}을(를) %{node_name}(으)로 성공적으로 복제함" #, fuzzy @@ -6069,7 +6326,8 @@ msgstr "귀하의 패스키" #~ msgstr "%{conf_name}을(를) %{node_name}(으)로 성공적으로 복제함" #, fuzzy -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "%{conf_name}을(를) %{node_name}(으)로 성공적으로 복제함" #, fuzzy diff --git a/app/src/language/messages.pot b/app/src/language/messages.pot index 9599390b..569562a4 100644 --- a/app/src/language/messages.pot +++ b/app/src/language/messages.pot @@ -2,6 +2,90 @@ msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "" + +#: src/language/generate.ts:37 +msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "" @@ -138,6 +222,7 @@ msgstr "" msgid "All" msgstr "" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "" @@ -245,7 +330,7 @@ msgstr "" msgid "Assistant" msgstr "" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "" @@ -284,6 +369,22 @@ msgstr "" msgid "Auto Backup" msgstr "" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -381,6 +482,18 @@ msgstr "" msgid "Backup Schedule" msgstr "" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" + +#: src/components/Notification/notifications.ts:34 +msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "" @@ -550,6 +663,20 @@ msgstr "" msgid "certificate" msgstr "" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "" @@ -558,6 +685,20 @@ msgstr "" msgid "Certificate decode error" msgstr "" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "" @@ -566,6 +707,10 @@ msgstr "" msgid "Certificate name cannot be empty" msgstr "" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "" @@ -587,6 +732,10 @@ msgstr "" msgid "Certificate renewed successfully" msgstr "" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -654,10 +803,58 @@ msgstr "" msgid "Check again" msgstr "" +#: src/language/generate.ts:6 +msgid "Check if /var/run/docker.sock exists. If you are using Nginx UI Official Docker Image, please make sure the docker socket is mounted like this: `-v /var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/run/docker.sock to communicate with the host Docker Engine via Docker Client API. This feature is used to control Nginx in another container and perform container replacement rather than binary replacement during OTA upgrades of Nginx UI to ensure container dependencies are also upgraded. If you don't need this feature, please add the environment variable NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and prevents using Passkeys and clipboard features" msgstr "" +#: src/language/generate.ts:8 +msgid "Check if the nginx access log path exists. By default, this path is obtained from 'nginx -V'. If it cannot be obtained or the obtained path does not point to a valid, existing file, an error will be reported. In this case, you need to modify the configuration file to specify the access log path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" +msgstr "" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "" + +#: src/language/generate.ts:11 +msgid "Check if the nginx error log path exists. By default, this path is obtained from 'nginx -V'. If it cannot be obtained or the obtained path does not point to a valid, existing file, an error will be reported. In this case, you need to modify the configuration file to specify the error log path. Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" +msgstr "" + +#: src/language/generate.ts:7 +msgid "Check if the nginx PID path exists. By default, this path is obtained from 'nginx -V'. If it cannot be obtained, an error will be reported. In this case, you need to modify the configuration file to specify the Nginx PID path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" +msgstr "" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "" + +#: src/language/generate.ts:16 +msgid "Check if the sites-available and sites-enabled directories are under the nginx configuration directory" +msgstr "" + +#: src/language/generate.ts:17 +msgid "Check if the streams-available and streams-enabled directories are under the nginx configuration directory" +msgstr "" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "" @@ -1035,6 +1232,14 @@ msgstr "" msgid "Delete" msgstr "" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "" @@ -1047,18 +1252,52 @@ msgstr "" msgid "Delete Permanently" msgstr "" +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "" + +#: src/components/Notification/notifications.ts:97 #: src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "" @@ -1147,14 +1386,56 @@ msgstr "" msgid "Disable auto-renewal failed for %{name}" msgstr "" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1226,6 +1507,10 @@ msgstr "" msgid "Docker client not initialized" msgstr "" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "" @@ -1371,14 +1656,56 @@ msgstr "" msgid "Enable Proxy Cache" msgstr "" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "" @@ -1529,6 +1856,10 @@ msgstr "" msgid "External notification configuration not found" msgstr "" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1683,6 +2014,10 @@ msgstr "" msgid "Failed to delete certificate" msgstr "" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1849,6 +2184,10 @@ msgstr "" msgid "Failed to revoke certificate" msgstr "" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "" @@ -2468,6 +2807,10 @@ msgstr "" msgid "Log" msgstr "" +#: src/language/generate.ts:21 +msgid "Log file %{log_path} is not a regular file. If you are using nginx-ui in docker container, please refer to https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." +msgstr "" + #: src/routes/modules/nginx_log.ts:39 #: src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" @@ -2804,6 +3147,10 @@ msgstr "" msgid "Nginx Access Log Path" msgstr "" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2833,6 +3180,14 @@ msgstr "" msgid "Nginx config directory is not set" msgstr "" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "" @@ -2867,6 +3222,10 @@ msgstr "" msgid "Nginx Error Log Path" msgstr "" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "" @@ -2905,6 +3264,10 @@ msgstr "" msgid "Nginx PID Path" msgstr "" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "" @@ -2935,6 +3298,10 @@ msgstr "" msgid "Nginx restarted successfully" msgstr "" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "" @@ -2961,6 +3328,18 @@ msgstr "" msgid "Nginx UI configuration has been restored and will restart automatically in a few seconds." msgstr "" +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3407,6 +3786,7 @@ msgstr "" msgid "Please first add credentials in Certification > DNS Credentials, and then select one of the credentialsbelow to request the API of the DNS provider." msgstr "" +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "Please generate new recovery codes in the preferences immediately to prevent lockout." msgstr "" @@ -3630,7 +4010,7 @@ msgstr "" msgid "Receive" msgstr "" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "" @@ -3711,6 +4091,22 @@ msgstr "" msgid "Reload nginx failed: {0}" msgstr "" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "" @@ -3750,22 +4146,58 @@ msgstr "" msgid "Rename" msgstr "" +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:77 #: src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "" +#: src/components/Notification/notifications.ts:81 #: src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "" @@ -3842,6 +4274,22 @@ msgstr "" msgid "Restart Nginx" msgstr "" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "" @@ -4049,14 +4497,40 @@ msgstr "" msgid "Save Directive" msgstr "" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "" @@ -4165,7 +4639,7 @@ msgstr "" msgid "Selector" msgstr "" -#: src/components/SelfCheck/SelfCheck.vue:16 +#: src/components/SelfCheck/SelfCheck.vue:15 #: src/routes/modules/system.ts:19 msgid "Self Check" msgstr "" @@ -4297,6 +4771,10 @@ msgstr "" msgid "Site not found" msgstr "" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "" @@ -4428,6 +4906,10 @@ msgstr "" msgid "Storage Configuration" msgstr "" +#: src/components/Notification/notifications.ts:26 +msgid "Storage configuration validation failed for backup task %{backup_name}, error: %{error}" +msgstr "" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4455,6 +4937,10 @@ msgstr "" msgid "Stream not found" msgstr "" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "" @@ -4483,10 +4969,6 @@ msgstr "" msgid "Sunday" msgstr "" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "Support communication with the backend through the Server-Sent Events protocol. If your Nginx UI is being used via an Nginx reverse proxy, please refer to this link to write the corresponding configuration file: https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "Support communication with the backend through the WebSocket protocol. If your Nginx UI is being used via an Nginx reverse proxy, please refer to this link to write the corresponding configuration file: https://nginxui.com/guide/nginx-proxy-example.html" msgstr "" @@ -4528,18 +5010,38 @@ msgstr "" msgid "Sync Certificate" msgstr "" +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:61 #: src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "" +#: src/components/Notification/notifications.ts:65 #: src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "" +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "" + +#: src/components/Notification/notifications.ts:69 #: src/language/constants.ts:45 msgid "Sync Config Error" msgstr "" +#: src/components/Notification/notifications.ts:73 #: src/language/constants.ts:44 msgid "Sync Config Success" msgstr "" @@ -4754,6 +5256,10 @@ msgstr "" msgid "This field should only contain letters, unicode characters, numbers, and -_./:" msgstr "" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "This module provides Nginx request statistics, connection count, etc. data. After enabling it, you can view performance statistics" msgstr "" diff --git a/app/src/language/pt_PT/app.po b/app/src/language/pt_PT/app.po index 3aee6209..e513bd54 100644 --- a/app/src/language/pt_PT/app.po +++ b/app/src/language/pt_PT/app.po @@ -4,14 +4,105 @@ msgid "" msgstr "" "PO-Revision-Date: 2024-08-12 17:09+0000\n" "Last-Translator: Kleiser Sarifo \n" -"Language-Team: Portuguese (Portugal) " -"\n" +"Language-Team: Portuguese (Portugal) \n" "Language: pt_PT\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Weblate 5.6.2\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] Utilizador ACME: %{name}, Email: %{email}, Diretório CA: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" +"[Nginx UI] A fazer cópia de segurança do certificado atual para posterior " +"revogação" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Certificado renovado com sucesso" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Certificado revogado com sucesso" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] O certificado foi usado para o servidor, a recarregar o " +"certificado TLS do servidor" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" +"[Nginx UI] Criando cliente para facilitar a comunicação com o servidor CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Variáveis de ambiente limpas" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Concluído" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Certificado emitido com sucesso" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] A obter certificado" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Preparando para a revogação do certificado" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] A preparar configurações do lego" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] A recarregar o nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Revogação concluída" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Revogar certificado" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Revogar certificado antigo" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] A configurar o fornecedor de desafio DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Configurando variáveis de ambiente" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] A configurar o fornecedor de desafio HTTP01" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] A gravar a chave privada do certificado no disco" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] A escrever o certificado no disco" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* Inclui nós do grupo %{groupName} e nós selecionados manualmente" @@ -138,13 +229,13 @@ msgstr "Modo Avançado" #: src/views/preference/components/AuthSettings/AddPasskey.vue:104 msgid "Afterwards, refresh this page and click add passkey again." msgstr "" -"Depois, atualize esta página e clique em adicionar chave de acesso " -"novamente." +"Depois, atualize esta página e clique em adicionar chave de acesso novamente." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:83 msgid "All" msgstr "Todos" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Todos os Códigos de Recuperação Foram Utilizados" @@ -158,7 +249,8 @@ msgstr "" "DNS, caso contrário, o pedido de certificado falhará." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Qualquer endereço IP acessível pode ser usado com autoridades de " "certificação privadas" @@ -197,7 +289,8 @@ msgstr "Tem certeza que pretende eliminar este IP banido imediatamente?" #: src/views/preference/components/AuthSettings/Passkey.vue:113 msgid "Are you sure to delete this passkey immediately?" -msgstr "Tem a certeza de que deseja eliminar imediatamente esta chave de acesso?" +msgstr "" +"Tem a certeza de que deseja eliminar imediatamente esta chave de acesso?" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:154 msgid "Are you sure to generate new recovery codes?" @@ -261,7 +354,7 @@ msgstr "Pedir ajuda ao ChatGPT" msgid "Assistant" msgstr "Assistente" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Tentar corrigir" @@ -300,6 +393,22 @@ msgstr "auto = núcleos da CPU" msgid "Auto Backup" msgstr "Backup automático" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Backup automático concluído" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Erro de configuração de backup automático" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Backup automático falhou" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Falha no armazenamento de backup automático" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -387,7 +496,8 @@ msgstr "O caminho de backup não é um diretório: {0}" #: src/constants/errors/backup.ts:62 msgid "Backup path is required for custom directory backup" -msgstr "O caminho de backup é necessário para o backup de diretório personalizado" +msgstr "" +"O caminho de backup é necessário para o backup de diretório personalizado" #: src/constants/errors/backup.ts:60 msgid "Backup path not in granted access paths: {0}" @@ -397,6 +507,22 @@ msgstr "Caminho de backup não está nos caminhos de acesso concedidos: {0}" msgid "Backup Schedule" msgstr "Agendamento de backup" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Tarefa de backup %{backup_name} concluída com sucesso, ficheiro: %{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"A tarefa de backup %{backup_name} falhou durante o upload para o " +"armazenamento, erro: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "A tarefa de backup %{backup_name} falhou ao executar, erro: %{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Tipo de backup" @@ -538,7 +664,8 @@ msgstr "Não é possível aceder ao caminho de armazenamento {0}: {1}" #: src/constants/errors/user.ts:11 msgid "Cannot change initial user password in demo mode" -msgstr "Não é possível alterar a senha do usuário inicial no modo de demonstração" +msgstr "" +"Não é possível alterar a senha do usuário inicial no modo de demonstração" #: src/components/ConfigHistory/DiffViewer.vue:72 msgid "Cannot compare: Missing content" @@ -571,6 +698,20 @@ msgstr "" msgid "certificate" msgstr "certificado" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "O certificado %{name} expirou" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "O certificado %{name} expirará em %{days} dias" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "O certificado %{name} irá expirar em 1 dia" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "O conteúdo do certificado e a chave privada não podem estar vazios" @@ -579,6 +720,20 @@ msgstr "O conteúdo do certificado e a chave privada não podem estar vazios" msgid "Certificate decode error" msgstr "Erro de descodificação do certificado" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Aviso de Expiração do Certificado" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Certificado expirado" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Certificado a expirar em breve" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Ficheiros de certificado transferidos com sucesso" @@ -587,6 +742,10 @@ msgstr "Ficheiros de certificado transferidos com sucesso" msgid "Certificate name cannot be empty" msgstr "O nome do certificado não pode estar vazio" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Certificado não encontrado: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Erro de análise do certificado" @@ -608,6 +767,10 @@ msgstr "Intervalo de Renovação do Certificado" msgid "Certificate renewed successfully" msgstr "Certificado renovado com sucesso" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Certificado revogado com sucesso" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -675,6 +838,30 @@ msgstr "Verificar" msgid "Check again" msgstr "Verificar de novo" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Verifique se /var/run/docker.sock existe. Se estiver a utilizar a imagem " +"Docker oficial do Nginx UI, certifique-se de que o socket Docker está " +"montado desta forma: `-v /var/run/docker.sock:/var/run/docker.sock`. A " +"imagem oficial do Nginx UI utiliza /var/run/docker.sock para comunicar com o " +"Docker Engine do anfitrião através da API do Docker Client. Esta " +"funcionalidade é utilizada para controlar o Nginx noutro contentor e " +"realizar a substituição de contentores em vez da substituição binária " +"durante as atualizações OTA do Nginx UI para garantir que as dependências do " +"contentor também são atualizadas. Se não necessitar desta funcionalidade, " +"adicione a variável de ambiente NGINX_UI_IGNORE_DOCKER_SOCKET=true ao " +"contentor." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -683,6 +870,94 @@ msgstr "" "Verifique se o HTTPS está ativado. Usar HTTP fora do localhost é inseguro e " "impede o uso de Passkeys e funcionalidades da área de transferência" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Verifique se o caminho do registo de acesso do nginx existe. Por " +"predefinição, este caminho é obtido a partir de 'nginx -V'. Se não for " +"possível obtê-lo ou se o caminho obtido não apontar para um ficheiro válido " +"existente, será reportado um erro. Neste caso, terá de modificar o ficheiro " +"de configuração para especificar o caminho do registo de acesso. Consulte a " +"documentação para mais detalhes: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Verificar se o diretório de configuração do nginx existe" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Verificar se o ficheiro de entrada de configuração do nginx existe" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Verifique se o caminho do registo de erros do nginx existe. Por " +"predefinição, este caminho é obtido a partir de 'nginx -V'. Se não for " +"possível obtê-lo ou se o caminho obtido não apontar para um ficheiro válido " +"existente, será reportado um erro. Neste caso, terá de modificar o ficheiro " +"de configuração para especificar o caminho do registo de erros. Consulte a " +"documentação para mais detalhes: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Verifique se o caminho do PID do Nginx existe. Por padrão, este caminho é " +"obtido a partir de 'nginx -V'. Se não puder ser obtido, será relatado um " +"erro. Neste caso, você precisa modificar o arquivo de configuração para " +"especificar o caminho do PID do Nginx. Consulte a documentação para obter " +"mais detalhes: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Verifique se o caminho sbin do nginx existe" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Verificar se o nginx.conf inclui o diretório conf.d" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Verificar se o nginx.conf inclui o diretório sites-enabled" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "Verificar se o nginx.conf inclui o diretório streams-enabled" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Verifique se os diretórios sites-available e sites-enabled estão no " +"diretório de configuração do nginx" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Verifique se os diretórios streams-available e streams-enabled estão no " +"diretório de configuração do nginx" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "O texto cifrado é demasiado curto" @@ -705,7 +980,8 @@ msgstr "Limpo com sucesso" #: src/components/SystemRestore/SystemRestoreContent.vue:194 #: src/components/SystemRestore/SystemRestoreContent.vue:271 msgid "Click or drag backup file to this area to upload" -msgstr "Clique ou arraste o arquivo de backup para esta área para fazer o upload" +msgstr "" +"Clique ou arraste o arquivo de backup para esta área para fazer o upload" #: src/language/curd.ts:51 src/language/curd.ts:55 msgid "Click or drag files to this area to upload" @@ -1066,6 +1342,14 @@ msgstr "" msgid "Delete" msgstr "Eliminar" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Falha ao eliminar %{path} em %{env_name}" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{path} em %{env_name} eliminado com sucesso" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Eliminar certificado" @@ -1078,18 +1362,51 @@ msgstr "Confirmação de eliminação" msgid "Delete Permanently" msgstr "Eliminar Permanentemente" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Erro ao eliminar configuração remota" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Configuração remota apagada com sucesso" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Erro ao eliminar site remoto" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Site remoto excluído com sucesso" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Erro ao eliminar transmissão remota" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Eliminação de transmissão remota bem-sucedida" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Falha ao eliminar o site %{name} de %{node}" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Site %{name} eliminado de %{node} com sucesso" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Eliminar site: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Falha ao eliminar o fluxo %{name} de %{node}" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "O fluxo %{name} foi eliminado de %{node} com sucesso" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Eliminar stream: %{stream_name}" @@ -1176,14 +1493,56 @@ msgstr "Desativar" msgid "Disable auto-renewal failed for %{name}" msgstr "Falha ao desativar a renovação automática para %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Erro ao desativar site remoto" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Erro ao desativar a manutenção do site remoto" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Desativação da manutenção do site remoto com sucesso" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Site remoto desativado com sucesso" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Erro ao desativar transmissão remota" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Desativação de transmissão remota bem-sucedida" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Desativar o site %{name} de %{node} falhou" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Site %{name} desativado em %{node} com sucesso" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "Falha ao desativar a manutenção do site %{name} em %{node}" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Desativação da manutenção do site %{name} em %{node} com sucesso" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Falha ao desativar o fluxo %{name} de %{node}" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Desativar o fluxo %{name} de %{node} com sucesso" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1254,6 +1613,10 @@ msgstr "Remover este upstream?" msgid "Docker client not initialized" msgstr "Cliente Docker não inicializado" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "O socket do Docker existe" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "O socket do Docker não existe" @@ -1270,7 +1633,8 @@ msgstr "Domínio" #: src/views/certificate/components/AutoCertManagement.vue:55 msgid "Domains list is empty, try to reopen Auto Cert for %{config}" -msgstr "A lista de domínios está vazia, tente reabrir o Auto Cert para %{config}" +msgstr "" +"A lista de domínios está vazia, tente reabrir o Auto Cert para %{config}" #: src/views/certificate/components/CertificateDownload.vue:93 msgid "Download Certificate Files" @@ -1303,8 +1667,7 @@ msgid "" "non-HTTPS websites, except when running on localhost." msgstr "" "Devido às políticas de segurança de alguns navegadores, não é possível " -"utilizar passkeys em sites não HTTPS, exceto quando em execução no " -"localhost." +"utilizar passkeys em sites não HTTPS, exceto quando em execução no localhost." #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1403,14 +1766,56 @@ msgstr "Ativar HTTPS" msgid "Enable Proxy Cache" msgstr "Ativar cache de proxy" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Erro ao ativar site remoto" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Erro ao ativar a manutenção do site remoto" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Ativar manutenção do site remoto com sucesso" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Site remoto ativado com sucesso" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Erro ao ativar transmissão remota" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Ativar transmissão remota com sucesso" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "Falha ao ativar a manutenção do site %{name} em %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "Ativar a manutenção do site %{name} em %{node} com sucesso" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "Falha ao ativar o site %{name} em %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Site %{name} ativado em %{node} com sucesso" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "Falha ao ativar o fluxo %{name} em %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Ativar o fluxo %{name} em %{node} com sucesso" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Ativar módulo stub_status" @@ -1448,11 +1853,13 @@ msgstr "Activado com sucesso" #: src/views/preference/tabs/ServerSettings.vue:52 msgid "Enables HTTP/2 support with multiplexing and server push capabilities" -msgstr "Ativa o suporte a HTTP/2 com capacidades de multiplexação e push do servidor" +msgstr "" +"Ativa o suporte a HTTP/2 com capacidades de multiplexação e push do servidor" #: src/views/preference/tabs/ServerSettings.vue:56 msgid "Enables HTTP/3 support based on QUIC protocol for best performance" -msgstr "Ativa o suporte a HTTP/3 baseado no protocolo QUIC para melhor desempenho" +msgstr "" +"Ativa o suporte a HTTP/3 baseado no protocolo QUIC para melhor desempenho" #: src/views/site/site_edit/components/Cert/IssueCert.vue:76 msgid "Encrypt website with Let's Encrypt" @@ -1553,8 +1960,8 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "ID da chave de vinculação de conta externa (opcional). Necessário para " "alguns fornecedores ACME como o ZeroSSL." @@ -1567,6 +1974,10 @@ msgstr "Contentor Docker externo" msgid "External notification configuration not found" msgstr "Configuração de notificação externa não encontrada" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Teste de notificação externa" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1721,6 +2132,10 @@ msgstr "Falha ao desencriptar o diretório Nginx UI: {0}" msgid "Failed to delete certificate" msgstr "Falha ao eliminar o certificado" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Falha ao eliminar o certificado da base de dados: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1881,12 +2296,17 @@ msgstr "Falha ao restaurar as configurações do Nginx: {0}" #: src/constants/errors/backup.ts:40 msgid "Failed to restore Nginx UI files: {0}" -msgstr "Falha ao restaurar os ficheiros da interface de utilizador do Nginx: {0}" +msgstr "" +"Falha ao restaurar os ficheiros da interface de utilizador do Nginx: {0}" #: src/views/certificate/components/RemoveCert.vue:49 msgid "Failed to revoke certificate" msgstr "Falha ao revogar o certificado" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Falha ao revogar o certificado: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Falha ao guardar as definições de desempenho do Nginx" @@ -2011,8 +2431,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "Para certificados baseados em IP, por favor especifique o endereço IP do " "servidor que será incluído no certificado." @@ -2159,14 +2579,15 @@ msgid "" "ban threshold minutes, the ip will be banned for a period of time." msgstr "" "Se o número de tentativas de início de sessão falhadas de um IP atingir o " -"máximo de tentativas em minutos de limite de banimento, o IP será banido " -"por um período de tempo." +"máximo de tentativas em minutos de limite de banimento, o IP será banido por " +"um período de tempo." #: src/components/AutoCertForm/AutoCertForm.vue:280 msgid "" "If you want to automatically revoke the old certificate, please enable this " "option." -msgstr "Se desejar revogar automaticamente o certificado antigo, ative esta opção." +msgstr "" +"Se desejar revogar automaticamente o certificado antigo, ative esta opção." #: src/views/preference/components/AuthSettings/AddPasskey.vue:75 msgid "If your browser supports WebAuthn Passkey, a dialog box will appear." @@ -2252,7 +2673,8 @@ msgstr "Instalação" #: src/constants/errors/system.ts:3 msgid "Installation is not allowed after 10 minutes of system startup" -msgstr "A instalação não é permitida após 10 minutos de inicialização do sistema" +msgstr "" +"A instalação não é permitida após 10 minutos de inicialização do sistema" #: src/views/install/components/TimeoutAlert.vue:11 msgid "" @@ -2382,8 +2804,8 @@ msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." msgstr "" -"Mantenha os seus códigos de recuperação tão seguros como a sua " -"palavra-passe. Recomendamos guardá-los com um gestor de palavras-passe." +"Mantenha os seus códigos de recuperação tão seguros como a sua palavra-" +"passe. Recomendamos guardá-los com um gestor de palavras-passe." #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2455,7 +2877,8 @@ msgstr "Deixar em branco não vai mudar nada" #: src/constants/errors/user.ts:6 msgid "Legacy recovery code not allowed since totp is not enabled" -msgstr "Código de recuperação antigo não permitido porque o TOTP não está ativado" +msgstr "" +"Código de recuperação antigo não permitido porque o TOTP não está ativado" #: src/components/AutoCertForm/AutoCertForm.vue:268 msgid "Lego disable CNAME Support" @@ -2540,6 +2963,16 @@ msgstr "Localizações" msgid "Log" msgstr "Log" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"O ficheiro de registo %{log_path} não é um ficheiro regular. Se estiver a " +"utilizar o nginx-ui num contentor Docker, consulte https://nginxui.com/zh_CN/" +"guide/config-nginx-log.html para obter mais informações." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Lista de registos" @@ -2562,12 +2995,12 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "O Logrotate, por defeito, está activado na maioria das distribuições Linux " "convencionais para utilizadores que instalam o Nginx UI na máquina host, " @@ -2885,6 +3318,10 @@ msgstr "A saída de Nginx -T está vazia" msgid "Nginx Access Log Path" msgstr "Caminho para Logs de Acesso do Nginx" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "O caminho do log de acesso do Nginx existe" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2914,6 +3351,14 @@ msgstr "A configuração do Nginx não inclui stream-enabled" msgid "Nginx config directory is not set" msgstr "O diretório de configuração do Nginx não está definido" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "O diretório de configuração do Nginx existe" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "O ficheiro de entrada de configuração do Nginx existe" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "A configuração do Nginx foi restaurada" @@ -2948,6 +3393,10 @@ msgstr "Taxa de utilização da CPU do Nginx" msgid "Nginx Error Log Path" msgstr "Caminho para Logs de Erro do Nginx" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "O caminho do log de erros do Nginx existe" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Erro do Nginx: {0}" @@ -2985,6 +3434,10 @@ msgstr "Uso de memória do Nginx" msgid "Nginx PID Path" msgstr "Caminho do PID do Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "O caminho do PID do Nginx existe" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Comando de Recarregamento do Nginx" @@ -2996,7 +3449,8 @@ msgstr "Recarga do Nginx falhou: {0}" #: src/views/environments/list/Environment.vue:89 msgid "Nginx reload operations have been dispatched to remote nodes" -msgstr "As operações de recarregamento do Nginx foram enviadas para os nós remotos" +msgstr "" +"As operações de recarregamento do Nginx foram enviadas para os nós remotos" #: src/components/NginxControl/NginxControl.vue:26 msgid "Nginx reloaded successfully" @@ -3014,6 +3468,10 @@ msgstr "As operações de reinício do Nginx foram enviadas para os nós remotos msgid "Nginx restarted successfully" msgstr "Nginx reiniciado com sucesso" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "O caminho sbin do Nginx existe" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Comando de teste de configuração do Nginx" @@ -3037,11 +3495,23 @@ msgstr "A configuração do Nginx UI foi restaurada" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" -"A configuração do Nginx UI foi restaurada e irá reiniciar automaticamente " -"em alguns segundos." +"A configuração do Nginx UI foi restaurada e irá reiniciar automaticamente em " +"alguns segundos." + +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf inclui o diretório conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf inclui o diretório sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf inclui o diretório streams-enabled" #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 @@ -3255,7 +3725,8 @@ msgstr "Ligado" #: src/views/certificate/DNSCredential.vue:99 msgid "Once the verification is complete, the records will be removed." -msgstr "Assim que a verificação estiver concluída, os registos serão removidos." +msgstr "" +"Assim que a verificação estiver concluída, os registos serão removidos." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:127 #: src/components/NodeCard/NodeCard.vue:51 @@ -3356,10 +3827,10 @@ msgid "" "facial recognition, a device password, or a PIN. They can be used as a " "password replacement or as a 2FA method." msgstr "" -"As passkeys são credenciais WebAuthn que validam a sua identidade " -"utilizando toque, reconhecimento facial, uma palavra-passe do dispositivo " -"ou um PIN. Podem ser usadas como substituto de palavra-passe ou como método " -"de autenticação de dois fatores (2FA)." +"As passkeys são credenciais WebAuthn que validam a sua identidade utilizando " +"toque, reconhecimento facial, uma palavra-passe do dispositivo ou um PIN. " +"Podem ser usadas como substituto de palavra-passe ou como método de " +"autenticação de dois fatores (2FA)." #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3490,7 +3961,8 @@ msgstr "Por favor, insira o token de segurança" #: src/components/SystemRestore/SystemRestoreContent.vue:210 #: src/components/SystemRestore/SystemRestoreContent.vue:287 msgid "Please enter the security token received during backup" -msgstr "Por favor, insira o token de segurança recebido durante a cópia de segurança" +msgstr "" +"Por favor, insira o token de segurança recebido durante a cópia de segurança" #: src/components/AutoCertForm/AutoCertForm.vue:80 msgid "Please enter the server IP address" @@ -3520,10 +3992,11 @@ msgstr "" "Primeiro adicione as credenciais em Certificação > Credenciais DNS e " "selecione uma das credenciais abaixo para solicitar a API do fornecedor DNS." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Por favor, gere novos códigos de recuperação nas preferências imediatamente " "para evitar bloqueio." @@ -3571,12 +4044,15 @@ msgid "Please log in." msgstr "Por favor, faça login." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." -msgstr "Note que as definições da unidade de tempo abaixo estão todas em segundos." +msgid "" +"Please note that the unit of time configurations below are all in seconds." +msgstr "" +"Note que as definições da unidade de tempo abaixo estão todas em segundos." #: src/views/install/components/InstallView.vue:102 msgid "Please resolve all issues before proceeding with installation" -msgstr "Por favor, resolva todos os problemas antes de prosseguir com a instalação" +msgstr "" +"Por favor, resolva todos os problemas antes de prosseguir com a instalação" #: src/views/backup/components/BackupCreator.vue:107 msgid "Please save this security token, you will need it for restoration:" @@ -3703,8 +4179,7 @@ msgstr "Diretório protegido" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "A configuração do protocolo só tem efeito ao conectar diretamente. Se " "estiver a usar um proxy inverso, configure o protocolo separadamente no " @@ -3757,7 +4232,7 @@ msgstr "Leituras" msgid "Receive" msgstr "Receber" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Verificar novamente" @@ -3845,9 +4320,26 @@ msgstr "Recarregar Nginx" msgid "Reload nginx failed: {0}" msgstr "Recarregamento do nginx falhou: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Recarregar Nginx em %{node} falhou, resposta: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Recarregamento do Nginx em %{node} bem-sucedido" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Erro ao Recarregar Nginx Remoto" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Recarregamento remoto do Nginx bem-sucedido" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" -msgstr "O pedido de recarregamento falhou, por favor verifique a sua ligação à rede" +msgstr "" +"O pedido de recarregamento falhou, por favor verifique a sua ligação à rede" #: src/components/NginxControl/NginxControl.vue:77 msgid "Reloading" @@ -3884,22 +4376,58 @@ msgstr "Removido com sucesso" msgid "Rename" msgstr "Renomear" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "Falha ao renomear %{orig_path} para %{new_path} em %{env_name}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "" +"Mudança do nome %{orig_path} para %{new_path} no %{env_name} feito com " +"sucesso" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Erro ao renomear configuração remota" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Configuração remota renomeado com sucesso" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Erro ao renomear site remoto" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Renomear site remoto com sucesso" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Erro ao renomear o fluxo remoto" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Renomear fluxo remoto com sucesso" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Falha ao renomear o site %{name} para %{new_name} em %{node}" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "O site %{name} foi renomeado para %{new_name} em %{node} com sucesso" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "Falha ao renomear o fluxo %{name} para %{new_name} em %{node}" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Fluxo %{name} renomeado para %{new_name} em %{node} com sucesso" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Renomeado com sucesso" @@ -3981,6 +4509,22 @@ msgstr "Reiniciar" msgid "Restart Nginx" msgstr "Reiniciar Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Reinício do Nginx em %{node} falhou, resposta: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Reinício do Nginx em %{node} bem-sucedido" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Erro ao reiniciar Nginx remoto" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Reinício remoto do Nginx bem-sucedido" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "Pedido de reinício falhou, por favor verifique a sua ligação à rede" @@ -4192,14 +4736,40 @@ msgstr "Salvar" msgid "Save Directive" msgstr "Salvar Directiva" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Erro ao guardar site remoto" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Salvar site remoto com sucesso" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Erro ao guardar o fluxo remoto" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Salvar fluxo remoto com sucesso" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Falha ao guardar o site %{name} em %{node}" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Site %{name} guardado em %{node} com sucesso" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Falha ao guardar o fluxo %{name} em %{node}" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Fluxo %{name} guardado em %{node} com sucesso" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Salvo com sucesso" @@ -4310,7 +4880,7 @@ msgstr "{count} ficheiros selecionados" msgid "Selector" msgstr "Seletor" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Auto-verificação" @@ -4372,7 +4942,8 @@ msgstr "Erro ao definir ambiente: {0}" #: src/constants/errors/cert.ts:18 msgid "Set env flag to disable lego CNAME support error: {0}" -msgstr "Definir flag de ambiente para desativar suporte CNAME do lego erro: {0}" +msgstr "" +"Definir flag de ambiente para desativar suporte CNAME do lego erro: {0}" #: src/views/preference/tabs/CertSettings.vue:36 msgid "" @@ -4400,19 +4971,19 @@ msgstr "Definindo provedor de HTTP01 challenge" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath está vazio, consulte " -"https://nginxui.com/guide/config-nginx.html para mais informações" +"Settings.NginxLogSettings.AccessLogPath está vazio, consulte https://nginxui." +"com/guide/config-nginx.html para mais informações" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath está vazio, consulte " -"https://nginxui.com/guide/config-nginx.html para mais informações" +"Settings.NginxLogSettings.ErrorLogPath está vazio, consulte https://nginxui." +"com/guide/config-nginx.html para mais informações" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4454,6 +5025,10 @@ msgstr "Logs do Site" msgid "Site not found" msgstr "Site não encontrado" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "O diretório de sites existe" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Lista de Sites" @@ -4520,8 +5095,7 @@ msgstr "O caminho do certificado SSL é necessário quando o HTTPS está ativado #: src/constants/errors/system.ts:9 msgid "SSL key file must be under Nginx configuration directory: {0}" msgstr "" -"O ficheiro de chave SSL deve estar no diretório de configuração do Nginx: " -"{0}" +"O ficheiro de chave SSL deve estar no diretório de configuração do Nginx: {0}" #: src/constants/errors/system.ts:7 msgid "SSL key file not found" @@ -4587,6 +5161,14 @@ msgstr "Armazenamento" msgid "Storage Configuration" msgstr "Configuração de armazenamento" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"A validação da configuração de armazenamento para a tarefa de backup " +"%{backup_name} falhou, erro: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4599,7 +5181,8 @@ msgstr "O caminho de armazenamento é obrigatório" #: src/constants/errors/backup.ts:61 msgid "Storage path not in granted access paths: {0}" -msgstr "Caminho de armazenamento não está nos caminhos de acesso concedidos: {0}" +msgstr "" +"Caminho de armazenamento não está nos caminhos de acesso concedidos: {0}" #: src/views/backup/AutoBackup/AutoBackup.vue:70 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:45 @@ -4614,6 +5197,10 @@ msgstr "O fluxo está ativado" msgid "Stream not found" msgstr "Transmissão não encontrada" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "O diretório de streams existe" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "O diretório streams-available não existe" @@ -4641,27 +5228,15 @@ msgstr "Sucesso" msgid "Sunday" msgstr "Domingo" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Suporte à comunicação com o backend através do protocolo Server-Sent " -"Events. Se a sua Nginx UI estiver a ser utilizada através de um proxy " -"inverso Nginx, consulte este link para escrever o ficheiro de configuração " -"correspondente: https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" -"Suporta a comunicação com o backend através do protocolo WebSocket. Se a " -"sua interface Nginx está a ser utilizada através de um proxy inverso Nginx, " +"Suporta a comunicação com o backend através do protocolo WebSocket. Se a sua " +"interface Nginx está a ser utilizada através de um proxy inverso Nginx, " "consulte este link para escrever o ficheiro de configuração correspondente: " "https://nginxui.com/guide/nginx-proxy-example.html" @@ -4700,19 +5275,36 @@ msgstr "Sincronizar" msgid "Sync Certificate" msgstr "Sincronizar Certificado" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "Falha ao sincronizar o certificado %{cert_name} para %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "" +"Sincronização do Certificado %{cert_name} para %{env_name} feito com sucesso" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Erro ao Sincronizar Certificado" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Certificado Sincronizado com Sucesso" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "Falha ao sincronizar a configuração %{config_name} para %{env_name}" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "Configuração %{config_name} sincronizada com sucesso para %{env_name}" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Erro de Configuração de Sincronização" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Sucesso na configuração da sincronização" @@ -4808,8 +5400,8 @@ msgid "" "since it was last issued." msgstr "" "O certificado do domínio será verificado 30 minutos e será renovado se já " -"tiver passado mais de 1 semana ou o período que definiu nas definições " -"desde a última emissão." +"tiver passado mais de 1 semana ou o período que definiu nas definições desde " +"a última emissão." #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" @@ -4829,11 +5421,10 @@ msgstr "O valor introduzido não é uma Chave de Certificado SSL" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"O caminho do registo não está sob os caminhos em " -"settings.NginxSettings.LogDirWhiteList" +"O caminho do registo não está sob os caminhos em settings.NginxSettings." +"LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4845,10 +5436,11 @@ msgstr "" "traços, dois pontos e pontos." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" -"O modelo utilizado para a conclusão de código, se não estiver definido, " -"será utilizado o modelo de chat." +"O modelo utilizado para a conclusão de código, se não estiver definido, será " +"utilizado o modelo de chat." #: src/views/preference/tabs/NodeSettings.vue:18 msgid "" @@ -4884,8 +5476,8 @@ msgid "" "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." msgstr "" -"A versão remota do Nginx UI não é compatível com a versão local do Nginx " -"UI. Para evitar possíveis erros, atualize a versão remota do Nginx UI para " +"A versão remota do Nginx UI não é compatível com a versão local do Nginx UI. " +"Para evitar possíveis erros, atualize a versão remota do Nginx UI para " "corresponder à versão local." #: src/components/AutoCertForm/AutoCertForm.vue:155 @@ -4961,14 +5553,23 @@ msgid "This field should not be empty" msgstr "Este campo não pode estar vazio" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." -msgstr "Este campo deve conter apenas letras, caracteres Unicode, números e -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." +msgstr "" +"Este campo deve conter apenas letras, caracteres Unicode, números e -_." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" -msgstr "Este campo deve conter apenas letras, caracteres Unicode, números e -_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" +msgstr "" +"Este campo deve conter apenas letras, caracteres Unicode, números e -_./:" + +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" +"Esta é uma mensagem de teste enviada em %{timestamp} da interface do usuário " +"nginx." #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" @@ -4992,9 +5593,9 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Este site está configurado como um servidor padrão (default_server) para " "HTTPS (porta 443). Os certificados IP requerem suporte de uma Autoridade de " @@ -5003,8 +5604,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Este site utiliza um nome de servidor curinga (_) que normalmente indica um " @@ -5047,10 +5648,10 @@ msgstr "" "UI irá reiniciar após a conclusão da restauração." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" -"Isto vai actualizar ou reinstalar o Nginx UI em %{nodeNames} para " -"%{version}." +"Isto vai actualizar ou reinstalar o Nginx UI em %{nodeNames} para %{version}." #: src/views/preference/tabs/AuthSettings.vue:92 msgid "Throttle" @@ -5104,8 +5705,8 @@ msgstr "" #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" "Para garantir que a renovação automática da certificação funciona " @@ -5409,8 +6010,8 @@ msgid "" "to restore." msgstr "" "Aviso: A operação de restauro irá substituir as configurações atuais. " -"Certifique-se de que tem um ficheiro de cópia de segurança válido e um " -"token de segurança, e selecione cuidadosamente o que restaurar." +"Certifique-se de que tem um ficheiro de cópia de segurança válido e um token " +"de segurança, e selecione cuidadosamente o que restaurar." #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" @@ -5433,8 +6034,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Removeremos a configuração HTTPChallenge deste ficheiro e reiniciaremos o " "Nginx. Tem a certeza de que quer continuar?" @@ -5554,8 +6155,8 @@ msgstr "Sim" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" "Está a aceder a este terminal através de uma ligação HTTP insegura num " "domínio que não é localhost. Isto pode expor informações sensíveis." @@ -5587,11 +6188,12 @@ msgid "" "You have not configured the settings of Webauthn, so you cannot add a " "passkey." msgstr "" -"Não configuraste as definições do WebAuthn, por isso não podes adicionar " -"uma chave de acesso." +"Não configuraste as definições do WebAuthn, por isso não podes adicionar uma " +"chave de acesso." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "Ainda não ativou a autenticação de dois fatores. Por favor, ative-a para " "gerar códigos de recuperação." @@ -5618,458 +6220,17 @@ msgstr "Os seus códigos antigos não funcionarão mais." msgid "Your passkeys" msgstr "As suas chaves de acesso" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] Utilizador ACME: %{name}, Email: %{email}, Diretório CA: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "" -#~ "[Nginx UI] A fazer cópia de segurança do certificado atual para posterior " -#~ "revogação" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Certificado renovado com sucesso" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Certificado revogado com sucesso" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] O certificado foi usado para o servidor, a recarregar o " -#~ "certificado TLS do servidor" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] Criando cliente para facilitar a comunicação com o servidor CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Variáveis de ambiente limpas" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Concluído" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Certificado emitido com sucesso" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] A obter certificado" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Preparando para a revogação do certificado" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] A preparar configurações do lego" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] A recarregar o nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Revogação concluída" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Revogar certificado" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Revogar certificado antigo" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] A configurar o fornecedor de desafio DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Configurando variáveis de ambiente" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] A configurar o fornecedor de desafio HTTP01" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] A gravar a chave privada do certificado no disco" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] A escrever o certificado no disco" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Backup automático concluído" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Erro de configuração de backup automático" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Backup automático falhou" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Falha no armazenamento de backup automático" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "" -#~ "Tarefa de backup %{backup_name} concluída com sucesso, ficheiro: " -#~ "%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "A tarefa de backup %{backup_name} falhou durante o upload para o " -#~ "armazenamento, erro: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "A tarefa de backup %{backup_name} falhou ao executar, erro: %{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "O certificado %{name} expirou" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "O certificado %{name} expirará em %{days} dias" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "O certificado %{name} irá expirar em 1 dia" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Aviso de Expiração do Certificado" - -#~ msgid "Certificate Expired" -#~ msgstr "Certificado expirado" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Certificado a expirar em breve" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Certificado não encontrado: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Certificado revogado com sucesso" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Verifique se /var/run/docker.sock existe. Se estiver a utilizar a imagem " -#~ "Docker oficial do Nginx UI, certifique-se de que o socket Docker está " -#~ "montado desta forma: `-v /var/run/docker.sock:/var/run/docker.sock`. A " -#~ "imagem oficial do Nginx UI utiliza /var/run/docker.sock para comunicar com " -#~ "o Docker Engine do anfitrião através da API do Docker Client. Esta " -#~ "funcionalidade é utilizada para controlar o Nginx noutro contentor e " -#~ "realizar a substituição de contentores em vez da substituição binária " -#~ "durante as atualizações OTA do Nginx UI para garantir que as dependências " -#~ "do contentor também são atualizadas. Se não necessitar desta " -#~ "funcionalidade, adicione a variável de ambiente " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true ao contentor." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Verifique se o caminho do registo de acesso do nginx existe. Por " -#~ "predefinição, este caminho é obtido a partir de 'nginx -V'. Se não for " -#~ "possível obtê-lo ou se o caminho obtido não apontar para um ficheiro válido " -#~ "existente, será reportado um erro. Neste caso, terá de modificar o ficheiro " -#~ "de configuração para especificar o caminho do registo de acesso. Consulte a " -#~ "documentação para mais detalhes: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Verificar se o diretório de configuração do nginx existe" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Verificar se o ficheiro de entrada de configuração do nginx existe" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Verifique se o caminho do registo de erros do nginx existe. Por " -#~ "predefinição, este caminho é obtido a partir de 'nginx -V'. Se não for " -#~ "possível obtê-lo ou se o caminho obtido não apontar para um ficheiro válido " -#~ "existente, será reportado um erro. Neste caso, terá de modificar o ficheiro " -#~ "de configuração para especificar o caminho do registo de erros. Consulte a " -#~ "documentação para mais detalhes: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Verifique se o caminho do PID do Nginx existe. Por padrão, este caminho é " -#~ "obtido a partir de 'nginx -V'. Se não puder ser obtido, será relatado um " -#~ "erro. Neste caso, você precisa modificar o arquivo de configuração para " -#~ "especificar o caminho do PID do Nginx. Consulte a documentação para obter " -#~ "mais detalhes: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Verifique se o caminho sbin do nginx existe" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Verificar se o nginx.conf inclui o diretório conf.d" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Verificar se o nginx.conf inclui o diretório sites-enabled" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Verificar se o nginx.conf inclui o diretório streams-enabled" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Verifique se os diretórios sites-available e sites-enabled estão no " -#~ "diretório de configuração do nginx" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Verifique se os diretórios streams-available e streams-enabled estão no " -#~ "diretório de configuração do nginx" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Falha ao eliminar %{path} em %{env_name}" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{path} em %{env_name} eliminado com sucesso" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Erro ao eliminar configuração remota" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Configuração remota apagada com sucesso" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Erro ao eliminar transmissão remota" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Eliminação de transmissão remota bem-sucedida" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Falha ao eliminar o site %{name} de %{node}" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Site %{name} eliminado de %{node} com sucesso" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Falha ao eliminar o fluxo %{name} de %{node}" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "O fluxo %{name} foi eliminado de %{node} com sucesso" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Erro ao desativar a manutenção do site remoto" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Desativação da manutenção do site remoto com sucesso" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Erro ao desativar transmissão remota" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Desativação de transmissão remota bem-sucedida" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Desativar o site %{name} de %{node} falhou" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Site %{name} desativado em %{node} com sucesso" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Falha ao desativar a manutenção do site %{name} em %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Desativação da manutenção do site %{name} em %{node} com sucesso" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Falha ao desativar o fluxo %{name} de %{node}" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Desativar o fluxo %{name} de %{node} com sucesso" - -#~ msgid "Docker socket exists" -#~ msgstr "O socket do Docker existe" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Erro ao ativar a manutenção do site remoto" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Ativar manutenção do site remoto com sucesso" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Erro ao ativar transmissão remota" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Ativar transmissão remota com sucesso" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "Falha ao ativar a manutenção do site %{name} em %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Ativar a manutenção do site %{name} em %{node} com sucesso" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "Falha ao ativar o site %{name} em %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Site %{name} ativado em %{node} com sucesso" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "Falha ao ativar o fluxo %{name} em %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Ativar o fluxo %{name} em %{node} com sucesso" - -#~ msgid "External Notification Test" -#~ msgstr "Teste de notificação externa" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Falha ao eliminar o certificado da base de dados: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Falha ao revogar o certificado: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "O ficheiro de registo %{log_path} não é um ficheiro regular. Se estiver a " -#~ "utilizar o nginx-ui num contentor Docker, consulte " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html para obter mais " -#~ "informações." - -#~ msgid "Nginx access log path exists" -#~ msgstr "O caminho do log de acesso do Nginx existe" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "O diretório de configuração do Nginx existe" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "O ficheiro de entrada de configuração do Nginx existe" - -#~ msgid "Nginx error log path exists" -#~ msgstr "O caminho do log de erros do Nginx existe" - -#~ msgid "Nginx PID path exists" -#~ msgstr "O caminho do PID do Nginx existe" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "O caminho sbin do Nginx existe" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf inclui o diretório conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf inclui o diretório sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf inclui o diretório streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Recarregar Nginx em %{node} falhou, resposta: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Recarregamento do Nginx em %{node} bem-sucedido" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Erro ao Recarregar Nginx Remoto" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Recarregamento remoto do Nginx bem-sucedido" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Falha ao renomear %{orig_path} para %{new_path} em %{env_name}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "" -#~ "Mudança do nome %{orig_path} para %{new_path} no %{env_name} feito com " -#~ "sucesso" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Erro ao renomear o fluxo remoto" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Renomear fluxo remoto com sucesso" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Falha ao renomear o site %{name} para %{new_name} em %{node}" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "O site %{name} foi renomeado para %{new_name} em %{node} com sucesso" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Falha ao renomear o fluxo %{name} para %{new_name} em %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Fluxo %{name} renomeado para %{new_name} em %{node} com sucesso" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Reinício do Nginx em %{node} falhou, resposta: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Reinício do Nginx em %{node} bem-sucedido" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Erro ao reiniciar Nginx remoto" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Reinício remoto do Nginx bem-sucedido" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Erro ao guardar o fluxo remoto" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Salvar fluxo remoto com sucesso" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Falha ao guardar o site %{name} em %{node}" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Site %{name} guardado em %{node} com sucesso" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Falha ao guardar o fluxo %{name} em %{node}" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Fluxo %{name} guardado em %{node} com sucesso" - -#~ msgid "Sites directory exists" -#~ msgstr "O diretório de sites existe" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "A validação da configuração de armazenamento para a tarefa de backup " -#~ "%{backup_name} falhou, erro: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "O diretório de streams existe" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Falha ao sincronizar o certificado %{cert_name} para %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Sincronização do Certificado %{cert_name} para %{env_name} feito com sucesso" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "Falha ao sincronizar a configuração %{config_name} para %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Configuração %{config_name} sincronizada com sucesso para %{env_name}" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "" -#~ "Esta é uma mensagem de teste enviada em %{timestamp} da interface do " -#~ "usuário nginx." +#~ "Suporte à comunicação com o backend através do protocolo Server-Sent " +#~ "Events. Se a sua Nginx UI estiver a ser utilizada através de um proxy " +#~ "inverso Nginx, consulte este link para escrever o ficheiro de " +#~ "configuração correspondente: https://nginxui.com/guide/nginx-proxy-" +#~ "example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Se for deixado em branco, será utilizado o diretório CA padrão." @@ -6158,8 +6319,8 @@ msgstr "As suas chaves de acesso" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" #~ "Verifique se /var/run/docker.sock existe. Se estiver a utilizar a imagem " #~ "Docker oficial do Nginx UI, certifique-se de que o socket Docker está " @@ -6188,7 +6349,8 @@ msgstr "As suas chaves de acesso" #~ msgstr "Este item Auto Cert é inválido, por favor remova-o." #~ msgid "Automatically indexed from site and stream configurations." -#~ msgstr "Indexado automaticamente a partir das configurações de site e stream." +#~ msgstr "" +#~ "Indexado automaticamente a partir das configurações de site e stream." #~ msgid "Deploy successfully" #~ msgstr "Deploy sucedido" @@ -6211,17 +6373,19 @@ msgstr "As suas chaves de acesso" #~ msgstr "Ambiente" #~ msgid "Failed to save, syntax error(s) was detected in the configuration." -#~ msgstr "Falha ao salvar, erro(s) de sintaxe detectados no ficheiro de configuração." +#~ msgstr "" +#~ "Falha ao salvar, erro(s) de sintaxe detectados no ficheiro de " +#~ "configuração." #~ msgid "Format error %{msg}" #~ msgstr "Erro de Formato %{msg}" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "" -#~ "Se perder o seu telemóvel, pode utilizar o código de recuperação para repor " -#~ "o seu 2FA." +#~ "Se perder o seu telemóvel, pode utilizar o código de recuperação para " +#~ "repor o seu 2FA." #~ msgid "Incorrect username or password" #~ msgstr "Utilizador ou senha incorrectos" @@ -6246,7 +6410,8 @@ msgstr "As suas chaves de acesso" #~ "Sincronização do Certificado %{cert_name} para %{env_name} falhou, por " #~ "favor actualize a versão remota do Nginx UI para a última versão" -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "" #~ "Sincronização do Certificado %{cert_name} para %{env_name} falhou, " #~ "resposta: %{resp}" @@ -6263,7 +6428,8 @@ msgstr "As suas chaves de acesso" #~ "Sincronização de configuração %{config_name} para %{env_name} falhou, " #~ "resposta: %{resp}" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "" #~ "O código de recuperação é apresentado apenas uma vez, guarde-o num local " #~ "seguro." diff --git a/app/src/language/ru_RU/app.po b/app/src/language/ru_RU/app.po index 4c7a83de..99b7a69a 100644 --- a/app/src/language/ru_RU/app.po +++ b/app/src/language/ru_RU/app.po @@ -7,15 +7,104 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2025-03-28 02:45+0300\n" "Last-Translator: Artyom Isrofilov \n" -"Language-Team: Russian " -"\n" +"Language-Team: Russian \n" "Language: ru_RU\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 3.5\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] Пользователь ACME: %{name}, Email: %{email}, Каталог CA: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" +"[Nginx UI] Резервное копирование текущего сертификата для последующего отзыва" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Сертификат успешно обновлен" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Сертификат успешно отозван" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] Сертификат использовался для сервера, перезагрузка TLS-" +"сертификата сервера" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] Создание клиента для облегчения связи с сервером CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Переменные окружения очищены" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Завершено" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Сертификат успешно выдан" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Получение сертификата" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Подготовка к отзыву сертификата" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Подготовка конфигураций lego" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Перезагрузка nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Отзыв завершен" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Отзыв сертификата" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Отзыв старого сертификата" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] Настройка провайдера проверки DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Установка переменных окружения" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] Настройка провайдера HTTP01-проверки" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Запись закрытого ключа сертификата на диск" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Запись сертификата на диск" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* Включает узлы из группы %{groupName} и узлы, выбранные вручную" @@ -141,12 +230,14 @@ msgstr "Расширенный режим" #: src/views/preference/components/AuthSettings/AddPasskey.vue:104 msgid "Afterwards, refresh this page and click add passkey again." -msgstr "После этого обновите эту страницу и снова нажмите «Добавить ключ доступа»." +msgstr "" +"После этого обновите эту страницу и снова нажмите «Добавить ключ доступа»." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:83 msgid "All" msgstr "Все" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Все коды восстановления были использованы" @@ -156,12 +247,14 @@ msgid "" "All selected subdomains must belong to the same DNS Provider, otherwise the " "certificate application will fail." msgstr "" -"Все выбранные поддомены должны принадлежать одному и тому же " -"DNS-провайдеру, иначе запрос сертификата завершится неудачей." +"Все выбранные поддомены должны принадлежать одному и тому же DNS-провайдеру, " +"иначе запрос сертификата завершится неудачей." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" -msgstr "Любой доступный IP-адрес можно использовать с частными центрами сертификации" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" +msgstr "" +"Любой доступный IP-адрес можно использовать с частными центрами сертификации" #: src/views/preference/tabs/OpenAISettings.vue:32 msgid "API Base Url" @@ -261,7 +354,7 @@ msgstr "Обратитесь за помощью к ChatGPT" msgid "Assistant" msgstr "Ассистент" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Попытка исправить" @@ -300,6 +393,22 @@ msgstr "Auto = ядра процессора" msgid "Auto Backup" msgstr "Автоматическое резервное копирование" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Автоматическое резервное копирование завершено" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Ошибка конфигурации автоматического резервного копирования" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Автоматическое резервное копирование не удалось" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Сбой хранения автоматической резервной копии" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -399,6 +508,25 @@ msgstr "Путь резервного копирования не входит msgid "Backup Schedule" msgstr "Расписание резервного копирования" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Задача резервного копирования %{backup_name} успешно завершена, файл: " +"%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"Задача резервного копирования %{backup_name} не выполнена при загрузке в " +"хранилище, ошибка: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" +"Не удалось выполнить задание резервного копирования %{backup_name}, ошибка: " +"%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Тип резервной копии" @@ -473,8 +601,7 @@ msgstr "Кэш" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:178 msgid "Cache items not accessed within this time will be removed" msgstr "" -"Элементы кэша, к которым не обращались в течение этого времени, будут " -"удалены" +"Элементы кэша, к которым не обращались в течение этого времени, будут удалены" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:350 msgid "Cache loader processing time threshold" @@ -573,6 +700,20 @@ msgstr "Путь к сертификату не находится в дирек msgid "certificate" msgstr "сертификат" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "Срок действия сертификата %{name} истёк" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "Сертификат %{name} истечет через %{days} дней" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "Сертификат %{name} истечет через 1 день" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "Содержимое сертификата и закрытый ключ не могут быть пустыми" @@ -581,6 +722,20 @@ msgstr "Содержимое сертификата и закрытый ключ msgid "Certificate decode error" msgstr "Ошибка декодирования сертификата" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Уведомление об истечении срока действия сертификата" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Сертификат истёк" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Сертификат скоро истекает" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Файлы сертификата успешно загружены" @@ -589,6 +744,10 @@ msgstr "Файлы сертификата успешно загружены" msgid "Certificate name cannot be empty" msgstr "Имя сертификата не может быть пустым" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Сертификат не найден: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Ошибка разбора сертификата" @@ -610,6 +769,10 @@ msgstr "Интервал обновления сертификата" msgid "Certificate renewed successfully" msgstr "Сертификат успешно продлен" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Сертификат успешно отозван" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -677,6 +840,29 @@ msgstr "Проверить" msgid "Check again" msgstr "Проверить повторно" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Проверьте, существует ли /var/run/docker.sock. Если вы используете " +"официальный образ Docker Nginx UI, убедитесь, что сокет Docker смонтирован " +"следующим образом: `-v /var/run/docker.sock:/var/run/docker.sock`. " +"Официальный образ Nginx UI использует /var/run/docker.sock для связи с " +"Docker Engine хоста через API Docker Client. Эта функция используется для " +"управления Nginx в другом контейнере и выполнения замены контейнера вместо " +"замены бинарного файла во время OTA-обновлений Nginx UI, чтобы " +"гарантировать, что зависимости контейнера также обновляются. Если вам не " +"нужна эта функция, добавьте переменную окружения " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true в контейнер." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -685,6 +871,92 @@ msgstr "" "Проверьте, включен ли HTTPS. Использование HTTP вне localhost небезопасно и " "препятствует использованию Passkeys и функций буфера обмена" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Проверьте, существует ли путь к журналу доступа nginx. По умолчанию этот " +"путь получается из 'nginx -V'. Если его невозможно получить или полученный " +"путь не указывает на действительный существующий файл, будет сообщена " +"ошибка. В этом случае вам необходимо изменить файл конфигурации, чтобы " +"указать путь к журналу доступа. Подробнее см. в документации: https://" +"nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Проверить, существует ли каталог конфигурации nginx" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Проверить, существует ли файл конфигурации nginx" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Проверьте, существует ли путь к журналу ошибок nginx. По умолчанию этот путь " +"получается из 'nginx -V'. Если его невозможно получить или полученный путь " +"не указывает на действительный существующий файл, будет сообщена ошибка. В " +"этом случае вам нужно изменить файл конфигурации, чтобы указать путь к " +"журналу ошибок. Подробнее см. в документации: https://nginxui.com/zh_CN/" +"guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Проверьте, существует ли путь к PID Nginx. По умолчанию этот путь получается " +"из команды 'nginx -V'. Если его не удается получить, будет сообщена ошибка. " +"В этом случае вам нужно изменить конфигурационный файл, чтобы указать путь к " +"PID Nginx. Подробнее см. в документации: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Проверьте, существует ли путь к sbin nginx" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Проверить, включает ли файл nginx.conf директорию conf.d" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Проверить, включает ли nginx.conf каталог sites-enabled" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "Проверить, включает ли nginx.conf каталог streams-enabled" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Проверьте, находятся ли каталоги sites-available и sites-enabled в каталоге " +"конфигурации nginx" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Проверьте, находятся ли каталоги streams-available и streams-enabled в " +"каталоге конфигурации nginx" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "Зашифрованный текст слишком короткий" @@ -1068,6 +1340,14 @@ msgstr "Определите имя и размер зоны общей памя msgid "Delete" msgstr "Удалить" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Не удалось удалить %{path} на %{env_name}" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{path} на %{env_name} успешно удалён" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Удалить сертификат" @@ -1080,18 +1360,51 @@ msgstr "Подтверждение удаления" msgid "Delete Permanently" msgstr "Удалить навсегда" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Ошибка удаления удаленной конфигурации" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Удаление удаленной конфигурации успешно" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Ошибка удаления удаленного сайта" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Удаление удаленного сайта успешно завершено" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Ошибка удаления удаленного потока" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Удаление удаленного потока успешно" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Не удалось удалить сайт %{name} с %{node}" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Сайт %{name} успешно удалён с %{node}" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Удалить сайт: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Не удалось удалить поток %{name} с %{node}" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "Поток %{name} успешно удален с %{node}" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Удалить поток: %{stream_name}" @@ -1178,14 +1491,56 @@ msgstr "Отключить" msgid "Disable auto-renewal failed for %{name}" msgstr "Не удалось отключить автоматическое продление для %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Ошибка отключения удаленного сайта" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Ошибка отключения обслуживания удаленного сайта" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Успешное отключение обслуживания удаленного сайта" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Удалённый сайт успешно отключён" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Ошибка отключения удаленного потока" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Удаленный поток успешно отключен" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Не удалось отключить сайт %{name} с %{node}" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Сайт %{name} успешно отключен на %{node}" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "Не удалось отключить обслуживание сайта %{name} на %{node}" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Обслуживание сайта %{name} на %{node} успешно отключено" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Не удалось отключить поток %{name} с узла %{node}" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Поток %{name} отключен от %{node} успешно" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1256,6 +1611,10 @@ msgstr "Хотите удалить этот сервер?" msgid "Docker client not initialized" msgstr "Клиент Docker не инициализирован" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Сокет Docker существует" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Сокет Docker не существует" @@ -1272,7 +1631,8 @@ msgstr "Домен" #: src/views/certificate/components/AutoCertManagement.vue:55 msgid "Domains list is empty, try to reopen Auto Cert for %{config}" -msgstr "Список доменов пуст, попробуйте заново создать авто-сертификат для %{config}" +msgstr "" +"Список доменов пуст, попробуйте заново создать авто-сертификат для %{config}" #: src/views/certificate/components/CertificateDownload.vue:93 msgid "Download Certificate Files" @@ -1405,14 +1765,56 @@ msgstr "Включить HTTPS" msgid "Enable Proxy Cache" msgstr "Включить кэш прокси" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Ошибка включения удаленного сайта" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Ошибка включения обслуживания удаленного сайта" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Успешное включение обслуживания удаленного сайта" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Удалённый сайт успешно включён" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Ошибка включения удаленного потока" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Успешное включение удаленного потока" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "Не удалось включить обслуживание сайта %{name} на %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "Техническое обслуживание сайта %{name} на %{node} успешно включено" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "Не удалось включить сайт %{name} на %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Сайт %{name} успешно включён на %{node}" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "Не удалось включить поток %{name} на %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Поток %{name} успешно включён на %{node}" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Включить модуль stub_status" @@ -1451,8 +1853,8 @@ msgstr "Активировано успешно" #: src/views/preference/tabs/ServerSettings.vue:52 msgid "Enables HTTP/2 support with multiplexing and server push capabilities" msgstr "" -"Включает поддержку HTTP/2 с возможностью мультиплексирования и " -"push-уведомлений сервера" +"Включает поддержку HTTP/2 с возможностью мультиплексирования и push-" +"уведомлений сервера" #: src/views/preference/tabs/ServerSettings.vue:56 msgid "Enables HTTP/3 support based on QUIC protocol for best performance" @@ -1559,8 +1961,8 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "Идентификатор ключа внешней привязки аккаунта (опционально). Требуется " "некоторыми провайдерами ACME, такими как ZeroSSL." @@ -1573,6 +1975,10 @@ msgstr "Внешний контейнер Docker" msgid "External notification configuration not found" msgstr "Внешняя конфигурация уведомлений не найдена" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Тест внешнего уведомления" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1727,6 +2133,10 @@ msgstr "Не удалось расшифровать каталог Nginx UI: {0 msgid "Failed to delete certificate" msgstr "Не удалось удалить сертификат" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Не удалось удалить сертификат из базы данных: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1893,6 +2303,10 @@ msgstr "Не удалось восстановить файлы пользова msgid "Failed to revoke certificate" msgstr "Не удалось отозвать сертификат" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Не удалось отозвать сертификат: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Не удалось сохранить настройки производительности Nginx" @@ -1994,8 +2408,8 @@ msgid "" "Follow the instructions in the dialog to complete the passkey registration " "process." msgstr "" -"Следуйте инструкциям в всплывающем окне, чтобы завершить процесс " -"регистрации ключа доступа." +"Следуйте инструкциям в всплывающем окне, чтобы завершить процесс регистрации " +"ключа доступа." #: src/views/preference/tabs/NodeSettings.vue:42 #: src/views/preference/tabs/NodeSettings.vue:54 @@ -2017,8 +2431,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "Для сертификатов на основе IP укажите IP-адрес сервера, который будет " "включен в сертификат." @@ -2119,7 +2533,8 @@ msgstr "Скрыть" #: src/views/dashboard/components/PerformanceStatisticsCard.vue:87 msgid "Higher value means better connection reuse" -msgstr "Более высокое значение означает лучшее повторное использование соединения" +msgstr "" +"Более высокое значение означает лучшее повторное использование соединения" #: src/views/config/components/ConfigLeftPanel.vue:254 #: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:87 @@ -2172,11 +2587,13 @@ msgstr "" msgid "" "If you want to automatically revoke the old certificate, please enable this " "option." -msgstr "Если вы хотите автоматически отозвать старый сертификат, включите эту опцию." +msgstr "" +"Если вы хотите автоматически отозвать старый сертификат, включите эту опцию." #: src/views/preference/components/AuthSettings/AddPasskey.vue:75 msgid "If your browser supports WebAuthn Passkey, a dialog box will appear." -msgstr "Если ваш браузер поддерживает WebAuthn Passkey, появится диалоговое окно." +msgstr "" +"Если ваш браузер поддерживает WebAuthn Passkey, появится диалоговое окно." #: src/components/AutoCertForm/AutoCertForm.vue:271 msgid "" @@ -2386,8 +2803,8 @@ msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." msgstr "" -"Храните ваши коды восстановления так же безопасно, как и пароль. " -"Рекомендуем сохранить их в менеджере паролей." +"Храните ваши коды восстановления так же безопасно, как и пароль. Рекомендуем " +"сохранить их в менеджере паролей." #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2544,6 +2961,16 @@ msgstr "Локации" msgid "Log" msgstr "Журнал" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"Файл журнала %{log_path} не является обычным файлом. Если вы используете " +"nginx-ui в контейнере Docker, обратитесь к https://nginxui.com/zh_CN/guide/" +"config-nginx-log.html для получения дополнительной информации." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Список журналов" @@ -2566,18 +2993,18 @@ msgstr "Прокрутка" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "Logrotate по умолчанию включен в большинстве основных дистрибутивов Linux " "для пользователей, которые устанавливают Nginx UI на хост-машину, поэтому " -"вам не нужно изменять параметры на этой странице. Для пользователей, " -"которые устанавливают Nginx UI с использованием Docker-контейнеров, вы " -"можете вручную включить эту опцию. Планировщик задач crontab Nginx UI будет " +"вам не нужно изменять параметры на этой странице. Для пользователей, которые " +"устанавливают Nginx UI с использованием Docker-контейнеров, вы можете " +"вручную включить эту опцию. Планировщик задач crontab Nginx UI будет " "выполнять команду logrotate с интервалом, который вы установите в минутах." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 @@ -2889,6 +3316,10 @@ msgstr "Вывод Nginx -T пуст" msgid "Nginx Access Log Path" msgstr "Путь для Nginx Access Log" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Путь к журналу доступа Nginx существует" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2918,6 +3349,14 @@ msgstr "Конфигурация Nginx не включает stream-enabled" msgid "Nginx config directory is not set" msgstr "Каталог конфигурации Nginx не задан" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Каталог конфигурации Nginx существует" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Файл конфигурации Nginx существует" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Конфигурация Nginx была восстановлена" @@ -2952,6 +3391,10 @@ msgstr "Уровень использования CPU Nginx" msgid "Nginx Error Log Path" msgstr "Путь для Nginx Error Log" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Путь к журналу ошибок Nginx существует" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Ошибка Nginx: {0}" @@ -2989,6 +3432,10 @@ msgstr "Использование памяти Nginx" msgid "Nginx PID Path" msgstr "Путь к PID Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Путь PID Nginx существует" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Команда перезагрузки Nginx" @@ -3018,6 +3465,10 @@ msgstr "Операции перезапуска Nginx были отправле msgid "Nginx restarted successfully" msgstr "Nginx успешно перезапущен" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Путь sbin для Nginx существует" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Команда проверки конфигурации Nginx" @@ -3041,12 +3492,24 @@ msgstr "Конфигурация Nginx UI была восстановлена" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" "Конфигурация Nginx UI была восстановлена и автоматически перезапустится " "через несколько секунд." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf включает каталог conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf включает каталог sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf включает каталог streams-enabled" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3456,8 +3919,8 @@ msgid "" "Please enable the stub_status module to get request statistics, connection " "count, etc." msgstr "" -"Пожалуйста, включите модуль stub_status, чтобы получать статистику " -"запросов, количество соединений и т. д." +"Пожалуйста, включите модуль stub_status, чтобы получать статистику запросов, " +"количество соединений и т. д." #: src/views/preference/components/AuthSettings/AddPasskey.vue:74 msgid "" @@ -3469,7 +3932,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:98 msgid "Please enter a valid IPv4 address (0-255 per octet)" -msgstr "Пожалуйста, введите действительный IPv4-адрес (0-255 для каждого октета)" +msgstr "" +"Пожалуйста, введите действительный IPv4-адрес (0-255 для каждого октета)" #: src/components/AutoCertForm/AutoCertForm.vue:109 msgid "Please enter a valid IPv4 or IPv6 address" @@ -3515,8 +3979,8 @@ msgid "" "Please fill in the API authentication credentials provided by your DNS " "provider." msgstr "" -"Пожалуйста, заполните учетные данные API, предоставленные вашим " -"DNS-провайдером." +"Пожалуйста, заполните учетные данные API, предоставленные вашим DNS-" +"провайдером." #: src/components/AutoCertForm/AutoCertForm.vue:168 msgid "" @@ -3527,10 +3991,11 @@ msgstr "" "Credentials, а затем выберите одну из учетных данных ниже, чтобы запросить " "API провайдера DNS." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Пожалуйста, немедленно сгенерируйте новые коды восстановления в настройках, " "чтобы избежать блокировки." @@ -3578,7 +4043,8 @@ msgid "Please log in." msgstr "Пожалуйста, войдите в систему." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "" "Обратите внимание, что единица измерения времени в конфигурациях ниже " "указана в секундах." @@ -3670,7 +4136,8 @@ msgstr "Частный CA:" #: src/components/AutoCertForm/AutoCertForm.vue:202 msgid "Private IPs (192.168.x.x, 10.x.x.x, 172.16-31.x.x) will fail" -msgstr "Частные IP-адреса (192.168.x.x, 10.x.x.x, 172.16-31.x.x) не пройдут проверку" +msgstr "" +"Частные IP-адреса (192.168.x.x, 10.x.x.x, 172.16-31.x.x) не пройдут проверку" #: src/views/certificate/components/CertificateFileUpload.vue:120 #: src/views/certificate/components/CertificateFileUpload.vue:44 @@ -3712,12 +4179,10 @@ msgstr "Защищённая директория" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "Настройки протокола применяются только при прямом подключении. При " -"использовании обратного прокси настройте протокол отдельно в обратном " -"прокси." +"использовании обратного прокси настройте протокол отдельно в обратном прокси." #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3766,7 +4231,7 @@ msgstr "Чтение" msgid "Receive" msgstr "Принято" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Проверить снова" @@ -3783,8 +4248,8 @@ msgid "" "Recovery codes are used to access your account when you lose access to your " "2FA device. Each code can only be used once." msgstr "" -"Коды восстановления используются для доступа к аккаунту при утере " -"2FA-устройства. Каждый код можно использовать только один раз." +"Коды восстановления используются для доступа к аккаунту при утере 2FA-" +"устройства. Каждый код можно использовать только один раз." #: src/views/preference/tabs/CertSettings.vue:40 msgid "Recursive Nameservers" @@ -3854,9 +4319,26 @@ msgstr "Перезагрузить Nginx" msgid "Reload nginx failed: {0}" msgstr "Не удалось перезагрузить nginx: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Перезагрузка Nginx на %{node} не удалась, ответ: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Nginx на %{node} успешно перезагружен" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Ошибка перезагрузки удаленного Nginx" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Удаленная перезагрузка Nginx успешно выполнена" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" -msgstr "Не удалось выполнить запрос на перезагрузку, проверьте подключение к сети" +msgstr "" +"Не удалось выполнить запрос на перезагрузку, проверьте подключение к сети" #: src/components/NginxControl/NginxControl.vue:77 msgid "Reloading" @@ -3893,22 +4375,56 @@ msgstr "Успешно удалено" msgid "Rename" msgstr "Переименовать" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "Не удалось переименовать %{orig_path} в %{new_path} на %{env_name}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "%{orig_path} успешно переименован в %{new_path} на %{env_name}" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Ошибка переименования удаленной конфигурации" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Переименование удаленной конфигурации прошло успешно" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Ошибка переименования удаленного сайта" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Успешное переименование удаленного сайта" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Ошибка переименования удаленного потока" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Удаленный поток успешно переименован" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Не удалось переименовать сайт %{name} в %{new_name} на %{node}" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "Сайт %{name} успешно переименован в %{new_name} на %{node}" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "Не удалось переименовать поток %{name} в %{new_name} на %{node}" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Поток %{name} успешно переименован в %{new_name} на %{node}" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Переименовано успешно" @@ -3990,6 +4506,22 @@ msgstr "Перезапуск" msgid "Restart Nginx" msgstr "Перезапустить Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Перезапуск Nginx на %{node} не удался, ответ: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Nginx на %{node} успешно перезапущен" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Ошибка перезапуска удаленного Nginx" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Удалённая перезагрузка Nginx успешно выполнена" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "Запрос на перезапуск не выполнен, проверьте подключение к сети" @@ -4201,14 +4733,40 @@ msgstr "Сохранить" msgid "Save Directive" msgstr "Сохранить директиву" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Ошибка сохранения удаленного сайта" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Удалённый сайт успешно сохранён" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Ошибка сохранения удаленного потока" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Удаленный поток успешно сохранен" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Не удалось сохранить сайт %{name} на %{node}" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Сайт %{name} успешно сохранён на %{node}" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Не удалось сохранить поток %{name} на %{node}" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Поток %{name} успешно сохранён на %{node}" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Сохранено успешно" @@ -4319,7 +4877,7 @@ msgstr "Выбрано {count} файлов" msgid "Selector" msgstr "Выбор" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Самопроверка" @@ -4379,7 +4937,8 @@ msgstr "Ошибка установки окружения: {0}" #: src/constants/errors/cert.ts:18 msgid "Set env flag to disable lego CNAME support error: {0}" -msgstr "Установка флага окружения для отключения поддержки CNAME в lego ошибка: {0}" +msgstr "" +"Установка флага окружения для отключения поддержки CNAME в lego ошибка: {0}" #: src/views/preference/tabs/CertSettings.vue:36 msgid "" @@ -4407,16 +4966,16 @@ msgstr "Настройка провайдера проверки HTTP01" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" "Settings.NginxLogSettings.AccessLogPath пуст, дополнительную информацию см. " "на https://nginxui.com/guide/config-nginx.html" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" "Settings.NginxLogSettings.ErrorLogPath пуст, дополнительную информацию см. " "на https://nginxui.com/guide/config-nginx.html" @@ -4461,6 +5020,10 @@ msgstr "Журналы сайта" msgid "Site not found" msgstr "Сайт не найден" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "Каталог сайтов существует" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Список сайтов" @@ -4499,7 +5062,8 @@ msgstr "Содержимое SSL-сертификата" #: src/constants/errors/system.ts:8 msgid "SSL certificate file must be under Nginx configuration directory: {0}" -msgstr "Файл SSL-сертификата должен находиться в каталоге конфигурации Nginx: {0}" +msgstr "" +"Файл SSL-сертификата должен находиться в каталоге конфигурации Nginx: {0}" #: src/constants/errors/system.ts:6 msgid "SSL certificate file not found" @@ -4590,6 +5154,14 @@ msgstr "Хранилище" msgid "Storage Configuration" msgstr "Конфигурация хранилища" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"Проверка конфигурации хранилища для задачи резервного копирования " +"%{backup_name} не удалась, ошибка: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4617,6 +5189,10 @@ msgstr "Поток включен" msgid "Stream not found" msgstr "Поток не найден" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Каталог потоков существует" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Каталог streams-available не существует" @@ -4644,29 +5220,17 @@ msgstr "Успех" msgid "Sunday" msgstr "Воскресенье" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Поддержка связи с бэкендом через протокол Server-Sent Events. Если ваш " -"Nginx UI используется через обратный прокси Nginx, обратитесь к этой " -"ссылке, чтобы написать соответствующий конфигурационный файл: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "Поддерживает связь с бэкендом через протокол WebSocket. Если ваш Nginx UI " "используется через обратный прокси Nginx, обратитесь к этой ссылке, чтобы " -"написать соответствующий конфигурационный файл: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"написать соответствующий конфигурационный файл: https://nginxui.com/guide/" +"nginx-proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4703,19 +5267,35 @@ msgstr "Синхронизация" msgid "Sync Certificate" msgstr "Синхронизировать сертификат" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "Не удалось синхронизировать сертификат %{cert_name} с %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "Сертификат %{cert_name} успешно синхронизирован с %{env_name}" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Ошибка синхронизации сертификата" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Сертификат успешно синхронизирован" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "Не удалось синхронизировать конфигурацию %{config_name} с %{env_name}" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "Конфигурация %{config_name} успешно синхронизирована с %{env_name}" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Ошибка синхронизации конфигурации" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Синхронизация конфигурации успешна" @@ -4832,11 +5412,10 @@ msgstr "Введенные данные не являются ключом SSL #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"Путь к журналу не находится под путями в " -"settings.NginxSettings.LogDirWhiteList" +"Путь к журналу не находится под путями в settings.NginxSettings." +"LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4848,7 +5427,8 @@ msgstr "" "двоеточия и точки." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "Модель, используемая для завершения кода. Если не задана, будет " "использоваться чат-модель." @@ -4896,8 +5476,8 @@ msgid "" "The server_name in the current configuration must be the domain name you " "need to get the certificate, supportmultiple domains." msgstr "" -"server_name в текущей конфигурации должен быть доменным именем, для " -"которого вам нужно получить сертификат, поддержка нескольких доменов." +"server_name в текущей конфигурации должен быть доменным именем, для которого " +"вам нужно получить сертификат, поддержка нескольких доменов." #: src/views/preference/tabs/CertSettings.vue:22 #: src/views/preference/tabs/HTTPSettings.vue:14 @@ -4927,8 +5507,8 @@ msgid "" "your password and second factors. If you cannot find these codes, you will " "lose access to your account." msgstr "" -"Эти коды являются последним средством для доступа к вашему аккаунту, если " -"вы потеряете пароль и вторые факторы. Если вы не сможете найти эти коды, вы " +"Эти коды являются последним средством для доступа к вашему аккаунту, если вы " +"потеряете пароль и вторые факторы. Если вы не сможете найти эти коды, вы " "потеряете доступ к своему аккаунту." #: src/views/certificate/components/AutoCertManagement.vue:45 @@ -4962,22 +5542,28 @@ msgid "This field should not be empty" msgstr "Это поле обязательно к заполнению" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "Это поле должно содержать только буквы, символы Юникода, цифры и -_." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "Это поле должно содержать только буквы, символы Unicode, цифры и -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" +"Это тестовое сообщение, отправленное по адресу %{timestamp} из nginx ui." + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " "After enabling it, you can view performance statistics" msgstr "" -"Этот модуль предоставляет статистику запросов Nginx, количество соединений " -"и другие данные. После включения вы сможете просматривать статистику " +"Этот модуль предоставляет статистику запросов Nginx, количество соединений и " +"другие данные. После включения вы сможете просматривать статистику " "производительности." #: src/views/preference/tabs/ExternalNotify.vue:15 @@ -4994,18 +5580,18 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Этот сайт настроен как сервер по умолчанию (default_server) для HTTPS (порт " -"443). IP-сертификаты требуют поддержки Центра сертификации (CA) и могут " -"быть недоступны у всех провайдеров ACME." +"443). IP-сертификаты требуют поддержки Центра сертификации (CA) и могут быть " +"недоступны у всех провайдеров ACME." #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Этот сайт использует подстановочное имя сервера (_), которое обычно " @@ -5017,8 +5603,8 @@ msgid "" "This token will only be shown once and cannot be retrieved later. Please " "make sure to save it in a secure location." msgstr "" -"Этот токен будет показан только один раз и не может быть восстановлен " -"позже. Пожалуйста, сохраните его в надежном месте." +"Этот токен будет показан только один раз и не может быть восстановлен позже. " +"Пожалуйста, сохраните его в надежном месте." #: src/constants/form_errors.ts:4 src/language/curd.ts:44 msgid "This value is already taken" @@ -5034,8 +5620,8 @@ msgid "" "This will restore all Nginx configuration files. Nginx will restart after " "the restoration is complete." msgstr "" -"Это восстановит все конфигурационные файлы Nginx. Nginx перезапустится " -"после завершения восстановления." +"Это восстановит все конфигурационные файлы Nginx. Nginx перезапустится после " +"завершения восстановления." #: src/components/SystemRestore/SystemRestoreContent.vue:238 #: src/components/SystemRestore/SystemRestoreContent.vue:315 @@ -5047,7 +5633,8 @@ msgstr "" "после завершения восстановления." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" "Это обновит или переустановит интерфейс Nginx на %{nodeNames} до версии " "%{version}." @@ -5097,15 +5684,15 @@ msgid "" "and restart Nginx UI." msgstr "" "Для обеспечения безопасности конфигурацию WebAuthn нельзя добавить через " -"интерфейс. Пожалуйста, вручную настройте следующее в файле конфигурации " -"app.ini и перезапустите Nginx UI." +"интерфейс. Пожалуйста, вручную настройте следующее в файле конфигурации app." +"ini и перезапустите Nginx UI." #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" "Чтобы убедиться, что автоматическое обновление сертификата может работать " @@ -5119,9 +5706,9 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"Чтобы использовать локальную большую модель, разверните её с помощью " -"ollama, vllm или lmdeploy. Они предоставляют API-эндпоинт, совместимый с " -"OpenAI, поэтому просто установите baseUrl на ваш локальный API." +"Чтобы использовать локальную большую модель, разверните её с помощью ollama, " +"vllm или lmdeploy. Они предоставляют API-эндпоинт, совместимый с OpenAI, " +"поэтому просто установите baseUrl на ваш локальный API." #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5418,10 +6005,10 @@ msgid "" "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." msgstr "" -"Предупреждение: Похоже, это частный IP-адрес. Публичные центры " -"сертификации, такие как Let's Encrypt, не могут выдавать сертификаты для " -"частных IP. Используйте публичный IP-адрес или рассмотрите возможность " -"использования частного центра сертификации." +"Предупреждение: Похоже, это частный IP-адрес. Публичные центры сертификации, " +"такие как Let's Encrypt, не могут выдавать сертификаты для частных IP. " +"Используйте публичный IP-адрес или рассмотрите возможность использования " +"частного центра сертификации." #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5433,11 +6020,11 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" -"Мы удалим конфигурацию HTTPChallenge из этого файла и перезагрузим Nginx. " -"Вы уверены, что хотите продолжить?" +"Мы удалим конфигурацию HTTPChallenge из этого файла и перезагрузим Nginx. Вы " +"уверены, что хотите продолжить?" #: src/views/preference/tabs/AuthSettings.vue:65 msgid "Webauthn" @@ -5474,8 +6061,8 @@ msgid "" "Pebble as CA." msgstr "" "При включении Nginx UI будет автоматически перерегистрировать пользователей " -"при запуске. Обычно не включайте эту функцию, если только вы не находитесь " -"в среде разработки и используете Pebble в качестве CA." +"при запуске. Обычно не включайте эту функцию, если только вы не находитесь в " +"среде разработки и используете Pebble в качестве CA." #: src/views/site/site_edit/components/RightPanel/Basic.vue:62 #: src/views/stream/components/RightPanel/Basic.vue:57 @@ -5483,8 +6070,8 @@ msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." msgstr "" -"При включении/отключении, удалении или сохранении этого сайта узлы, " -"заданные в Группе узлов, и узлы, выбранные ниже, будут синхронизированы." +"При включении/отключении, удалении или сохранении этого сайта узлы, заданные " +"в Группе узлов, и узлы, выбранные ниже, будут синхронизированы." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" @@ -5554,8 +6141,8 @@ msgstr "Да" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" "Вы обращаетесь к этому терминалу через небезопасное HTTP-соединение в " "домене, отличном от localhost. Это может раскрыть конфиденциальную " @@ -5585,10 +6172,12 @@ msgstr "Теперь вы можете закрыть это диалогово msgid "" "You have not configured the settings of Webauthn, so you cannot add a " "passkey." -msgstr "Вы не настроили параметры WebAuthn, поэтому не можете добавить ключ доступа." +msgstr "" +"Вы не настроили параметры WebAuthn, поэтому не можете добавить ключ доступа." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "Вы еще не включили двухфакторную аутентификацию. Пожалуйста, включите её, " "чтобы сгенерировать коды восстановления." @@ -5615,453 +6204,16 @@ msgstr "Ваши старые коды больше не будут работа msgid "Your passkeys" msgstr "Ваши ключи доступа" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] Пользователь ACME: %{name}, Email: %{email}, Каталог CA: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "" -#~ "[Nginx UI] Резервное копирование текущего сертификата для последующего " -#~ "отзыва" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Сертификат успешно обновлен" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Сертификат успешно отозван" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] Сертификат использовался для сервера, перезагрузка " -#~ "TLS-сертификата сервера" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] Создание клиента для облегчения связи с сервером CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Переменные окружения очищены" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Завершено" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Сертификат успешно выдан" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Получение сертификата" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Подготовка к отзыву сертификата" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Подготовка конфигураций lego" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Перезагрузка nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Отзыв завершен" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Отзыв сертификата" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Отзыв старого сертификата" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] Настройка провайдера проверки DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Установка переменных окружения" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] Настройка провайдера HTTP01-проверки" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Запись закрытого ключа сертификата на диск" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Запись сертификата на диск" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Автоматическое резервное копирование завершено" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Ошибка конфигурации автоматического резервного копирования" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Автоматическое резервное копирование не удалось" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Сбой хранения автоматической резервной копии" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "" -#~ "Задача резервного копирования %{backup_name} успешно завершена, файл: " -#~ "%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "Задача резервного копирования %{backup_name} не выполнена при загрузке в " -#~ "хранилище, ошибка: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "" -#~ "Не удалось выполнить задание резервного копирования %{backup_name}, ошибка: " -#~ "%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "Срок действия сертификата %{name} истёк" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "Сертификат %{name} истечет через %{days} дней" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "Сертификат %{name} истечет через 1 день" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Уведомление об истечении срока действия сертификата" - -#~ msgid "Certificate Expired" -#~ msgstr "Сертификат истёк" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Сертификат скоро истекает" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Сертификат не найден: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Сертификат успешно отозван" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Проверьте, существует ли /var/run/docker.sock. Если вы используете " -#~ "официальный образ Docker Nginx UI, убедитесь, что сокет Docker смонтирован " -#~ "следующим образом: `-v /var/run/docker.sock:/var/run/docker.sock`. " -#~ "Официальный образ Nginx UI использует /var/run/docker.sock для связи с " -#~ "Docker Engine хоста через API Docker Client. Эта функция используется для " -#~ "управления Nginx в другом контейнере и выполнения замены контейнера вместо " -#~ "замены бинарного файла во время OTA-обновлений Nginx UI, чтобы " -#~ "гарантировать, что зависимости контейнера также обновляются. Если вам не " -#~ "нужна эта функция, добавьте переменную окружения " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true в контейнер." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Проверьте, существует ли путь к журналу доступа nginx. По умолчанию этот " -#~ "путь получается из 'nginx -V'. Если его невозможно получить или полученный " -#~ "путь не указывает на действительный существующий файл, будет сообщена " -#~ "ошибка. В этом случае вам необходимо изменить файл конфигурации, чтобы " -#~ "указать путь к журналу доступа. Подробнее см. в документации: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Проверить, существует ли каталог конфигурации nginx" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Проверить, существует ли файл конфигурации nginx" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Проверьте, существует ли путь к журналу ошибок nginx. По умолчанию этот " -#~ "путь получается из 'nginx -V'. Если его невозможно получить или полученный " -#~ "путь не указывает на действительный существующий файл, будет сообщена " -#~ "ошибка. В этом случае вам нужно изменить файл конфигурации, чтобы указать " -#~ "путь к журналу ошибок. Подробнее см. в документации: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Проверьте, существует ли путь к PID Nginx. По умолчанию этот путь " -#~ "получается из команды 'nginx -V'. Если его не удается получить, будет " -#~ "сообщена ошибка. В этом случае вам нужно изменить конфигурационный файл, " -#~ "чтобы указать путь к PID Nginx. Подробнее см. в документации: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Проверьте, существует ли путь к sbin nginx" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Проверить, включает ли файл nginx.conf директорию conf.d" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Проверить, включает ли nginx.conf каталог sites-enabled" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Проверить, включает ли nginx.conf каталог streams-enabled" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Проверьте, находятся ли каталоги sites-available и sites-enabled в каталоге " -#~ "конфигурации nginx" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Проверьте, находятся ли каталоги streams-available и streams-enabled в " -#~ "каталоге конфигурации nginx" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Не удалось удалить %{path} на %{env_name}" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{path} на %{env_name} успешно удалён" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Ошибка удаления удаленной конфигурации" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Удаление удаленной конфигурации успешно" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Ошибка удаления удаленного потока" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Удаление удаленного потока успешно" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Не удалось удалить сайт %{name} с %{node}" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Сайт %{name} успешно удалён с %{node}" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Не удалось удалить поток %{name} с %{node}" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "Поток %{name} успешно удален с %{node}" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Ошибка отключения обслуживания удаленного сайта" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Успешное отключение обслуживания удаленного сайта" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Ошибка отключения удаленного потока" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Удаленный поток успешно отключен" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Не удалось отключить сайт %{name} с %{node}" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Сайт %{name} успешно отключен на %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Не удалось отключить обслуживание сайта %{name} на %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Обслуживание сайта %{name} на %{node} успешно отключено" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Не удалось отключить поток %{name} с узла %{node}" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Поток %{name} отключен от %{node} успешно" - -#~ msgid "Docker socket exists" -#~ msgstr "Сокет Docker существует" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Ошибка включения обслуживания удаленного сайта" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Успешное включение обслуживания удаленного сайта" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Ошибка включения удаленного потока" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Успешное включение удаленного потока" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "Не удалось включить обслуживание сайта %{name} на %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Техническое обслуживание сайта %{name} на %{node} успешно включено" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "Не удалось включить сайт %{name} на %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Сайт %{name} успешно включён на %{node}" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "Не удалось включить поток %{name} на %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Поток %{name} успешно включён на %{node}" - -#~ msgid "External Notification Test" -#~ msgstr "Тест внешнего уведомления" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Не удалось удалить сертификат из базы данных: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Не удалось отозвать сертификат: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "Файл журнала %{log_path} не является обычным файлом. Если вы используете " -#~ "nginx-ui в контейнере Docker, обратитесь к " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html для получения " -#~ "дополнительной информации." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Путь к журналу доступа Nginx существует" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Каталог конфигурации Nginx существует" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Файл конфигурации Nginx существует" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Путь к журналу ошибок Nginx существует" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Путь PID Nginx существует" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Путь sbin для Nginx существует" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf включает каталог conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf включает каталог sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf включает каталог streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Перезагрузка Nginx на %{node} не удалась, ответ: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Nginx на %{node} успешно перезагружен" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Ошибка перезагрузки удаленного Nginx" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Удаленная перезагрузка Nginx успешно выполнена" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Не удалось переименовать %{orig_path} в %{new_path} на %{env_name}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "%{orig_path} успешно переименован в %{new_path} на %{env_name}" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Ошибка переименования удаленного потока" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Удаленный поток успешно переименован" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Не удалось переименовать сайт %{name} в %{new_name} на %{node}" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Сайт %{name} успешно переименован в %{new_name} на %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Не удалось переименовать поток %{name} в %{new_name} на %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Поток %{name} успешно переименован в %{new_name} на %{node}" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Перезапуск Nginx на %{node} не удался, ответ: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Nginx на %{node} успешно перезапущен" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Ошибка перезапуска удаленного Nginx" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Удалённая перезагрузка Nginx успешно выполнена" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Ошибка сохранения удаленного потока" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Удаленный поток успешно сохранен" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Не удалось сохранить сайт %{name} на %{node}" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Сайт %{name} успешно сохранён на %{node}" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Не удалось сохранить поток %{name} на %{node}" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Поток %{name} успешно сохранён на %{node}" - -#~ msgid "Sites directory exists" -#~ msgstr "Каталог сайтов существует" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "Проверка конфигурации хранилища для задачи резервного копирования " -#~ "%{backup_name} не удалась, ошибка: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Каталог потоков существует" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Не удалось синхронизировать сертификат %{cert_name} с %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Сертификат %{cert_name} успешно синхронизирован с %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "Не удалось синхронизировать конфигурацию %{config_name} с %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Конфигурация %{config_name} успешно синхронизирована с %{env_name}" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "Это тестовое сообщение, отправленное по адресу %{timestamp} из nginx ui." +#~ "Поддержка связи с бэкендом через протокол Server-Sent Events. Если ваш " +#~ "Nginx UI используется через обратный прокси Nginx, обратитесь к этой " +#~ "ссылке, чтобы написать соответствующий конфигурационный файл: https://" +#~ "nginxui.com/guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Если оставить пустым, будет использоваться каталог CA по умолчанию." @@ -6150,8 +6302,8 @@ msgstr "Ваши ключи доступа" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" #~ "Проверьте, существует ли /var/run/docker.sock. Если вы используете " #~ "официальный образ Docker Nginx UI, убедитесь, что сокет Docker подключен " @@ -6190,7 +6342,8 @@ msgstr "Ваши ключи доступа" #~ msgstr "Ошибка формата %{msg}" #~ msgid "Failed to save, syntax error(s) was detected in the configuration." -#~ msgstr "Не удалось сохранить, обнаружены синтаксические ошибки в конфигурации." +#~ msgstr "" +#~ "Не удалось сохранить, обнаружены синтаксические ошибки в конфигурации." #, fuzzy #~ msgid "Access Token" @@ -6253,13 +6406,16 @@ msgstr "Ваши ключи доступа" #~ "Синхронизация конфигурации %{cert_name} с %{env_name} не удалась, " #~ "пожалуйста, обновите удаленный Nginx UI до последней версии" -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" -#~ msgstr "" -#~ "Переименование %{orig_path} в %{new_path} на %{env_name} не удалось, ответ: " +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " #~ "%{resp}" +#~ msgstr "" +#~ "Переименование %{orig_path} в %{new_path} на %{env_name} не удалось, " +#~ "ответ: %{resp}" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "Переименование %{orig_path} в %{new_path} на %{env_name} успешно" #, fuzzy @@ -6275,19 +6431,20 @@ msgstr "Ваши ключи доступа" #~ "Синхронизация сертификата %{cert_name} с %{env_name} не удалась, " #~ "пожалуйста, обновите удаленный интерфейс Nginx до последней версии" -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "" #~ "Синхронизация сертификата %{cert_name} с %{env_name} не удалась, ответ: " #~ "%{resp}" #~ msgid "Sync config %{config_name} to %{env_name} failed, response: %{resp}" #~ msgstr "" -#~ "Синхронизация конфигурации %{config_name} с %{env_name} не удалась, ответ: " -#~ "%{resp}" +#~ "Синхронизация конфигурации %{config_name} с %{env_name} не удалась, " +#~ "ответ: %{resp}" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "" #~ "Если вы потеряете свой мобильный телефон, вы можете использовать код " #~ "восстановления для сброса 2FA." @@ -6298,10 +6455,11 @@ msgstr "Ваши ключи доступа" #~ msgid "Recovery Code:" #~ msgstr "Код восстановления:" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "" -#~ "Код восстановления отображается только один раз, пожалуйста, сохраните его " -#~ "в безопасном месте." +#~ "Код восстановления отображается только один раз, пожалуйста, сохраните " +#~ "его в безопасном месте." #~ msgid "Too many login failed attempts, please try again later" #~ msgstr "Слишком много неудачных попыток входа, попробуйте позже" diff --git a/app/src/language/tr_TR/app.po b/app/src/language/tr_TR/app.po index 1a0d072e..01b71d5c 100644 --- a/app/src/language/tr_TR/app.po +++ b/app/src/language/tr_TR/app.po @@ -5,18 +5,109 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2025-04-08 18:26+0000\n" "Last-Translator: Ulaş \n" -"Language-Team: Turkish " -"\n" +"Language-Team: Turkish \n" "Language: tr_TR\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 5.10.4\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] ACME Kullanıcısı: %{name}, E-posta: %{email}, CA Dizini: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" +"[Nginx UI] Geçerli sertifika daha sonra iptal edilmek üzere yedekleniyor" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Sertifika başarıyla yenilendi" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Sertifika başarıyla iptal edildi" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] Sertifika sunucu için kullanıldı, sunucu TLS sertifikası yeniden " +"yükleniyor" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "" +"[Nginx UI] CA sunucusu ile iletişimi kolaylaştırmak için istemci oluşturma" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Ortam değişkenleri temizlendi" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Tamamlandı" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Sertifika başarıyla verildi" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Sertifika alınıyor" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Sertifika iptali için hazırlanıyor" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Lego yapılandırmaları hazırlanıyor" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Nginx yeniden yükleniyor" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] İptal tamamlandı" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Sertifika iptal ediliyor" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Eski sertifika iptal ediliyor" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] DNS01 meydan okuma sağlayıcısı ayarlanıyor" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Ortam değişkenleri ayarlanıyor" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] HTTP01 meydan okuma sağlayıcısı ayarlanıyor" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Sertifika özel anahtarı diske yazılıyor" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Sertifika diske yazılıyor" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" -msgstr "* %{groupName} grubundan düğümler ve manuel olarak seçilen düğümler içerir" +msgstr "" +"* %{groupName} grubundan düğümler ve manuel olarak seçilen düğümler içerir" #: src/views/user/userColumns.tsx:30 msgid "2FA" @@ -139,12 +230,14 @@ msgstr "Gelişmiş Mod" #: src/views/preference/components/AuthSettings/AddPasskey.vue:104 msgid "Afterwards, refresh this page and click add passkey again." -msgstr "Daha sonra bu sayfayı yenileyin ve tekrar parola anahtarı ekle'ye tıklayın." +msgstr "" +"Daha sonra bu sayfayı yenileyin ve tekrar parola anahtarı ekle'ye tıklayın." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:83 msgid "All" msgstr "Tümü" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Tüm Kurtarma Kodları Kullanıldı" @@ -158,7 +251,8 @@ msgstr "" "takdirde sertifika başvurusu başarısız olur." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Herhangi bir erişilebilir IP adresi, özel Sertifika Yetkilileri ile " "kullanılabilir" @@ -261,7 +355,7 @@ msgstr "ChatGPT'den Yardım İsteyin" msgid "Assistant" msgstr "Asistan" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Düzeltmeyi dene" @@ -300,6 +394,22 @@ msgstr "Auto = CPU Çekirdekleri" msgid "Auto Backup" msgstr "Otomatik Yedekleme" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Otomatik Yedekleme Tamamlandı" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Otomatik Yedekleme Yapılandırma Hatası" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Otomatik Yedekleme Başarısız" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Otomatik Yedekleme Depolama Başarısız" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -361,7 +471,8 @@ msgstr "Yedekleme" #: src/components/SystemRestore/SystemRestoreContent.vue:155 msgid "Backup file integrity check failed, it may have been tampered with" -msgstr "Yedek dosya bütünlük kontrolü başarısız oldu, dosya değiştirilmiş olabilir" +msgstr "" +"Yedek dosya bütünlük kontrolü başarısız oldu, dosya değiştirilmiş olabilir" #: src/constants/errors/backup.ts:41 msgid "Backup file not found: {0}" @@ -395,6 +506,22 @@ msgstr "Yedekleme yolu, verilen erişim yollarında değil: {0}" msgid "Backup Schedule" msgstr "Yedekleme Zamanlaması" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Yedekleme görevi %{backup_name} başarıyla tamamlandı, dosya: %{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"Yedekleme görevi %{backup_name} depolama yüklemesi sırasında başarısız oldu, " +"hata: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "Yedekleme görevi %{backup_name} çalıştırılamadı, hata: %{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Yedekleme Türü" @@ -448,7 +575,8 @@ msgstr "Toplu Yükseltme" #: src/language/curd.ts:38 msgid "Belows are selected items that you want to batch modify" -msgstr "Aşağıda toplu olarak değiştirmek istediğiniz seçili öğeler bulunmaktadır" +msgstr "" +"Aşağıda toplu olarak değiştirmek istediğiniz seçili öğeler bulunmaktadır" #: src/constants/errors/nginx.ts:3 msgid "Block is nil" @@ -567,6 +695,20 @@ msgstr "Sertifika yolu nginx conf dizini altında değil" msgid "certificate" msgstr "sertifika" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "%{name} sertifikasının süresi doldu" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "Sertifika %{name}, %{days} gün sonra sona erecek" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "%{name} sertifikasının süresi 1 gün sonra dolacak" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "Sertifika içeriği ve özel anahtar içeriği boş olamaz" @@ -575,6 +717,20 @@ msgstr "Sertifika içeriği ve özel anahtar içeriği boş olamaz" msgid "Certificate decode error" msgstr "Sertifika çözme hatası" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Sertifika Son Kullanma Bildirimi" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Sertifikanın süresi doldu" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Sertifika Yakında Sona Eriyor" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Sertifika dosyaları başarıyla indirildi" @@ -583,6 +739,10 @@ msgstr "Sertifika dosyaları başarıyla indirildi" msgid "Certificate name cannot be empty" msgstr "Sertifika adı boş olamaz" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Sertifika bulunamadı: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Sertifika ayrıştırma hatası" @@ -604,6 +764,10 @@ msgstr "Sertifika Yenileme Aralığı" msgid "Certificate renewed successfully" msgstr "Sertifika başarıyla yenilendi" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Sertifika başarıyla iptal edildi" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -671,6 +835,29 @@ msgstr "Kontrol et" msgid "Check again" msgstr "Tekrar kontrol et" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"/var/run/docker.sock dosyasının var olup olmadığını kontrol edin. Nginx UI " +"Resmi Docker Image'ını kullanıyorsanız, docker soketinin şu şekilde " +"bağlandığından emin olun: `-v /var/run/docker.sock:/var/run/docker.sock`. " +"Nginx UI resmi imajı, Docker Client API üzerinden ana bilgisayarın Docker " +"Engine'i ile iletişim kurmak için /var/run/docker.sock kullanır. Bu özellik, " +"Nginx UI'nin OTA güncellemeleri sırasında ikili dosya değişimi yerine " +"konteyner değişimi yaparak Nginx'i başka bir konteynerde kontrol etmek ve " +"konteyner bağımlılıklarının da güncellenmesini sağlamak için kullanılır. Bu " +"özelliğe ihtiyacınız yoksa, konteynere NGINX_UI_IGNORE_DOCKER_SOCKET=true " +"ortam değişkenini ekleyin." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -680,6 +867,95 @@ msgstr "" "kullanmak güvensizdir ve Passkeys ile panosu özelliklerinin kullanılmasını " "engeller" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Nginx erişim günlüğü yolunun var olup olmadığını kontrol edin. Varsayılan " +"olarak bu yol 'nginx -V' komutu ile alınır. Eğer alınamazsa veya alınan yol " +"geçerli, mevcut bir dosyayı işaret etmiyorsa bir hata bildirilecektir. Bu " +"durumda, erişim günlüğü yolunu belirtmek için yapılandırma dosyasını " +"değiştirmeniz gerekmektedir. Daha fazla bilgi için belgelere bakın: https://" +"nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Nginx yapılandırma dizininin var olup olmadığını kontrol edin" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Nginx yapılandırma giriş dosyasının var olup olmadığını kontrol edin" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Nginx hata günlüğü yolunun var olup olmadığını kontrol edin. Varsayılan " +"olarak bu yol 'nginx -V' komutuyla alınır. Eğer alınamazsa veya alınan yol " +"geçerli, mevcut bir dosyayı işaret etmiyorsa bir hata bildirilir. Bu " +"durumda, yapılandırma dosyasını değiştirerek hata günlüğü yolunu belirtmeniz " +"gerekir. Daha fazla ayrıntı için belgelere bakın: https://nginxui.com/zh_CN/" +"guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Nginx PID yolunun var olup olmadığını kontrol edin. Varsayılan olarak bu yol " +"'nginx -V' komutuyla alınır. Alınamazsa bir hata bildirilir. Bu durumda, " +"yapılandırma dosyasını değiştirerek Nginx PID yolunu belirtmeniz gerekir. " +"Daha fazla ayrıntı için belgelere bakın: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "nginx sbin yolu var mı diye kontrol edin" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "nginx.conf dosyasının conf.d dizinini içerip içermediğini kontrol edin" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "" +"nginx.conf dosyasının sites-enabled dizinini içerip içermediğini kontrol edin" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "" +"nginx.conf dosyasının streams-enabled dizinini içerip içermediğini kontrol " +"edin" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"sites-available ve sites-enabled dizinlerinin nginx yapılandırma dizini " +"altında olup olmadığını kontrol edin" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"streams-available ve streams-enabled dizinlerinin nginx yapılandırma dizini " +"altında olup olmadığını kontrol edin" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "Şifreli metin çok kısa" @@ -898,8 +1174,7 @@ msgstr "CPU Kullanımı" #: src/views/dashboard/components/ResourceUsageCard.vue:38 msgid "CPU usage is relatively high, consider optimizing Nginx configuration" msgstr "" -"CPU kullanımı nispeten yüksek, Nginx yapılandırmasını optimize etmeyi " -"düşünün" +"CPU kullanımı nispeten yüksek, Nginx yapılandırmasını optimize etmeyi düşünün" #: src/views/dashboard/ServerAnalytic.vue:199 msgid "CPU:" @@ -1062,6 +1337,14 @@ msgstr "" msgid "Delete" msgstr "Sil" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "%{env_name} üzerinde %{path} silme işlemi başarısız oldu" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{env_name} üzerindeki %{path} başarıyla silindi" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Sertifikayı Sil" @@ -1074,18 +1357,51 @@ msgstr "Silme Onayı" msgid "Delete Permanently" msgstr "Kalıcı Olarak Sil" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Uzak Yapılandırma Silme Hatası" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Uzak Yapılandırma Başarıyla Silindi" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Uzak Site Silme Hatası" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Uzak Site Başarıyla Silindi" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Uzak Akış Silme Hatası" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Uzak Akış Başarıyla Silindi" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "%{node} üzerindeki %{name} sitesi silinemedi" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "%{node} üzerindeki %{name} sitesi başarıyla silindi" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Siteyi sil: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "%{node} üzerindeki %{name} akışı silinemedi" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "%{name} akışı %{node} üzerinden başarıyla silindi" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Akışı sil: %{stream_name}" @@ -1172,14 +1488,58 @@ msgstr "Devre dışı bırak" msgid "Disable auto-renewal failed for %{name}" msgstr "%{name} için otomatik yenileme devre dışı bırakılamadı" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Uzak Site Devre Dışı Bırakma Hatası" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Uzak Site Bakımını Devre Dışı Bırakma Hatası" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Uzak Site Bakımı Başarıyla Devre Dışı Bırakıldı" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Uzak Site Başarıyla Devre Dışı Bırakıldı" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Uzak Akış Devre Dışı Bırakma Hatası" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Uzak Akış Devre Dışı Bırakma Başarılı" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "%{node} üzerindeki %{name} sitesi devre dışı bırakılamadı" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "%{node} üzerindeki %{name} sitesi başarıyla devre dışı bırakıldı" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "" +"%{node} üzerindeki %{name} sitesi bakımını devre dışı bırakma başarısız oldu" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "" +"%{name} sitesinin bakımı %{node} üzerinde başarıyla devre dışı bırakıldı" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "%{node} üzerindeki %{name} akışı devre dışı bırakılamadı" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Akış %{name}, %{node} üzerinden başarıyla devre dışı bırakıldı" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1250,6 +1610,10 @@ msgstr "Bu upstream'i kaldırmak istiyor musunuz?" msgid "Docker client not initialized" msgstr "Docker istemcisi başlatılmadı" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Docker soketi mevcut" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Docker soketi mevcut değil" @@ -1401,14 +1765,56 @@ msgstr "HTTPS'yi Etkinleştir" msgid "Enable Proxy Cache" msgstr "Proxy Önbelleğini Etkinleştir" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Uzak Site Etkinleştirme Hatası" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Uzak Site Bakımını Etkinleştirme Hatası" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Uzak Site Bakımını Etkinleştirme Başarılı" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Uzak Site Başarıyla Etkinleştirildi" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Uzaktan Akış Etkinleştirme Hatası" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Uzaktan Akış Başarıyla Etkinleştirildi" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "%{node} üzerinde %{name} sitesi bakımını etkinleştirme başarısız oldu" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "%{node} üzerinde %{name} sitesi bakımı başarıyla etkinleştirildi" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "%{node} üzerinde %{name} sitesi etkinleştirilemedi" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "%{node} üzerinde %{name} sitesi başarıyla etkinleştirildi" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "%{node} üzerinde %{name} akışı etkinleştirilemedi" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "%{node} üzerinde %{name} akışı başarıyla etkinleştirildi" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "stub_status modülünü etkinleştir" @@ -1451,8 +1857,7 @@ msgstr "Çoklama ve sunucu itme özellikleri ile HTTP/2 desteğini etkinleştiri #: src/views/preference/tabs/ServerSettings.vue:56 msgid "Enables HTTP/3 support based on QUIC protocol for best performance" msgstr "" -"En iyi performans için QUIC protokolüne dayalı HTTP/3 desteğini " -"etkinleştirir" +"En iyi performans için QUIC protokolüne dayalı HTTP/3 desteğini etkinleştirir" #: src/views/site/site_edit/components/Cert/IssueCert.vue:76 msgid "Encrypt website with Let's Encrypt" @@ -1553,8 +1958,8 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "Harici Hesap Bağlama Anahtar Kimliği (isteğe bağlı). ZeroSSL gibi bazı ACME " "sağlayıcıları için gereklidir." @@ -1567,6 +1972,10 @@ msgstr "Harici Docker Konteyneri" msgid "External notification configuration not found" msgstr "Harici bildirim yapılandırması bulunamadı" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Harici Bildirim Testi" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1721,6 +2130,10 @@ msgstr "Nginx UI dizininin şifresi çözülemedi: {0}" msgid "Failed to delete certificate" msgstr "Sertifika silinemedi" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Sertifika veritabanından silinemedi: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1887,6 +2300,10 @@ msgstr "Nginx UI dosyaları geri yüklenemedi: {0}" msgid "Failed to revoke certificate" msgstr "Sertifika iptal edilemedi" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Sertifika iptal edilemedi: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Nginx performans ayarları kaydedilemedi" @@ -2011,8 +2428,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "IP tabanlı sertifikalar için, sertifikaya dahil edilecek sunucu IP adresini " "belirtiniz." @@ -2113,7 +2530,8 @@ msgstr "Gizle" #: src/views/dashboard/components/PerformanceStatisticsCard.vue:87 msgid "Higher value means better connection reuse" -msgstr "Daha yüksek bir değer, daha iyi bağlantı yeniden kullanımı anlamına gelir" +msgstr "" +"Daha yüksek bir değer, daha iyi bağlantı yeniden kullanımı anlamına gelir" #: src/views/config/components/ConfigLeftPanel.vue:254 #: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:87 @@ -2542,6 +2960,16 @@ msgstr "Konumlar" msgid "Log" msgstr "Günlük" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"Günlük dosyası %{log_path} normal bir dosya değil. Docker konteynerinde " +"nginx-ui kullanıyorsanız, daha fazla bilgi için https://nginxui.com/zh_CN/" +"guide/config-nginx-log.html adresine bakın." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Günlük Listesi" @@ -2564,19 +2992,19 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" -"Logrotate, varsayılan olarak, Nginx UI'yi ana makineye yükleyen " -"kullanıcılar için çoğu ana akım Linux dağıtımında etkinleştirilmiştir, bu " -"yüzden bu sayfadaki parametreleri değiştirmenize gerek yoktur. Nginx UI'yi " -"Docker konteynerlerini kullanarak yükleyen kullanıcılar, bu seçeneği manuel " -"olarak etkinleştirebilir. Nginx UI'nin crontab görev zamanlayıcısı, " -"belirlediğiniz dakika aralığında logrotate komutunu çalıştıracaktır." +"Logrotate, varsayılan olarak, Nginx UI'yi ana makineye yükleyen kullanıcılar " +"için çoğu ana akım Linux dağıtımında etkinleştirilmiştir, bu yüzden bu " +"sayfadaki parametreleri değiştirmenize gerek yoktur. Nginx UI'yi Docker " +"konteynerlerini kullanarak yükleyen kullanıcılar, bu seçeneği manuel olarak " +"etkinleştirebilir. Nginx UI'nin crontab görev zamanlayıcısı, belirlediğiniz " +"dakika aralığında logrotate komutunu çalıştıracaktır." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2887,6 +3315,10 @@ msgstr "Nginx -T çıktısı boş" msgid "Nginx Access Log Path" msgstr "Nginx Erişim Günlüğü Yolu" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Nginx erişim günlüğü yolu mevcut" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2916,6 +3348,14 @@ msgstr "Nginx yapılandırması stream-enabled içermiyor" msgid "Nginx config directory is not set" msgstr "Nginx yapılandırma dizini ayarlanmamış" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Nginx yapılandırma dizini mevcut" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Nginx yapılandırma giriş dosyası mevcut" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Nginx yapılandırması geri yüklendi" @@ -2950,6 +3390,10 @@ msgstr "Nginx CPU kullanım oranı" msgid "Nginx Error Log Path" msgstr "Nginx Hata Günlüğü Yolu" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Nginx hata günlüğü yolu mevcut" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Nginx hatası: {0}" @@ -2987,6 +3431,10 @@ msgstr "Nginx Bellek Kullanımı" msgid "Nginx PID Path" msgstr "Nginx PID Yolu" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Nginx PID yolu mevcut" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Nginx Yeniden Yükleme Komutu" @@ -3016,6 +3464,10 @@ msgstr "Nginx yeniden başlatma işlemleri uzak düğümlere gönderildi" msgid "Nginx restarted successfully" msgstr "Nginx başarıyla yeniden başlatıldı" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Nginx sbin yolu mevcut" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Nginx Yapılandırma Test Komutu" @@ -3039,12 +3491,24 @@ msgstr "Nginx UI yapılandırması geri yüklendi" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" "Nginx UI yapılandırması geri yüklendi ve birkaç saniye içinde otomatik " "olarak yeniden başlatılacak." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf, conf.d dizinini içerir" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf, sites-enabled dizinini içerir" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf, streams-enabled dizinini içerir" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3461,8 +3925,8 @@ msgid "" "Please enter a name for the passkey you wish to create and click the OK " "button below." msgstr "" -"Oluşturmak istediğiniz anahtar için bir ad girin ve aşağıdaki Tamam " -"butonuna tıklayın." +"Oluşturmak istediğiniz anahtar için bir ad girin ve aşağıdaki Tamam butonuna " +"tıklayın." #: src/components/AutoCertForm/AutoCertForm.vue:98 msgid "Please enter a valid IPv4 address (0-255 per octet)" @@ -3509,7 +3973,8 @@ msgstr "Lütfen gerekli S3 yapılandırma alanlarını doldurun" msgid "" "Please fill in the API authentication credentials provided by your DNS " "provider." -msgstr "Lütfen DNS sağlayıcınız tarafından sağlanan API kimlik bilgilerini doldurun." +msgstr "" +"Lütfen DNS sağlayıcınız tarafından sağlanan API kimlik bilgilerini doldurun." #: src/components/AutoCertForm/AutoCertForm.vue:168 msgid "" @@ -3520,13 +3985,13 @@ msgstr "" "bilgilerini ekleyin, ardından DNS sağlayıcısının API'sini talep etmek için " "aşağıdaki kimlik bilgilerinden birini seçin." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" -"Kilitlenmeyi önlemek için tercihlerden hemen yeni kurtarma kodları " -"oluşturun." +"Kilitlenmeyi önlemek için tercihlerden hemen yeni kurtarma kodları oluşturun." #: src/views/config/components/ConfigRightPanel/Basic.vue:27 #: src/views/config/components/Rename.vue:65 @@ -3571,7 +4036,8 @@ msgid "Please log in." msgstr "Lütfen giriş yapın." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "" "Lütfen aşağıdaki zaman yapılandırmalarının birimlerinin saniye cinsinden " "olduğunu unutmayın." @@ -3705,8 +4171,7 @@ msgstr "Korumalı Dizin" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "Protokol yapılandırması yalnızca doğrudan bağlantı sırasında geçerlidir. " "Ters proxy kullanıyorsanız, protokolü ters proxyda ayrı olarak yapılandırın." @@ -3758,7 +4223,7 @@ msgstr "Okumalar" msgid "Receive" msgstr "Al" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Yeniden kontrol et" @@ -3846,9 +4311,26 @@ msgstr "Nginx'i Yeniden Yükle" msgid "Reload nginx failed: {0}" msgstr "nginx yeniden yükleme başarısız: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "%{node} üzerinde Nginx yeniden yükleme başarısız oldu, yanıt: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Nginx %{node} üzerinde başarıyla yeniden yüklendi" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Uzak Nginx Yeniden Yükleme Hatası" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Uzak Nginx Yeniden Yükleme Başarılı" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" -msgstr "Yeniden yükleme isteği başarısız oldu, lütfen ağ bağlantınızı kontrol edin" +msgstr "" +"Yeniden yükleme isteği başarısız oldu, lütfen ağ bağlantınızı kontrol edin" #: src/components/NginxControl/NginxControl.vue:77 msgid "Reloading" @@ -3885,22 +4367,67 @@ msgstr "Başarıyla kaldırıldı" msgid "Rename" msgstr "Yeniden Adlandır" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "" +"%{env_name} üzerinde %{orig_path} dosyası %{new_path} olarak yeniden " +"adlandırılamadı" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "" +"%{orig_path}, %{env_name} üzerinde %{new_path} olarak başarıyla yeniden " +"adlandırıldı" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Uzak Yapılandırmayı Yeniden Adlandırma Hatası" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Uzak Yapılandırma Yeniden Adlandırma Başarılı" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Uzak Site Adı Değiştirme Hatası" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Uzak Site Yeniden Adlandırma Başarılı" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Uzak Akışı Yeniden Adlandırma Hatası" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Uzak Akış Yeniden Adlandırma Başarılı" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "" +"%{node} üzerinde %{name} sitesi %{new_name} olarak yeniden adlandırılamadı" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "" +"Site %{name}, %{node} üzerinde %{new_name} olarak başarıyla yeniden " +"adlandırıldı" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "" +"%{node} üzerinde %{name} akışını %{new_name} olarak yeniden adlandırma " +"başarısız oldu" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "" +"Akış %{name}, %{node} üzerinde %{new_name} olarak başarıyla yeniden " +"adlandırıldı" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Başarıyla yeniden adlandırıldı" @@ -3963,8 +4490,8 @@ msgid "" "shared library memory, which will be repeated calculated for multiple " "processes" msgstr "" -"Resident Set Size: Fiziksel bellekte gerçekte bulunan bellek, paylaşılan " -"tüm kütüphane belleğini içerir ve birden fazla işlem için tekrar hesaplanır" +"Resident Set Size: Fiziksel bellekte gerçekte bulunan bellek, paylaşılan tüm " +"kütüphane belleğini içerir ve birden fazla işlem için tekrar hesaplanır" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -3981,9 +4508,26 @@ msgstr "Yeniden Başlat" msgid "Restart Nginx" msgstr "Nginx'i Yeniden Başlat" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "%{node} üzerinde Nginx yeniden başlatma başarısız oldu, yanıt: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "%{node} üzerinde Nginx başarıyla yeniden başlatıldı" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Uzak Nginx Yeniden Başlatma Hatası" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Uzak Nginx Yeniden Başlatma Başarılı" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" -msgstr "Yeniden başlatma isteği başarısız oldu, lütfen ağ bağlantınızı kontrol edin" +msgstr "" +"Yeniden başlatma isteği başarısız oldu, lütfen ağ bağlantınızı kontrol edin" #: src/components/NginxControl/NginxControl.vue:82 msgid "Restarting" @@ -4192,14 +4736,40 @@ msgstr "Kaydet" msgid "Save Directive" msgstr "Yönergeleri Kaydet" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Uzak Site Kaydetme Hatası" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Uzak Site Başarıyla Kaydedildi" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Uzak Akış Kaydetme Hatası" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Uzak Akış Başarıyla Kaydedildi" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "%{name} sitesi %{node} üzerine kaydedilemedi" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "%{name} sitesi %{node} üzerine başarıyla kaydedildi" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Akış %{name}, %{node} üzerine kaydedilemedi" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Akış %{name}, %{node} üzerine başarıyla kaydedildi" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Başarıyla kaydedildi" @@ -4289,8 +4859,8 @@ msgid "" "Select a predefined CA directory or enter a custom one. Leave blank to use " "the default CA directory." msgstr "" -"Önceden tanımlanmış bir CA dizini seçin veya özel bir tane girin. " -"Varsayılan CA dizinini kullanmak için boş bırakın." +"Önceden tanımlanmış bir CA dizini seçin veya özel bir tane girin. Varsayılan " +"CA dizinini kullanmak için boş bırakın." #: src/language/curd.ts:31 msgid "Select all" @@ -4308,7 +4878,7 @@ msgstr "Seçilen {count} dosya" msgid "Selector" msgstr "Seçici" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Kendi Kendini Kontrol" @@ -4369,8 +4939,8 @@ msgstr "Ortam ayarlama hatası: {0}" #: src/constants/errors/cert.ts:18 msgid "Set env flag to disable lego CNAME support error: {0}" msgstr "" -"Lego CNAME desteğini devre dışı bırakmak için ortam bayrağı ayarlama " -"hatası: {0}" +"Lego CNAME desteğini devre dışı bırakmak için ortam bayrağı ayarlama hatası: " +"{0}" #: src/views/preference/tabs/CertSettings.vue:36 msgid "" @@ -4398,19 +4968,19 @@ msgstr "HTTP01 meydan okuma sağlayıcısı ayarlanıyor" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath boş, daha fazla bilgi için " -"https://nginxui.com/guide/config-nginx.html adresine bakın" +"Settings.NginxLogSettings.AccessLogPath boş, daha fazla bilgi için https://" +"nginxui.com/guide/config-nginx.html adresine bakın" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath boş, daha fazla bilgi için " -"https://nginxui.com/guide/config-nginx.html adresine bakın" +"Settings.NginxLogSettings.ErrorLogPath boş, daha fazla bilgi için https://" +"nginxui.com/guide/config-nginx.html adresine bakın" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4452,6 +5022,10 @@ msgstr "Site Kayıtları" msgid "Site not found" msgstr "Site bulunamadı" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "Siteler dizini mevcut" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Site Listesi" @@ -4581,6 +5155,14 @@ msgstr "Depolama" msgid "Storage Configuration" msgstr "Depolama Yapılandırması" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"Yedekleme görevi %{backup_name} için depolama yapılandırma doğrulaması " +"başarısız oldu, hata: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4608,6 +5190,10 @@ msgstr "Yayın etkinleştirildi" msgid "Stream not found" msgstr "Akış bulunamadı" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Akışlar dizini mevcut" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Streams-available dizini mevcut değil" @@ -4635,29 +5221,17 @@ msgstr "Başarı" msgid "Sunday" msgstr "Pazar" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Backend ile iletişimi Server-Sent Events protokolü üzerinden destekler. " -"Nginx UI'nız bir Nginx ters proxy üzerinden kullanılıyorsa, ilgili " -"yapılandırma dosyasını yazmak için bu bağlantıya bakın: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "WebSocket protokolü aracılığıyla backend ile iletişimi destekler. Nginx " "UI'nız bir Nginx ters proxy üzerinden kullanılıyorsa, ilgili yapılandırma " -"dosyasını yazmak için bu bağlantıya bakın: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"dosyasını yazmak için bu bağlantıya bakın: https://nginxui.com/guide/nginx-" +"proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4694,19 +5268,37 @@ msgstr "Senkronize Et" msgid "Sync Certificate" msgstr "Sertifikayı Senkronize Et" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "Sertifika %{cert_name}, %{env_name} ortamına senkronize edilemedi" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "" +"Sertifika %{cert_name}, %{env_name} ortamına başarıyla senkronize edildi" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Sertifika Senkronizasyon Hatası" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Sertifika Başarıyla Senkronize Edildi" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "Yapılandırma %{config_name}, %{env_name} ortamına senkronize edilemedi" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "" +"Yapılandırma %{config_name}, %{env_name} ortamına başarıyla senkronize edildi" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Yapılandırma Senkronizasyon Hatası" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Yapılandırma Başarıyla Senkronize Edildi" @@ -4823,8 +5415,7 @@ msgstr "Girdi bir SSL Sertifika Anahtarı değil" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" "Günlük yolu, settings.NginxSettings.LogDirWhiteList içindeki yolların " "altında değil" @@ -4839,7 +5430,8 @@ msgstr "" "iki nokta üst üste ve noktalar içermelidir." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "Kod tamamlama için kullanılan model. Ayarlanmamışsa sohbet modeli " "kullanılacaktır." @@ -4953,14 +5545,22 @@ msgid "This field should not be empty" msgstr "Bu alan boş bırakılamaz" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." -msgstr "Bu alan yalnızca harfler, Unicode karakterler, sayılar ve -_ içermelidir." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." +msgstr "" +"Bu alan yalnızca harfler, Unicode karakterler, sayılar ve -_ içermelidir." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" -msgstr "Bu alan yalnızca harfler, Unicode karakterler, sayılar ve -_./: içermelidir" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" +msgstr "" +"Bu alan yalnızca harfler, Unicode karakterler, sayılar ve -_./: içermelidir" + +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" +"Bu, Nginx UI'den %{Timestamp} adresinden gönderilen bir test mesajıdır." #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" @@ -4984,9 +5584,9 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Bu site, HTTPS (port 443) için varsayılan sunucu (default_server) olarak " "yapılandırılmıştır. IP sertifikaları, Sertifika Yetkilisi (CA) desteği " @@ -4994,8 +5594,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Bu site, genellikle IP tabanlı bir sertifikayı gösteren joker karakterli " @@ -5007,8 +5607,8 @@ msgid "" "This token will only be shown once and cannot be retrieved later. Please " "make sure to save it in a secure location." msgstr "" -"Bu token yalnızca bir kez gösterilecek ve daha sonra alınamayacaktır. " -"Lütfen güvenli bir yerde sakladığınızdan emin olun." +"Bu token yalnızca bir kez gösterilecek ve daha sonra alınamayacaktır. Lütfen " +"güvenli bir yerde sakladığınızdan emin olun." #: src/constants/form_errors.ts:4 src/language/curd.ts:44 msgid "This value is already taken" @@ -5037,7 +5637,8 @@ msgstr "" "yükleme tamamlandıktan sonra Nginx UI yeniden başlatılacaktır." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" "Bu işlem, %{nodeNames} üzerindeki Nginx UI'yi %{version} sürümüne " "yükseltecek veya yeniden yükleyecektir." @@ -5087,15 +5688,15 @@ msgid "" "and restart Nginx UI." msgstr "" "Güvenliği sağlamak için WebAuthn yapılandırması kullanıcı arayüzü üzerinden " -"eklenemez. Lütfen app.ini yapılandırma dosyasına aşağıdakileri manuel " -"olarak ekleyin ve Nginx UI'ı yeniden başlatın." +"eklenemez. Lütfen app.ini yapılandırma dosyasına aşağıdakileri manuel olarak " +"ekleyin ve Nginx UI'ı yeniden başlatın." #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" "Sertifikanın otomatik yenilenmesinin düzgün çalışmasını sağlamak için, " @@ -5422,8 +6023,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Bu dosyadan HTTPChallenge yapılandırmasını kaldıracağız ve Nginx'i yeniden " "yükleyeceğiz. Devam etmek istediğinizden emin misiniz?" @@ -5544,8 +6145,8 @@ msgstr "Evet" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" "Bu terminale, localhost olmayan bir alan adında güvenli olmayan bir HTTP " "bağlantısı üzerinden erişiyorsunuz. Bu, hassas bilgilerin açığa çıkmasına " @@ -5580,7 +6181,8 @@ msgstr "" "ekleyemezsiniz." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" "Henüz 2FA'yı etkinleştirmediniz. Kurtarma kodları oluşturmak için lütfen " "2FA'yı etkinleştirin." @@ -5594,8 +6196,8 @@ msgid "" "Your current recovery code might be outdated and insecure. Please generate " "new recovery codes at your earliest convenience to ensure security." msgstr "" -"Mevcut kurtarma kodunuz güncel olmayabilir ve güvenli olmayabilir. " -"Güvenliği sağlamak için en kısa sürede yeni kurtarma kodları oluşturun." +"Mevcut kurtarma kodunuz güncel olmayabilir ve güvenli olmayabilir. Güvenliği " +"sağlamak için en kısa sürede yeni kurtarma kodları oluşturun." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:142 #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:155 @@ -5606,462 +6208,16 @@ msgstr "Eski kodlarınız artık çalışmayacak." msgid "Your passkeys" msgstr "Geçiş Anahtarlarınız" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] ACME Kullanıcısı: %{name}, E-posta: %{email}, CA Dizini: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] Geçerli sertifika daha sonra iptal edilmek üzere yedekleniyor" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Sertifika başarıyla yenilendi" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Sertifika başarıyla iptal edildi" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] Sertifika sunucu için kullanıldı, sunucu TLS sertifikası yeniden " -#~ "yükleniyor" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] CA sunucusu ile iletişimi kolaylaştırmak için istemci oluşturma" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Ortam değişkenleri temizlendi" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Tamamlandı" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Sertifika başarıyla verildi" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Sertifika alınıyor" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Sertifika iptali için hazırlanıyor" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Lego yapılandırmaları hazırlanıyor" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Nginx yeniden yükleniyor" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] İptal tamamlandı" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Sertifika iptal ediliyor" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Eski sertifika iptal ediliyor" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] DNS01 meydan okuma sağlayıcısı ayarlanıyor" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Ortam değişkenleri ayarlanıyor" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] HTTP01 meydan okuma sağlayıcısı ayarlanıyor" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Sertifika özel anahtarı diske yazılıyor" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Sertifika diske yazılıyor" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Otomatik Yedekleme Tamamlandı" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Otomatik Yedekleme Yapılandırma Hatası" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Otomatik Yedekleme Başarısız" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Otomatik Yedekleme Depolama Başarısız" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "Yedekleme görevi %{backup_name} başarıyla tamamlandı, dosya: %{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "Yedekleme görevi %{backup_name} depolama yüklemesi sırasında başarısız " -#~ "oldu, hata: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "Yedekleme görevi %{backup_name} çalıştırılamadı, hata: %{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "%{name} sertifikasının süresi doldu" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "Sertifika %{name}, %{days} gün sonra sona erecek" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "%{name} sertifikasının süresi 1 gün sonra dolacak" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Sertifika Son Kullanma Bildirimi" - -#~ msgid "Certificate Expired" -#~ msgstr "Sertifikanın süresi doldu" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Sertifika Yakında Sona Eriyor" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Sertifika bulunamadı: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Sertifika başarıyla iptal edildi" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "/var/run/docker.sock dosyasının var olup olmadığını kontrol edin. Nginx UI " -#~ "Resmi Docker Image'ını kullanıyorsanız, docker soketinin şu şekilde " -#~ "bağlandığından emin olun: `-v /var/run/docker.sock:/var/run/docker.sock`. " -#~ "Nginx UI resmi imajı, Docker Client API üzerinden ana bilgisayarın Docker " -#~ "Engine'i ile iletişim kurmak için /var/run/docker.sock kullanır. Bu " -#~ "özellik, Nginx UI'nin OTA güncellemeleri sırasında ikili dosya değişimi " -#~ "yerine konteyner değişimi yaparak Nginx'i başka bir konteynerde kontrol " -#~ "etmek ve konteyner bağımlılıklarının da güncellenmesini sağlamak için " -#~ "kullanılır. Bu özelliğe ihtiyacınız yoksa, konteynere " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true ortam değişkenini ekleyin." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Nginx erişim günlüğü yolunun var olup olmadığını kontrol edin. Varsayılan " -#~ "olarak bu yol 'nginx -V' komutu ile alınır. Eğer alınamazsa veya alınan yol " -#~ "geçerli, mevcut bir dosyayı işaret etmiyorsa bir hata bildirilecektir. Bu " -#~ "durumda, erişim günlüğü yolunu belirtmek için yapılandırma dosyasını " -#~ "değiştirmeniz gerekmektedir. Daha fazla bilgi için belgelere bakın: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Nginx yapılandırma dizininin var olup olmadığını kontrol edin" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Nginx yapılandırma giriş dosyasının var olup olmadığını kontrol edin" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Nginx hata günlüğü yolunun var olup olmadığını kontrol edin. Varsayılan " -#~ "olarak bu yol 'nginx -V' komutuyla alınır. Eğer alınamazsa veya alınan yol " -#~ "geçerli, mevcut bir dosyayı işaret etmiyorsa bir hata bildirilir. Bu " -#~ "durumda, yapılandırma dosyasını değiştirerek hata günlüğü yolunu " -#~ "belirtmeniz gerekir. Daha fazla ayrıntı için belgelere bakın: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Nginx PID yolunun var olup olmadığını kontrol edin. Varsayılan olarak bu " -#~ "yol 'nginx -V' komutuyla alınır. Alınamazsa bir hata bildirilir. Bu " -#~ "durumda, yapılandırma dosyasını değiştirerek Nginx PID yolunu belirtmeniz " -#~ "gerekir. Daha fazla ayrıntı için belgelere bakın: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "nginx sbin yolu var mı diye kontrol edin" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "nginx.conf dosyasının conf.d dizinini içerip içermediğini kontrol edin" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "" -#~ "nginx.conf dosyasının sites-enabled dizinini içerip içermediğini kontrol " -#~ "edin" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "" -#~ "nginx.conf dosyasının streams-enabled dizinini içerip içermediğini kontrol " -#~ "edin" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "sites-available ve sites-enabled dizinlerinin nginx yapılandırma dizini " -#~ "altında olup olmadığını kontrol edin" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "streams-available ve streams-enabled dizinlerinin nginx yapılandırma dizini " -#~ "altında olup olmadığını kontrol edin" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "%{env_name} üzerinde %{path} silme işlemi başarısız oldu" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{env_name} üzerindeki %{path} başarıyla silindi" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Uzak Yapılandırma Silme Hatası" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Uzak Yapılandırma Başarıyla Silindi" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Uzak Akış Silme Hatası" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Uzak Akış Başarıyla Silindi" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "%{node} üzerindeki %{name} sitesi silinemedi" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "%{node} üzerindeki %{name} sitesi başarıyla silindi" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "%{node} üzerindeki %{name} akışı silinemedi" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "%{name} akışı %{node} üzerinden başarıyla silindi" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Uzak Site Bakımını Devre Dışı Bırakma Hatası" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Uzak Site Bakımı Başarıyla Devre Dışı Bırakıldı" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Uzak Akış Devre Dışı Bırakma Hatası" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Uzak Akış Devre Dışı Bırakma Başarılı" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "%{node} üzerindeki %{name} sitesi devre dışı bırakılamadı" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "%{node} üzerindeki %{name} sitesi başarıyla devre dışı bırakıldı" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "%{node} üzerindeki %{name} sitesi bakımını devre dışı bırakma başarısız oldu" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "%{name} sitesinin bakımı %{node} üzerinde başarıyla devre dışı bırakıldı" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "%{node} üzerindeki %{name} akışı devre dışı bırakılamadı" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Akış %{name}, %{node} üzerinden başarıyla devre dışı bırakıldı" - -#~ msgid "Docker socket exists" -#~ msgstr "Docker soketi mevcut" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Uzak Site Bakımını Etkinleştirme Hatası" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Uzak Site Bakımını Etkinleştirme Başarılı" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Uzaktan Akış Etkinleştirme Hatası" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Uzaktan Akış Başarıyla Etkinleştirildi" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "%{node} üzerinde %{name} sitesi bakımını etkinleştirme başarısız oldu" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "%{node} üzerinde %{name} sitesi bakımı başarıyla etkinleştirildi" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "%{node} üzerinde %{name} sitesi etkinleştirilemedi" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "%{node} üzerinde %{name} sitesi başarıyla etkinleştirildi" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "%{node} üzerinde %{name} akışı etkinleştirilemedi" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "%{node} üzerinde %{name} akışı başarıyla etkinleştirildi" - -#~ msgid "External Notification Test" -#~ msgstr "Harici Bildirim Testi" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Sertifika veritabanından silinemedi: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Sertifika iptal edilemedi: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "Günlük dosyası %{log_path} normal bir dosya değil. Docker konteynerinde " -#~ "nginx-ui kullanıyorsanız, daha fazla bilgi için " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html adresine bakın." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Nginx erişim günlüğü yolu mevcut" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Nginx yapılandırma dizini mevcut" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Nginx yapılandırma giriş dosyası mevcut" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Nginx hata günlüğü yolu mevcut" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Nginx PID yolu mevcut" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Nginx sbin yolu mevcut" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf, conf.d dizinini içerir" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf, sites-enabled dizinini içerir" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf, streams-enabled dizinini içerir" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "%{node} üzerinde Nginx yeniden yükleme başarısız oldu, yanıt: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Nginx %{node} üzerinde başarıyla yeniden yüklendi" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Uzak Nginx Yeniden Yükleme Hatası" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Uzak Nginx Yeniden Yükleme Başarılı" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "" -#~ "%{env_name} üzerinde %{orig_path} dosyası %{new_path} olarak yeniden " -#~ "adlandırılamadı" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "" -#~ "%{orig_path}, %{env_name} üzerinde %{new_path} olarak başarıyla yeniden " -#~ "adlandırıldı" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Uzak Akışı Yeniden Adlandırma Hatası" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Uzak Akış Yeniden Adlandırma Başarılı" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "%{node} üzerinde %{name} sitesi %{new_name} olarak yeniden adlandırılamadı" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "" -#~ "Site %{name}, %{node} üzerinde %{new_name} olarak başarıyla yeniden " -#~ "adlandırıldı" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "" -#~ "%{node} üzerinde %{name} akışını %{new_name} olarak yeniden adlandırma " -#~ "başarısız oldu" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "" -#~ "Akış %{name}, %{node} üzerinde %{new_name} olarak başarıyla yeniden " -#~ "adlandırıldı" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "%{node} üzerinde Nginx yeniden başlatma başarısız oldu, yanıt: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "%{node} üzerinde Nginx başarıyla yeniden başlatıldı" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Uzak Nginx Yeniden Başlatma Hatası" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Uzak Nginx Yeniden Başlatma Başarılı" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Uzak Akış Kaydetme Hatası" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Uzak Akış Başarıyla Kaydedildi" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "%{name} sitesi %{node} üzerine kaydedilemedi" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "%{name} sitesi %{node} üzerine başarıyla kaydedildi" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Akış %{name}, %{node} üzerine kaydedilemedi" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Akış %{name}, %{node} üzerine başarıyla kaydedildi" - -#~ msgid "Sites directory exists" -#~ msgstr "Siteler dizini mevcut" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "Yedekleme görevi %{backup_name} için depolama yapılandırma doğrulaması " -#~ "başarısız oldu, hata: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Akışlar dizini mevcut" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Sertifika %{cert_name}, %{env_name} ortamına senkronize edilemedi" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Sertifika %{cert_name}, %{env_name} ortamına başarıyla senkronize edildi" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "Yapılandırma %{config_name}, %{env_name} ortamına senkronize edilemedi" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "" -#~ "Yapılandırma %{config_name}, %{env_name} ortamına başarıyla senkronize " -#~ "edildi" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "Bu, Nginx UI'den %{Timestamp} adresinden gönderilen bir test mesajıdır." +#~ "Backend ile iletişimi Server-Sent Events protokolü üzerinden destekler. " +#~ "Nginx UI'nız bir Nginx ters proxy üzerinden kullanılıyorsa, ilgili " +#~ "yapılandırma dosyasını yazmak için bu bağlantıya bakın: https://nginxui." +#~ "com/guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Boş bırakılırsa, varsayılan CA Dir kullanılır." @@ -6150,11 +6306,11 @@ msgstr "Geçiş Anahtarlarınız" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "/var/run/docker.sock dosyasının var olup olmadığını kontrol edin. Nginx UI " -#~ "Resmi Docker Image'ını kullanıyorsanız, docker soketinin şu şekilde " +#~ "/var/run/docker.sock dosyasının var olup olmadığını kontrol edin. Nginx " +#~ "UI Resmi Docker Image'ını kullanıyorsanız, docker soketinin şu şekilde " #~ "bağlandığından emin olun: `-v /var/run/docker.sock:/var/run/docker.sock`." #~ msgid "Check if the nginx access log path exists" @@ -6216,7 +6372,8 @@ msgstr "Geçiş Anahtarlarınız" #~ msgstr "Yeniden Başlatma" #~ msgid "Deploy %{conf_name} to %{node_name} successfully" -#~ msgstr "%{conf_name} yapılandırması başarıyla %{node_name} düğümüne dağıtıldı" +#~ msgstr "" +#~ "%{conf_name} yapılandırması başarıyla %{node_name} düğümüne dağıtıldı" #~ msgid "Deploy successfully" #~ msgstr "Başarıyla Dağıtıldı" @@ -6224,8 +6381,8 @@ msgstr "Geçiş Anahtarlarınız" #, fuzzy #~ msgid "Disable site %{site} on %{node} error, response: %{resp}" #~ msgstr "" -#~ "%{conf_name} yapılandırmasını %{node_name} düğümünde etkinleştirme başarılı " -#~ "oldu" +#~ "%{conf_name} yapılandırmasını %{node_name} düğümünde etkinleştirme " +#~ "başarılı oldu" #~ msgid "Do you want to deploy this file to remote server?" #~ msgid_plural "Do you want to deploy this file to remote servers?" @@ -6240,8 +6397,8 @@ msgstr "Geçiş Anahtarlarınız" #~ msgid "Enable %{conf_name} in %{node_name} successfully" #~ msgstr "" -#~ "%{conf_name} yapılandırmasını %{node_name} düğümünde etkinleştirme başarılı " -#~ "oldu" +#~ "%{conf_name} yapılandırmasını %{node_name} düğümünde etkinleştirme " +#~ "başarılı oldu" #~ msgid "Enable successfully" #~ msgstr "Başarıyla etkinleştirildi" @@ -6253,14 +6410,18 @@ msgstr "Geçiş Anahtarlarınız" #~ "Nginx kullanıcı arayüzünü en son sürüme yükseltin" #, fuzzy -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "" -#~ "2] üzerinde %{orig_path}'ı %{new_path} olarak yeniden adlandırma başarısız " -#~ "oldu, yanıt: %{resp}" +#~ "2] üzerinde %{orig_path}'ı %{new_path} olarak yeniden adlandırma " +#~ "başarısız oldu, yanıt: %{resp}" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" -#~ msgstr "2] üzerinde %{orig_path}'ı %{new_path} olarak başarıyla yeniden adlandırın" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgstr "" +#~ "2] üzerinde %{orig_path}'ı %{new_path} olarak başarıyla yeniden adlandırın" #, fuzzy #~ msgid "Save site %{site} to %{node} error, response: %{resp}" @@ -6277,7 +6438,8 @@ msgstr "Geçiş Anahtarlarınız" #~ "lütfen uzak Nginx kullanıcı arayüzünü en son sürüme yükseltin" #, fuzzy -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "" #~ "Sertifika %{cert_name} ile %{env_name} arasında senkronizasyon başarısız " #~ "oldu, yanıt: %{resp}" @@ -6292,8 +6454,8 @@ msgstr "Geçiş Anahtarlarınız" #~ msgstr "Tarayamıyor musunuz? Metin anahtar bağlamasını kullanın" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "" #~ "Cep telefonunuzu kaybederseniz, 2FA'nızı sıfırlamak için kurtarma kodunu " #~ "kullanabilirsiniz." @@ -6306,7 +6468,8 @@ msgstr "Geçiş Anahtarlarınız" #~ msgstr "Kurtarma Kodu:" #, fuzzy -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "" #~ "Kurtarma kodu yalnızca bir kez görüntülenir, lütfen güvenli bir yere " #~ "kaydedin." @@ -6322,8 +6485,9 @@ msgstr "Geçiş Anahtarlarınız" #~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, please upgrade " #~ "the remote Nginx UI to the latest version" #~ msgstr "" -#~ "2] üzerinde %{orig_path}'ı %{new_path} olarak yeniden adlandırmak başarısız " -#~ "oldu, lütfen uzak Nginx kullanıcı arayüzünü en son sürüme yükseltin" +#~ "2] üzerinde %{orig_path}'ı %{new_path} olarak yeniden adlandırmak " +#~ "başarısız oldu, lütfen uzak Nginx kullanıcı arayüzünü en son sürüme " +#~ "yükseltin" #, fuzzy #~ msgid "Server Name" diff --git a/app/src/language/uk_UA/app.po b/app/src/language/uk_UA/app.po index fe8eef51..6ef6da9d 100644 --- a/app/src/language/uk_UA/app.po +++ b/app/src/language/uk_UA/app.po @@ -4,16 +4,107 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "PO-Revision-Date: 2025-04-16 15:12+0000\n" "Last-Translator: sergio_from_tauri \n" -"Language-Team: Ukrainian " -"\n" +"Language-Team: Ukrainian \n" "Language: uk_UA\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 5.11\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] Користувач ACME: %{name}, Електронна пошта: %{email}, Каталог CA: " +"%{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "" +"[Nginx UI] Резервне копіювання поточного сертифіката для подальшого " +"відкликання" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Сертифікат успішно оновлено" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Сертифікат успішно відкликано" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] Сертифікат використовувався для сервера, перезавантаження TLS-" +"сертифіката сервера" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] Створення клієнта для спрощення зв’язку з сервером CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Змінні середовища очищено" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Завершено" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Сертифікат успішно видано" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Отримання сертифіката" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Підготовка до відкликання сертифіката" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Підготовка конфігурацій lego" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Перезавантаження nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Відкликання завершено" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Відкликання сертифіката" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Відкликання старого сертифіката" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] Налаштування провайдера виклику DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Налаштування змінних середовища" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] Налаштування провайдера HTTP01-виклику" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Запис приватного ключа сертифіката на диск" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Запис сертифіката на диск" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* Включає вузли з групи %{groupName} та вузли, вибрані вручну" @@ -139,12 +230,14 @@ msgstr "Розширений режим" #: src/views/preference/components/AuthSettings/AddPasskey.vue:104 msgid "Afterwards, refresh this page and click add passkey again." -msgstr "Після цього оновіть цю сторінку та натисніть «Додати ключ доступу» знову." +msgstr "" +"Після цього оновіть цю сторінку та натисніть «Додати ключ доступу» знову." #: src/components/EnvGroupTabs/EnvGroupTabs.vue:83 msgid "All" msgstr "Усі" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Усі коди відновлення використано" @@ -154,11 +247,12 @@ msgid "" "All selected subdomains must belong to the same DNS Provider, otherwise the " "certificate application will fail." msgstr "" -"Усі вибрані піддомени повинні належати до одного й того самого " -"DNS-провайдера, інакше запит на сертифікат не буде успішним." +"Усі вибрані піддомени повинні належати до одного й того самого DNS-" +"провайдера, інакше запит на сертифікат не буде успішним." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Будь-яку доступну IP-адресу можна використовувати з приватним центром " "сертифікації" @@ -261,7 +355,7 @@ msgstr "Запитати допомоги у ChatGPT" msgid "Assistant" msgstr "Помічник" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Спробувати виправити" @@ -300,6 +394,22 @@ msgstr "Auto = CPU ядра" msgid "Auto Backup" msgstr "Автоматичне резервне копіювання" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Автоматичне резервне копіювання завершено" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Помилка конфігурації автоматичного резервного копіювання" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Автоматичне резервне копіювання не вдалося" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Не вдалося зберегти автоматичну резервну копію" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -361,7 +471,8 @@ msgstr "Резервна копія" #: src/components/SystemRestore/SystemRestoreContent.vue:155 msgid "Backup file integrity check failed, it may have been tampered with" -msgstr "Перевірка цілісності резервного файлу не вдалася, можливо, його було змінено" +msgstr "" +"Перевірка цілісності резервного файлу не вдалася, можливо, його було змінено" #: src/constants/errors/backup.ts:41 msgid "Backup file not found: {0}" @@ -386,8 +497,8 @@ msgstr "Шлях резервного копіювання не є директ #: src/constants/errors/backup.ts:62 msgid "Backup path is required for custom directory backup" msgstr "" -"Шлях резервного копіювання необхідний для резервного копіювання " -"спеціального каталогу" +"Шлях резервного копіювання необхідний для резервного копіювання спеціального " +"каталогу" #: src/constants/errors/backup.ts:60 msgid "Backup path not in granted access paths: {0}" @@ -397,6 +508,25 @@ msgstr "Шлях резервного копіювання не входить msgid "Backup Schedule" msgstr "Розклад резервного копіювання" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Завдання резервного копіювання %{backup_name} успішно завершено, файл: " +"%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"Завдання резервного копіювання %{backup_name} не вдалося під час " +"завантаження в сховище, помилка: %{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "" +"Не вдалося виконати завдання резервного копіювання %{backup_name}, помилка: " +"%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Тип резервної копії" @@ -470,7 +600,8 @@ msgstr "Кеш" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:178 msgid "Cache items not accessed within this time will be removed" -msgstr "Елементи кешу, до яких не було звернень протягом цього часу, будуть видалені" +msgstr "" +"Елементи кешу, до яких не було звернень протягом цього часу, будуть видалені" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:350 msgid "Cache loader processing time threshold" @@ -539,7 +670,8 @@ msgstr "Неможливо отримати доступ до шляху збе #: src/constants/errors/user.ts:11 msgid "Cannot change initial user password in demo mode" -msgstr "Не вдається змінити початковий пароль користувача в демонстраційному режимі" +msgstr "" +"Не вдається змінити початковий пароль користувача в демонстраційному режимі" #: src/components/ConfigHistory/DiffViewer.vue:72 msgid "Cannot compare: Missing content" @@ -570,6 +702,20 @@ msgstr "Шлях до сертифіката не знаходиться в ка msgid "certificate" msgstr "сертифікат" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "Термін дії сертифіката %{name} закінчився" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "Сертифікат %{name} закінчиться через %{days} днів" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "Термін дії сертифіката %{name} закінчиться через 1 день" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "Вміст сертифіката та закритий ключ не можуть бути порожніми" @@ -578,6 +724,20 @@ msgstr "Вміст сертифіката та закритий ключ не м msgid "Certificate decode error" msgstr "Помилка декодування сертифіката" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Повідомлення про закінчення терміну дії сертифіката" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Термін дії сертифіката закінчився" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Сертифікат незабаром закінчується" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Файли сертифікатів успішно завантажено" @@ -586,6 +746,10 @@ msgstr "Файли сертифікатів успішно завантажен msgid "Certificate name cannot be empty" msgstr "Назва сертифіката не може бути порожньою" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Сертифікат не знайдено: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Помилка аналізу сертифіката" @@ -607,6 +771,10 @@ msgstr "Інтервал оновлення сертифіката" msgid "Certificate renewed successfully" msgstr "Сертифікат успішно поновлено" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Сертифікат успішно відкликано" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -672,6 +840,28 @@ msgstr "Перевірити" msgid "Check again" msgstr "Перевірте ще раз" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Перевірте, чи існує /var/run/docker.sock. Якщо ви використовуєте офіційний " +"образ Docker Nginx UI, переконайтеся, що сокет Docker змонтовано таким " +"чином: `-v /var/run/docker.sock:/var/run/docker.sock`. Офіційний образ Nginx " +"UI використовує /var/run/docker.sock для зв’язку з Docker Engine хоста через " +"API Docker Client. Ця функція використовується для керування Nginx в іншому " +"контейнері та виконання заміни контейнера замість заміни бінарного файлу під " +"час OTA-оновлень Nginx UI, щоб гарантувати, що залежності контейнера також " +"оновлюються. Якщо вам не потрібна ця функція, додайте змінну середовища " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true до контейнера." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " @@ -680,6 +870,92 @@ msgstr "" "Перевірте, чи увімкнено HTTPS. Використання HTTP за межами localhost є " "небезпечним і перешкоджає використанню Passkeys та функцій буфера обміну" +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Перевірте, чи існує шлях до журналу доступу nginx. За замовчуванням цей шлях " +"отримується з 'nginx -V'. Якщо його не вдається отримати або отриманий шлях " +"не вказує на дійсний існуючий файл, буде повідомлено про помилку. У цьому " +"випадку вам потрібно змінити файл конфігурації, щоб вказати шлях до журналу " +"доступу. Докладніше див. у документації: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Перевірити, чи існує каталог конфігурації nginx" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Перевірити, чи існує файл конфігурації nginx" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Перевірте, чи існує шлях до журналу помилок nginx. За замовчуванням цей шлях " +"отримується з 'nginx -V'. Якщо його не вдається отримати або отриманий шлях " +"не вказує на дійсний існуючий файл, буде повідомлено про помилку. У цьому " +"випадку вам потрібно змінити файл конфігурації, щоб вказати шлях до журналу " +"помилок. Докладніше див. у документації: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Перевірте, чи існує шлях до PID Nginx. За замовчуванням цей шлях отримується " +"з команди 'nginx -V'. Якщо його не вдається отримати, буде повідомлено про " +"помилку. У цьому випадку вам потрібно змінити конфігураційний файл, щоб " +"вказати шлях до PID Nginx. Докладніше див. у документації: https://nginxui." +"com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Перевірте, чи існує шлях до sbin nginx" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Перевірити, чи включає файл nginx.conf директорію conf.d" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Перевірити, чи nginx.conf включає каталог sites-enabled" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "Перевірити, чи включає nginx.conf каталог streams-enabled" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Перевірте, чи каталоги sites-available та sites-enabled знаходяться в " +"каталозі конфігурації nginx" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Перевірте, чи каталоги streams-available та streams-enabled знаходяться в " +"каталозі конфігурації nginx" + #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" msgstr "Зашифрований текст занадто короткий" @@ -988,8 +1264,8 @@ msgstr "" "\"Вірність\" означає точність до змісту та наміру оригінального тексту;\n" "\"Плавність\" означає, що переклад має бути зрозумілим та легким для " "сприйняття;\n" -"\"Витонченість\" означає прагнення до культурної естетики перекладу та " -"краси мови.\n" +"\"Витонченість\" означає прагнення до культурної естетики перекладу та краси " +"мови.\n" "Мета полягає у створенні перекладу, який був би вірним духу оригіналу,\n" "а також відповідав цільовій мові, культурі та естетичним уподобанням " "читачів.\n" @@ -1051,7 +1327,8 @@ msgstr "Сертифікат користувацьких доменів" msgid "" "Customize the name of local node to be displayed in the environment " "indicator." -msgstr "Налаштуйте назву локального вузла для відображення в індикаторі середовища." +msgstr "" +"Налаштуйте назву локального вузла для відображення в індикаторі середовища." #: src/views/backup/AutoBackup/components/CronEditor.vue:19 msgid "Daily" @@ -1086,7 +1363,8 @@ msgstr "Розшифрування не вдалося" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:150 msgid "Define shared memory zone name and size, e.g. proxy_cache:10m" -msgstr "Вкажіть назву та розмір зони спільної пам'яті, наприклад proxy_cache:10m" +msgstr "" +"Вкажіть назву та розмір зони спільної пам'яті, наприклад proxy_cache:10m" #: src/components/NgxConfigEditor/NgxServer.vue:110 #: src/components/NgxConfigEditor/NgxUpstream.vue:78 src/language/curd.ts:9 @@ -1099,6 +1377,14 @@ msgstr "Вкажіть назву та розмір зони спільної п msgid "Delete" msgstr "Видалити" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Не вдалося видалити %{path} на %{env_name}" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "%{path} на %{env_name} успішно видалено" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Видалити сертифікат" @@ -1111,18 +1397,51 @@ msgstr "Підтвердження видалення" msgid "Delete Permanently" msgstr "Видалити назавжди" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Помилка видалення віддаленої конфігурації" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Віддалена конфігурація успішно видалена" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Помилка видалення віддаленого сайту" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Віддалений сайт успішно видалено" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Помилка видалення віддаленого потоку" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Віддалений потік успішно видалено" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Не вдалося видалити сайт %{name} з %{node}" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Сайт %{name} успішно видалено з %{node}" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Сайт видалено: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Не вдалося видалити потік %{name} з %{node}" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "Потік %{name} успішно видалено з %{node}" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Видалити потік: %{stream_name}" @@ -1245,14 +1564,56 @@ msgstr "Вимкнути" msgid "Disable auto-renewal failed for %{name}" msgstr "Не вдалося вимкнути автоматичне поновлення для %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Помилка вимкнення віддаленого сайту" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Помилка вимкнення технічного обслуговування віддаленого сайту" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Вимкнення технічного обслуговування віддаленого сайту успішне" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Віддалений сайт успішно вимкнено" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Помилка вимкнення віддаленого потоку" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Віддалений потік успішно вимкнено" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Не вдалося вимкнути сайт %{name} з %{node}" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Сайт %{name} успішно вимкнено з %{node}" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "Не вдалося вимкнути обслуговування сайту %{name} на %{node}" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Обслуговування сайту %{name} на %{node} успішно вимкнено" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Не вдалося вимкнути потік %{name} з %{node}" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Потік %{name} успішно вимкнено з %{node}" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1323,6 +1684,10 @@ msgstr "Ви хочете видалити цей апстрім?" msgid "Docker client not initialized" msgstr "Клієнт Docker не ініціалізовано" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Сокет Docker існує" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Сокет Docker не існує" @@ -1339,7 +1704,8 @@ msgstr "Домен" #: src/views/certificate/components/AutoCertManagement.vue:55 msgid "Domains list is empty, try to reopen Auto Cert for %{config}" -msgstr "Список доменів порожній, спробуйте знову відкрити Auto Cert для %{config}" +msgstr "" +"Список доменів порожній, спробуйте знову відкрити Auto Cert для %{config}" #: src/views/certificate/components/CertificateDownload.vue:93 msgid "Download Certificate Files" @@ -1371,9 +1737,8 @@ msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." msgstr "" -"Через політику безпеки деяких браузерів ви не можете використовувати " -"пас-ключі на вебсайтах без HTTPS, окрім випадків, коли сайт працює на " -"localhost." +"Через політику безпеки деяких браузерів ви не можете використовувати пас-" +"ключі на вебсайтах без HTTPS, окрім випадків, коли сайт працює на localhost." #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1472,14 +1837,56 @@ msgstr "Увімкнути HTTPS" msgid "Enable Proxy Cache" msgstr "Увімкнути кеш проксі" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Помилка активації віддаленого сайту" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Помилка увімкнення технічного обслуговування віддаленого сайту" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Успішне ввімкнення режиму обслуговування віддаленого сайту" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Віддалений сайт успішно увімкнено" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Помилка ввімкнення віддаленого потоку" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Віддалений потік успішно ввімкнено" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "Не вдалося увімкнути технічне обслуговування сайту %{name} на %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "Обслуговування сайту %{name} на %{node} успішно ввімкнено" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "Не вдалося увімкнути сайт %{name} на %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Сайт %{name} успішно увімкнено на %{node}" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "Не вдалося увімкнути потік %{name} на %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Потік %{name} успішно ввімкнено на %{node}" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Увімкнути модуль stub_status" @@ -1518,8 +1925,8 @@ msgstr "Успішно ввімкнено" #: src/views/preference/tabs/ServerSettings.vue:52 msgid "Enables HTTP/2 support with multiplexing and server push capabilities" msgstr "" -"Увімкнення підтримки HTTP/2 з можливістю мультиплексування та " -"push-повідомлень сервера" +"Увімкнення підтримки HTTP/2 з можливістю мультиплексування та push-" +"повідомлень сервера" #: src/views/preference/tabs/ServerSettings.vue:56 msgid "Enables HTTP/3 support based on QUIC protocol for best performance" @@ -1626,8 +2033,8 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" "Ідентифікатор ключа зовнішнього облікового запису (опціонально). Потрібен " "для деяких провайдерів ACME, таких як ZeroSSL." @@ -1640,6 +2047,10 @@ msgstr "Зовнішній контейнер Docker" msgid "External notification configuration not found" msgstr "Зовнішню конфігурацію сповіщень не знайдено" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Тест зовнішнього сповіщення" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1794,6 +2205,10 @@ msgstr "Не вдалося розшифрувати каталог Nginx UI: {0 msgid "Failed to delete certificate" msgstr "Не вдалося видалити сертифікат" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Не вдалося видалити сертифікат з бази даних: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1960,6 +2375,10 @@ msgstr "Не вдалося відновити файли Nginx UI: {0}" msgid "Failed to revoke certificate" msgstr "Не вдалося відкликати сертифікат" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Не вдалося відкликати сертифікат: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Не вдалося зберегти налаштування продуктивності Nginx" @@ -2061,8 +2480,8 @@ msgid "" "Follow the instructions in the dialog to complete the passkey registration " "process." msgstr "" -"Дотримуйтесь інструкцій у діалоговому вікні, щоб завершити процес " -"реєстрації ключа доступу." +"Дотримуйтесь інструкцій у діалоговому вікні, щоб завершити процес реєстрації " +"ключа доступу." #: src/views/preference/tabs/NodeSettings.vue:42 #: src/views/preference/tabs/NodeSettings.vue:54 @@ -2084,8 +2503,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "Для сертифікатів на основі IP вкажіть IP-адресу сервера, яка буде включена " "до сертифіката." @@ -2239,11 +2658,13 @@ msgstr "" msgid "" "If you want to automatically revoke the old certificate, please enable this " "option." -msgstr "Якщо ви хочете автоматично відкликати старий сертифікат, увімкніть цю опцію." +msgstr "" +"Якщо ви хочете автоматично відкликати старий сертифікат, увімкніть цю опцію." #: src/views/preference/components/AuthSettings/AddPasskey.vue:75 msgid "If your browser supports WebAuthn Passkey, a dialog box will appear." -msgstr "Якщо ваш браузер підтримує WebAuthn Passkey, з’явиться діалогове вікно." +msgstr "" +"Якщо ваш браузер підтримує WebAuthn Passkey, з’явиться діалогове вікно." #: src/components/AutoCertForm/AutoCertForm.vue:271 msgid "" @@ -2453,8 +2874,8 @@ msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." msgstr "" -"Зберігайте ваші коди відновлення так само надійно, як і пароль. " -"Рекомендуємо зберігати їх у менеджері паролів." +"Зберігайте ваші коди відновлення так само надійно, як і пароль. Рекомендуємо " +"зберігати їх у менеджері паролів." #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2503,7 +2924,8 @@ msgstr "Залиште порожнім, щоб не змінювати" #: src/views/preference/tabs/OpenAISettings.vue:41 msgid "Leave blank for the default: https://api.openai.com/" -msgstr "Залиште порожнім для значення за замовчуванням: https://api.openai.com/" +msgstr "" +"Залиште порожнім для значення за замовчуванням: https://api.openai.com/" #: src/language/curd.ts:39 msgid "Leave blank if do not want to modify" @@ -2611,6 +3033,16 @@ msgstr "Розташування" msgid "Log" msgstr "Журнал" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"Файл журналу %{log_path} не є звичайним файлом. Якщо ви використовуєте nginx-" +"ui у контейнері Docker, будь ласка, зверніться до https://nginxui.com/zh_CN/" +"guide/config-nginx-log.html для отримання додаткової інформації." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Список журналів" @@ -2633,16 +3065,16 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "Logrotate за замовчуванням увімкнено у більшості популярних дистрибутивів " -"Linux для користувачів, які встановлюють Nginx UI безпосередньо на " -"хост-машині, тому вам не потрібно змінювати параметри на цій сторінці. Для " +"Linux для користувачів, які встановлюють Nginx UI безпосередньо на хост-" +"машині, тому вам не потрібно змінювати параметри на цій сторінці. Для " "користувачів, які встановлюють Nginx UI за допомогою контейнерів Docker, ви " "можете вручну активувати цю опцію. Планувальник завдань crontab у Nginx UI " "виконуватиме команду logrotate з інтервалом, який ви встановите у хвилинах." @@ -2956,6 +3388,10 @@ msgstr "Вивід Nginx -T порожній" msgid "Nginx Access Log Path" msgstr "Шлях до журналу доступу Nginx" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Шлях до журналу доступу Nginx існує" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2985,6 +3421,14 @@ msgstr "Конфігурація Nginx не містить stream-enabled" msgid "Nginx config directory is not set" msgstr "Каталог конфігурації Nginx не встановлено" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Каталог конфігурації Nginx існує" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Файл входу конфігурації Nginx існує" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Конфігурацію Nginx відновлено" @@ -3019,6 +3463,10 @@ msgstr "Рівень використання CPU Nginx" msgid "Nginx Error Log Path" msgstr "Шлях до журналу помилок Nginx" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Шлях до журналу помилок Nginx існує" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Помилка Nginx: {0}" @@ -3056,6 +3504,10 @@ msgstr "Використання пам'яті Nginx" msgid "Nginx PID Path" msgstr "Шлях до PID Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Шлях PID Nginx існує" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Команда перезавантаження Nginx" @@ -3085,6 +3537,10 @@ msgstr "Операції перезапуску Nginx були відправл msgid "Nginx restarted successfully" msgstr "Nginx успішно перезапущено" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Шлях sbin для Nginx існує" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Команда тестування конфігурації Nginx" @@ -3108,12 +3564,24 @@ msgstr "Конфігурацію Nginx UI відновлено" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" "Конфігурацію Nginx UI відновлено, і вона автоматично перезавантажиться за " "кілька секунд." +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf включає каталог conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf включає каталог sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf включає каталог streams-enabled" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3561,7 +4029,8 @@ msgstr "Будь ласка, введіть токен безпеки" #: src/components/SystemRestore/SystemRestoreContent.vue:210 #: src/components/SystemRestore/SystemRestoreContent.vue:287 msgid "Please enter the security token received during backup" -msgstr "Будь ласка, введіть токен безпеки, отриманий під час резервного копіювання" +msgstr "" +"Будь ласка, введіть токен безпеки, отриманий під час резервного копіювання" #: src/components/AutoCertForm/AutoCertForm.vue:80 msgid "Please enter the server IP address" @@ -3590,10 +4059,11 @@ msgstr "" "потім виберіть один із наведених нижче облікових записів, щоб надіслати " "запит до API постачальника DNS." +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Будь ласка, негайно згенеруйте нові коди відновлення в налаштуваннях, щоб " "уникнути блокування." @@ -3641,7 +4111,8 @@ msgid "Please log in." msgstr "Будь ласка, увійдіть." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "" "Будь ласка, зверніть увагу, що одиницею виміру часу в наведених нижче " "налаштуваннях є секунди." @@ -3653,8 +4124,7 @@ msgstr "Будь ласка, усуньте всі проблеми перед #: src/views/backup/components/BackupCreator.vue:107 msgid "Please save this security token, you will need it for restoration:" msgstr "" -"Будь ласка, збережіть цей токен безпеки, він знадобиться вам для " -"відновлення:" +"Будь ласка, збережіть цей токен безпеки, він знадобиться вам для відновлення:" #: src/components/SystemRestore/SystemRestoreContent.vue:107 msgid "Please select a backup file" @@ -3733,7 +4203,8 @@ msgstr "Приватний CA:" #: src/components/AutoCertForm/AutoCertForm.vue:202 msgid "Private IPs (192.168.x.x, 10.x.x.x, 172.16-31.x.x) will fail" -msgstr "Приватні IP-адреси (192.168.x.x, 10.x.x.x, 172.16-31.x.x) не працюватимуть" +msgstr "" +"Приватні IP-адреси (192.168.x.x, 10.x.x.x, 172.16-31.x.x) не працюватимуть" #: src/views/certificate/components/CertificateFileUpload.vue:120 #: src/views/certificate/components/CertificateFileUpload.vue:44 @@ -3775,8 +4246,7 @@ msgstr "Захищена директорія" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "Налаштування протоколу діє лише при прямому підключенні. Якщо ви " "використовуєте зворотний проксі, налаштуйте протокол окремо у зворотному " @@ -3829,7 +4299,7 @@ msgstr "Читання" msgid "Receive" msgstr "Отримання" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Перевірити знову" @@ -3918,6 +4388,22 @@ msgstr "Перезавантажити Nginx" msgid "Reload nginx failed: {0}" msgstr "Не вдалося перезавантажити nginx: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Не вдалося перезавантажити Nginx на %{node}, відповідь: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Nginx успішно перезавантажено на %{node}" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Помилка перезавантаження віддаленого Nginx" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Успішне перезавантаження віддаленого Nginx" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "" @@ -3959,22 +4445,56 @@ msgstr "Успішно видалено" msgid "Rename" msgstr "Перейменувати" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "Не вдалося перейменувати %{orig_path} на %{new_path} у %{env_name}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "%{orig_path} успішно перейменовано на %{new_path} у %{env_name}" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Помилка перейменування віддаленої конфігурації" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Вдале налаштування успішно перейменовано" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Помилка перейменування віддаленого сайту" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Успішне перейменування віддаленого сайту" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Помилка перейменування віддаленого потоку" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Вдале потік успішно перейменовано" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Не вдалося перейменувати сайт %{name} на %{new_name} у %{node}" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "Сайт %{name} успішно перейменовано на %{new_name} на %{node}" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "Не вдалося перейменувати потік %{name} на %{new_name} на %{node}" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Потік %{name} успішно перейменовано на %{new_name} на %{node}" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Успішно перейменовано" @@ -4037,9 +4557,9 @@ msgid "" "shared library memory, which will be repeated calculated for multiple " "processes" msgstr "" -"Розмір резидентного набору: Фактична пам'ять, резидентна у фізичній " -"пам'яті, включаючи всю пам'ять спільних бібліотек, яка буде повторно " -"обчислюватися для кількох процесів" +"Розмір резидентного набору: Фактична пам'ять, резидентна у фізичній пам'яті, " +"включаючи всю пам'ять спільних бібліотек, яка буде повторно обчислюватися " +"для кількох процесів" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -4056,6 +4576,22 @@ msgstr "Перезавантажити" msgid "Restart Nginx" msgstr "Перезапустити Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Не вдалося перезапустити Nginx на %{node}, відповідь: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Nginx успішно перезапущено на %{node}" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Помилка перезапуску віддаленого Nginx" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Віддалений перезапуск Nginx успішний" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "" @@ -4269,14 +4805,40 @@ msgstr "Зберегти" msgid "Save Directive" msgstr "Зберегти директиву" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Помилка збереження віддаленого сайту" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Віддалений сайт успішно збережено" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Помилка збереження віддаленого потоку" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Віддалений потік успішно збережено" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Не вдалося зберегти сайт %{name} на %{node}" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Сайт %{name} успішно збережено на %{node}" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Не вдалося зберегти потік %{name} на %{node}" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Потік %{name} успішно збережено на %{node}" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Успішно збережено" @@ -4387,7 +4949,7 @@ msgstr "Вибрано {count} файлів" msgid "Selector" msgstr "Селектор" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Самоперевірка" @@ -4477,21 +5039,19 @@ msgstr "Налаштування провайдера HTTP01-виклику" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath порожній, див. " -"https://nginxui.com/guide/config-nginx.html для отримання додаткової " -"інформації" +"Settings.NginxLogSettings.AccessLogPath порожній, див. https://nginxui.com/" +"guide/config-nginx.html для отримання додаткової інформації" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath порожній, див. " -"https://nginxui.com/guide/config-nginx.html для отримання додаткової " -"інформації" +"Settings.NginxLogSettings.ErrorLogPath порожній, див. https://nginxui.com/" +"guide/config-nginx.html для отримання додаткової інформації" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4533,6 +5093,10 @@ msgstr "Журнали сайту" msgid "Site not found" msgstr "Сайт не знайдено" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "Каталог сайтів існує" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Список сайтів" @@ -4571,7 +5135,8 @@ msgstr "Вміст SSL-сертифіката" #: src/constants/errors/system.ts:8 msgid "SSL certificate file must be under Nginx configuration directory: {0}" -msgstr "Файл SSL-сертифіката повинен знаходитися в каталозі конфігурації Nginx: {0}" +msgstr "" +"Файл SSL-сертифіката повинен знаходитися в каталозі конфігурації Nginx: {0}" #: src/constants/errors/system.ts:6 msgid "SSL certificate file not found" @@ -4662,6 +5227,14 @@ msgstr "Сховище" msgid "Storage Configuration" msgstr "Конфігурація сховища" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"Не вдалося перевірити конфігурацію сховища для завдання резервного " +"копіювання %{backup_name}, помилка: %{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4689,6 +5262,10 @@ msgstr "Потік увімкнено" msgid "Stream not found" msgstr "Потік не знайдено" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Каталог Streams існує" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Каталог Streams-available не існує" @@ -4716,29 +5293,17 @@ msgstr "Успіх" msgid "Sunday" msgstr "Неділя" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Підтримка зв’язку з бекендом через протокол Server-Sent Events. Якщо ваш " -"Nginx UI використовується через зворотний проксі Nginx, перейдіть за цим " -"посиланням, щоб написати відповідний конфігураційний файл: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "Підтримка зв'язку з бекендом через протокол WebSocket. Якщо ваш Nginx UI " -"використовується через зворотний проксі Nginx, перегляньте це посилання, " -"щоб написати відповідний конфігураційний файл: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"використовується через зворотний проксі Nginx, перегляньте це посилання, щоб " +"написати відповідний конфігураційний файл: https://nginxui.com/guide/nginx-" +"proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4775,19 +5340,35 @@ msgstr "Синхронізувати" msgid "Sync Certificate" msgstr "Синхронізувати сертифікат" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "Не вдалося синхронізувати сертифікат %{cert_name} з %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "Сертифікат %{cert_name} успішно синхронізовано з %{env_name}" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Помилка синхронізації сертифіката" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Сертифікат успішно синхронізовано" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "Не вдалося синхронізувати конфігурацію %{config_name} з %{env_name}" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "Конфігурацію %{config_name} успішно синхронізовано з %{env_name}" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Помилка синхронізації конфігурації" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Успішна синхронізація конфігурації" @@ -4904,11 +5485,10 @@ msgstr "Введений текст не є ключем SSL-сертифіка #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"Шлях до журналу не знаходиться серед шляхів у " -"settings.NginxSettings.LogDirWhiteList" +"Шлях до журналу не знаходиться серед шляхів у settings.NginxSettings." +"LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4920,7 +5500,8 @@ msgstr "" "двокрапки та крапки." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "Модель, яка використовується для завершення коду. Якщо вона не встановлена, " "буде використовуватися модель чату." @@ -5006,8 +5587,7 @@ msgstr "" #: src/views/certificate/components/AutoCertManagement.vue:45 msgid "This Auto Cert item is invalid, please remove it." msgstr "" -"Цей елемент автоматичного сертифікату є недійсним, будь ласка, видаліть " -"його." +"Цей елемент автоматичного сертифікату є недійсним, будь ласка, видаліть його." #: src/views/certificate/components/AutoCertManagement.vue:35 msgid "This certificate is managed by Nginx UI" @@ -5036,15 +5616,21 @@ msgid "This field should not be empty" msgstr "Це поле не повинно бути порожнім" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "Це поле має містити лише літери, символи Unicode, цифри та -_." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "Це поле має містити лише літери, символи Unicode, цифри та -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "" +"Це тестове повідомлення, надіслане на %{timestamp} з користувача Nginx." + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " @@ -5067,9 +5653,9 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Цей сайт налаштований як сервер за замовчуванням (default_server) для HTTPS " "(порт 443). IP-сертифікати вимагають підтримки Центру сертифікації (CA) і " @@ -5077,13 +5663,13 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" -"Цей сайт використовує шаблонне ім’я сервера (_), яке зазвичай вказує на " -"IP-сертифікат. IP-сертифікати вимагають підтримки Центру сертифікації (CA) " -"і можуть бути недоступні у всіх провайдерів ACME." +"Цей сайт використовує шаблонне ім’я сервера (_), яке зазвичай вказує на IP-" +"сертифікат. IP-сертифікати вимагають підтримки Центру сертифікації (CA) і " +"можуть бути недоступні у всіх провайдерів ACME." #: src/views/backup/components/BackupCreator.vue:141 msgid "" @@ -5120,8 +5706,10 @@ msgstr "" "після завершення відновлення." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." -msgstr "Це оновить або перевстановить Nginx UI на %{nodeNames} до версії %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgstr "" +"Це оновить або перевстановить Nginx UI на %{nodeNames} до версії %{version}." #: src/views/preference/tabs/AuthSettings.vue:92 msgid "Throttle" @@ -5158,8 +5746,8 @@ msgid "" "To enable it, you need to install the Google or Microsoft Authenticator app " "on your mobile phone." msgstr "" -"Щоб увімкнути його, вам потрібно встановити додаток Google Authenticator " -"або Microsoft Authenticator на свій мобільний телефон." +"Щоб увімкнути його, вам потрібно встановити додаток Google Authenticator або " +"Microsoft Authenticator на свій мобільний телефон." #: src/views/preference/components/AuthSettings/AddPasskey.vue:94 msgid "" @@ -5168,15 +5756,15 @@ msgid "" "and restart Nginx UI." msgstr "" "Для забезпечення безпеки конфігурацію WebAuthn не можна додати через " -"інтерфейс. Будь ласка, налаштуйте вручну наступне у файлі конфігурації " -"app.ini та перезапустіть Nginx UI." +"інтерфейс. Будь ласка, налаштуйте вручну наступне у файлі конфігурації app." +"ini та перезапустіть Nginx UI." #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" "Щоб гарантувати нормальну роботу автоматичного поновлення сертифікатів, нам " @@ -5489,10 +6077,10 @@ msgid "" "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." msgstr "" -"Попередження: Схоже, що це приватна IP-адреса. Публічні центри " -"сертифікації, такі як Let's Encrypt, не можуть видавати сертифікати для " -"приватних IP. Використовуйте публічну IP-адресу або розгляньте можливість " -"використання приватного центру сертифікації." +"Попередження: Схоже, що це приватна IP-адреса. Публічні центри сертифікації, " +"такі як Let's Encrypt, не можуть видавати сертифікати для приватних IP. " +"Використовуйте публічну IP-адресу або розгляньте можливість використання " +"приватного центру сертифікації." #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5504,8 +6092,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Ми видалимо конфігурацію HTTPChallenge з цього файлу та перезавантажимо " "Nginx. Ви впевнені, що хочете продовжити?" @@ -5625,8 +6213,8 @@ msgstr "Так" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" "Ви отримуєте доступ до цього терміналу через незахищене HTTP-з’єднання в " "домені, який не є локальним. Це може призвести до витоку конфіденційної " @@ -5656,13 +6244,15 @@ msgstr "Тепер ви можете закрити це діалогове ві msgid "" "You have not configured the settings of Webauthn, so you cannot add a " "passkey." -msgstr "Ви не налаштували параметри WebAuthn, тому не можете додати ключ доступу." +msgstr "" +"Ви не налаштували параметри WebAuthn, тому не можете додати ключ доступу." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" -"Ви ще не ввімкнули двофакторну аутентифікацію. Будь ласка, увімкніть її, " -"щоб згенерувати коди відновлення." +"Ви ще не ввімкнули двофакторну аутентифікацію. Будь ласка, увімкніть її, щоб " +"згенерувати коди відновлення." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94 msgid "You have not generated recovery codes yet." @@ -5685,457 +6275,20 @@ msgstr "Ваші старі коди більше не працюватимут msgid "Your passkeys" msgstr "Ваші ключі доступу" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "" -#~ "[Nginx UI] Користувач ACME: %{name}, Електронна пошта: %{email}, Каталог " -#~ "CA: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "" -#~ "[Nginx UI] Резервне копіювання поточного сертифіката для подальшого " -#~ "відкликання" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Сертифікат успішно оновлено" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Сертифікат успішно відкликано" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] Сертифікат використовувався для сервера, перезавантаження " -#~ "TLS-сертифіката сервера" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] Створення клієнта для спрощення зв’язку з сервером CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Змінні середовища очищено" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Завершено" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Сертифікат успішно видано" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Отримання сертифіката" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Підготовка до відкликання сертифіката" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Підготовка конфігурацій lego" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Перезавантаження nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Відкликання завершено" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Відкликання сертифіката" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Відкликання старого сертифіката" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] Налаштування провайдера виклику DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Налаштування змінних середовища" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] Налаштування провайдера HTTP01-виклику" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Запис приватного ключа сертифіката на диск" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Запис сертифіката на диск" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Автоматичне резервне копіювання завершено" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Помилка конфігурації автоматичного резервного копіювання" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Автоматичне резервне копіювання не вдалося" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Не вдалося зберегти автоматичну резервну копію" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "" -#~ "Завдання резервного копіювання %{backup_name} успішно завершено, файл: " -#~ "%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "Завдання резервного копіювання %{backup_name} не вдалося під час " -#~ "завантаження в сховище, помилка: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "" -#~ "Не вдалося виконати завдання резервного копіювання %{backup_name}, помилка: " -#~ "%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "Термін дії сертифіката %{name} закінчився" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "Сертифікат %{name} закінчиться через %{days} днів" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "Термін дії сертифіката %{name} закінчиться через 1 день" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Повідомлення про закінчення терміну дії сертифіката" - -#~ msgid "Certificate Expired" -#~ msgstr "Термін дії сертифіката закінчився" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Сертифікат незабаром закінчується" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Сертифікат не знайдено: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Сертифікат успішно відкликано" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Перевірте, чи існує /var/run/docker.sock. Якщо ви використовуєте офіційний " -#~ "образ Docker Nginx UI, переконайтеся, що сокет Docker змонтовано таким " -#~ "чином: `-v /var/run/docker.sock:/var/run/docker.sock`. Офіційний образ " -#~ "Nginx UI використовує /var/run/docker.sock для зв’язку з Docker Engine " -#~ "хоста через API Docker Client. Ця функція використовується для керування " -#~ "Nginx в іншому контейнері та виконання заміни контейнера замість заміни " -#~ "бінарного файлу під час OTA-оновлень Nginx UI, щоб гарантувати, що " -#~ "залежності контейнера також оновлюються. Якщо вам не потрібна ця функція, " -#~ "додайте змінну середовища NGINX_UI_IGNORE_DOCKER_SOCKET=true до контейнера." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Перевірте, чи існує шлях до журналу доступу nginx. За замовчуванням цей " -#~ "шлях отримується з 'nginx -V'. Якщо його не вдається отримати або отриманий " -#~ "шлях не вказує на дійсний існуючий файл, буде повідомлено про помилку. У " -#~ "цьому випадку вам потрібно змінити файл конфігурації, щоб вказати шлях до " -#~ "журналу доступу. Докладніше див. у документації: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Перевірити, чи існує каталог конфігурації nginx" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Перевірити, чи існує файл конфігурації nginx" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Перевірте, чи існує шлях до журналу помилок nginx. За замовчуванням цей " -#~ "шлях отримується з 'nginx -V'. Якщо його не вдається отримати або отриманий " -#~ "шлях не вказує на дійсний існуючий файл, буде повідомлено про помилку. У " -#~ "цьому випадку вам потрібно змінити файл конфігурації, щоб вказати шлях до " -#~ "журналу помилок. Докладніше див. у документації: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Перевірте, чи існує шлях до PID Nginx. За замовчуванням цей шлях " -#~ "отримується з команди 'nginx -V'. Якщо його не вдається отримати, буде " -#~ "повідомлено про помилку. У цьому випадку вам потрібно змінити " -#~ "конфігураційний файл, щоб вказати шлях до PID Nginx. Докладніше див. у " -#~ "документації: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Перевірте, чи існує шлях до sbin nginx" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Перевірити, чи включає файл nginx.conf директорію conf.d" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Перевірити, чи nginx.conf включає каталог sites-enabled" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Перевірити, чи включає nginx.conf каталог streams-enabled" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Перевірте, чи каталоги sites-available та sites-enabled знаходяться в " -#~ "каталозі конфігурації nginx" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Перевірте, чи каталоги streams-available та streams-enabled знаходяться в " -#~ "каталозі конфігурації nginx" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Не вдалося видалити %{path} на %{env_name}" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "%{path} на %{env_name} успішно видалено" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Помилка видалення віддаленої конфігурації" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Віддалена конфігурація успішно видалена" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Помилка видалення віддаленого потоку" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Віддалений потік успішно видалено" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Не вдалося видалити сайт %{name} з %{node}" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Сайт %{name} успішно видалено з %{node}" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Не вдалося видалити потік %{name} з %{node}" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "Потік %{name} успішно видалено з %{node}" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Помилка вимкнення технічного обслуговування віддаленого сайту" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Вимкнення технічного обслуговування віддаленого сайту успішне" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Помилка вимкнення віддаленого потоку" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Віддалений потік успішно вимкнено" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Не вдалося вимкнути сайт %{name} з %{node}" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Сайт %{name} успішно вимкнено з %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Не вдалося вимкнути обслуговування сайту %{name} на %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Обслуговування сайту %{name} на %{node} успішно вимкнено" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Не вдалося вимкнути потік %{name} з %{node}" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Потік %{name} успішно вимкнено з %{node}" - -#~ msgid "Docker socket exists" -#~ msgstr "Сокет Docker існує" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Помилка увімкнення технічного обслуговування віддаленого сайту" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Успішне ввімкнення режиму обслуговування віддаленого сайту" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Помилка ввімкнення віддаленого потоку" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Віддалений потік успішно ввімкнено" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "Не вдалося увімкнути технічне обслуговування сайту %{name} на %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Обслуговування сайту %{name} на %{node} успішно ввімкнено" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "Не вдалося увімкнути сайт %{name} на %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Сайт %{name} успішно увімкнено на %{node}" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "Не вдалося увімкнути потік %{name} на %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Потік %{name} успішно ввімкнено на %{node}" - -#~ msgid "External Notification Test" -#~ msgstr "Тест зовнішнього сповіщення" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Не вдалося видалити сертифікат з бази даних: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Не вдалося відкликати сертифікат: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "Файл журналу %{log_path} не є звичайним файлом. Якщо ви використовуєте " -#~ "nginx-ui у контейнері Docker, будь ласка, зверніться до " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html для отримання " -#~ "додаткової інформації." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Шлях до журналу доступу Nginx існує" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Каталог конфігурації Nginx існує" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Файл входу конфігурації Nginx існує" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Шлях до журналу помилок Nginx існує" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Шлях PID Nginx існує" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Шлях sbin для Nginx існує" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf включає каталог conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf включає каталог sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf включає каталог streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Не вдалося перезавантажити Nginx на %{node}, відповідь: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Nginx успішно перезавантажено на %{node}" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Помилка перезавантаження віддаленого Nginx" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Успішне перезавантаження віддаленого Nginx" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Не вдалося перейменувати %{orig_path} на %{new_path} у %{env_name}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "%{orig_path} успішно перейменовано на %{new_path} у %{env_name}" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Помилка перейменування віддаленого потоку" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Вдале потік успішно перейменовано" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Не вдалося перейменувати сайт %{name} на %{new_name} у %{node}" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Сайт %{name} успішно перейменовано на %{new_name} на %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Не вдалося перейменувати потік %{name} на %{new_name} на %{node}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Потік %{name} успішно перейменовано на %{new_name} на %{node}" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Не вдалося перезапустити Nginx на %{node}, відповідь: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Nginx успішно перезапущено на %{node}" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Помилка перезапуску віддаленого Nginx" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Віддалений перезапуск Nginx успішний" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Помилка збереження віддаленого потоку" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Віддалений потік успішно збережено" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Не вдалося зберегти сайт %{name} на %{node}" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Сайт %{name} успішно збережено на %{node}" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Не вдалося зберегти потік %{name} на %{node}" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Потік %{name} успішно збережено на %{node}" - -#~ msgid "Sites directory exists" -#~ msgstr "Каталог сайтів існує" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "Не вдалося перевірити конфігурацію сховища для завдання резервного " -#~ "копіювання %{backup_name}, помилка: %{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Каталог Streams існує" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Не вдалося синхронізувати сертифікат %{cert_name} з %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Сертифікат %{cert_name} успішно синхронізовано з %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "Не вдалося синхронізувати конфігурацію %{config_name} з %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Конфігурацію %{config_name} успішно синхронізовано з %{env_name}" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "Це тестове повідомлення, надіслане на %{timestamp} з користувача Nginx." +#~ "Підтримка зв’язку з бекендом через протокол Server-Sent Events. Якщо ваш " +#~ "Nginx UI використовується через зворотний проксі Nginx, перейдіть за цим " +#~ "посиланням, щоб написати відповідний конфігураційний файл: https://" +#~ "nginxui.com/guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." -#~ msgstr "Якщо залишити порожнім, буде використовуватися стандартний каталог CA." +#~ msgstr "" +#~ "Якщо залишити порожнім, буде використовуватися стандартний каталог CA." #~ msgid "Save error %{msg}" #~ msgstr "Помилка збереження %{msg}" @@ -6221,12 +6374,12 @@ msgstr "Ваші ключі доступу" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "Перевірте, чи існує /var/run/docker.sock. Якщо ви використовуєте офіційний " -#~ "Docker-образ Nginx UI, переконайтеся, що сокет Docker підключено таким " -#~ "чином: `-v /var/run/docker.sock:/var/run/docker.sock`." +#~ "Перевірте, чи існує /var/run/docker.sock. Якщо ви використовуєте " +#~ "офіційний Docker-образ Nginx UI, переконайтеся, що сокет Docker " +#~ "підключено таким чином: `-v /var/run/docker.sock:/var/run/docker.sock`." #~ msgid "Check if the nginx access log path exists" #~ msgstr "Перевірити, чи існує шлях до журналу доступу nginx" diff --git a/app/src/language/vi_VN/app.po b/app/src/language/vi_VN/app.po index 35e649c1..39cfa4fd 100644 --- a/app/src/language/vi_VN/app.po +++ b/app/src/language/vi_VN/app.po @@ -5,10 +5,98 @@ msgstr "" "Language-Team: none\n" "Language: vi_VN\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "" +"[Nginx UI] Người dùng ACME: %{name}, Email: %{email}, Thư mục CA: %{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] Đang sao lưu chứng chỉ hiện tại để thu hồi sau này" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] Gia hạn chứng chỉ thành công" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] Hủy chứng chỉ thành công" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "" +"[Nginx UI] Chứng chỉ đã được sử dụng cho máy chủ, đang tải lại chứng chỉ TLS " +"của máy chủ" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] Tạo máy khách để tạo điều kiện giao tiếp với máy chủ CA" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] Đã dọn dẹp biến môi trường" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] Đã hoàn thành" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] Đã cấp chứng chỉ thành công" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] Đang lấy chứng chỉ" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] Chuẩn bị thu hồi chứng chỉ" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] Đang chuẩn bị cấu hình lego" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] Đang tải lại nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] Đã hoàn tất thu hồi" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] Đang thu hồi chứng chỉ" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] Đang thu hồi chứng chỉ cũ" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] Đang thiết lập nhà cung cấp thử thách DNS01" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] Đang thiết lập biến môi trường" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] Đang thiết lập nhà cung cấp thử thách HTTP01" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] Đang ghi khóa riêng của chứng chỉ vào ổ đĩa" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] Đang ghi chứng chỉ vào ổ đĩa" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* Bao gồm các nút từ nhóm %{groupName} và các nút được chọn thủ công" @@ -140,6 +228,7 @@ msgstr "Sau đó, làm mới trang này và nhấp vào thêm khóa truy cập m msgid "All" msgstr "Tất cả" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "Tất cả mã khôi phục đã được sử dụng" @@ -153,7 +242,8 @@ msgstr "" "không, việc xin cấp chứng chỉ sẽ thất bại." #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "" "Bất kỳ địa chỉ IP có thể truy cập nào đều có thể được sử dụng với các cơ " "quan cấp chứng chỉ riêng tư" @@ -238,7 +328,8 @@ msgstr "Bạn có chắc chắn muốn xóa vị trí này không?" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:109 msgid "Are you sure you want to restart Nginx on the following sync nodes?" -msgstr "Bạn có chắc chắn muốn khởi động lại Nginx trên các nút đồng bộ sau không?" +msgstr "" +"Bạn có chắc chắn muốn khởi động lại Nginx trên các nút đồng bộ sau không?" #: src/language/curd.ts:26 msgid "Are you sure you want to restore?" @@ -252,7 +343,7 @@ msgstr "Hỏi ChatGPT" msgid "Assistant" msgstr "Trợ lý" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "Cố gắng sửa chữa" @@ -291,6 +382,22 @@ msgstr "auto = lõi cpu" msgid "Auto Backup" msgstr "Sao lưu tự động" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "Sao lưu tự động hoàn tất" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "Lỗi cấu hình sao lưu tự động" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "Sao lưu tự động thất bại" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "Lưu trữ sao lưu tự động thất bại" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -352,7 +459,8 @@ msgstr "Sao lưu" #: src/components/SystemRestore/SystemRestoreContent.vue:155 msgid "Backup file integrity check failed, it may have been tampered with" -msgstr "Kiểm tra tính toàn vẹn của tập tin sao lưu thất bại, có thể đã bị can thiệp" +msgstr "" +"Kiểm tra tính toàn vẹn của tập tin sao lưu thất bại, có thể đã bị can thiệp" #: src/constants/errors/backup.ts:41 msgid "Backup file not found: {0}" @@ -386,6 +494,22 @@ msgstr "Đường dẫn sao lưu không nằm trong các đường dẫn truy c msgid "Backup Schedule" msgstr "Lịch trình sao lưu" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "" +"Tác vụ sao lưu %{backup_name} đã hoàn thành thành công, tệp: %{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "" +"Tác vụ sao lưu %{backup_name} thất bại trong quá trình tải lên lưu trữ, lỗi: " +"%{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "Tác vụ sao lưu %{backup_name} không thể thực thi, lỗi: %{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "Loại sao lưu" @@ -558,6 +682,20 @@ msgstr "Đường dẫn chứng chỉ không nằm trong thư mục cấu hình msgid "certificate" msgstr "chứng chỉ" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "Chứng chỉ %{name} đã hết hạn" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "Chứng chỉ %{name} sẽ hết hạn sau %{days} ngày" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "Chứng chỉ %{name} sẽ hết hạn trong 1 ngày" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "Nội dung chứng chỉ và khóa riêng tư không thể để trống" @@ -566,6 +704,20 @@ msgstr "Nội dung chứng chỉ và khóa riêng tư không thể để trống msgid "Certificate decode error" msgstr "Lỗi giải mã chứng chỉ" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "Thông báo hết hạn chứng chỉ" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "Chứng chỉ đã hết hạn" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "Chứng chỉ sắp hết hạn" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "Tải xuống tệp chứng chỉ thành công" @@ -574,6 +726,10 @@ msgstr "Tải xuống tệp chứng chỉ thành công" msgid "Certificate name cannot be empty" msgstr "Tên chứng chỉ không được để trống" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "Không tìm thấy chứng chỉ: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "Lỗi phân tích chứng chỉ" @@ -595,6 +751,10 @@ msgstr "Khoảng thời gian gia hạn chứng chỉ" msgid "Certificate renewed successfully" msgstr "Gia hạn chứng chỉ thành công" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "Hủy chứng chỉ thành công" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -660,13 +820,122 @@ msgstr "Kiểm tra" msgid "Check again" msgstr "Kiểm tra lại" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"Kiểm tra xem /var/run/docker.sock có tồn tại không. Nếu bạn đang sử dụng " +"hình ảnh Docker chính thức của Nginx UI, hãy đảm bảo rằng ổ cắm Docker được " +"gắn kết như sau: `-v /var/run/docker.sock:/var/run/docker.sock`. Hình ảnh " +"chính thức Nginx UI sử dụng /var/run/docker.sock để giao tiếp với Docker " +"Engine của máy chủ thông qua API Docker Client. Tính năng này được sử dụng " +"để kiểm soát Nginx trong một container khác và thực hiện thay thế container " +"thay vì thay thế nhị phân trong quá trình nâng cấp OTA của Nginx UI để đảm " +"bảo các phụ thuộc container cũng được nâng cấp. Nếu bạn không cần tính năng " +"này, hãy thêm biến môi trường NGINX_UI_IGNORE_DOCKER_SOCKET=true vào " +"container." + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " "prevents using Passkeys and clipboard features" msgstr "" -"Kiểm tra xem HTTPS có được bật không. Sử dụng HTTP bên ngoài localhost " -"không an toàn và ngăn chặn việc sử dụng tính năng Passkeys và clipboard" +"Kiểm tra xem HTTPS có được bật không. Sử dụng HTTP bên ngoài localhost không " +"an toàn và ngăn chặn việc sử dụng tính năng Passkeys và clipboard" + +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"Kiểm tra xem đường dẫn nhật ký truy cập nginx có tồn tại không. Theo mặc " +"định, đường dẫn này được lấy từ 'nginx -V'. Nếu không thể lấy được hoặc " +"đường dẫn lấy được không trỏ đến một tệp hợp lệ đang tồn tại, một lỗi sẽ " +"được báo cáo. Trong trường hợp này, bạn cần sửa đổi tệp cấu hình để chỉ định " +"đường dẫn nhật ký truy cập. Tham khảo tài liệu để biết thêm chi tiết: " +"https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "Kiểm tra xem thư mục cấu hình nginx có tồn tại không" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "Kiểm tra xem tệp cấu hình đầu vào của nginx có tồn tại không" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"Kiểm tra xem đường dẫn nhật ký lỗi của nginx có tồn tại không. Theo mặc " +"định, đường dẫn này được lấy từ 'nginx -V'. Nếu không thể lấy được hoặc " +"đường dẫn lấy được không trỏ đến một tệp hợp lệ đang tồn tại, một lỗi sẽ " +"được báo cáo. Trong trường hợp này, bạn cần sửa đổi tệp cấu hình để chỉ định " +"đường dẫn nhật ký lỗi. Tham khảo tài liệu để biết thêm chi tiết: https://" +"nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"Kiểm tra xem đường dẫn PID của Nginx có tồn tại không. Theo mặc định, đường " +"dẫn này được lấy từ lệnh 'nginx -V'. Nếu không thể lấy được, một lỗi sẽ được " +"báo cáo. Trong trường hợp này, bạn cần sửa đổi tệp cấu hình để chỉ định " +"đường dẫn PID của Nginx. Tham khảo tài liệu để biết thêm chi tiết: https://" +"nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "Kiểm tra xem đường dẫn sbin của nginx có tồn tại không" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "Kiểm tra xem tệp nginx.conf có bao gồm thư mục conf.d không" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "Kiểm tra xem tệp nginx.conf có bao gồm thư mục sites-enabled không" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "Kiểm tra xem tệp nginx.conf có bao gồm thư mục streams-enabled không" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Kiểm tra xem các thư mục sites-available và sites-enabled có nằm trong thư " +"mục cấu hình nginx không" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"Kiểm tra xem các thư mục streams-available và streams-enabled có nằm trong " +"thư mục cấu hình nginx không" #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" @@ -912,8 +1181,8 @@ msgid "" "Create system backups including Nginx configuration and Nginx UI settings. " "Backup files will be automatically downloaded to your computer." msgstr "" -"Tạo bản sao lưu hệ thống bao gồm cấu hình Nginx và cài đặt Nginx UI. Các " -"tệp sao lưu sẽ tự động được tải xuống máy tính của bạn." +"Tạo bản sao lưu hệ thống bao gồm cấu hình Nginx và cài đặt Nginx UI. Các tệp " +"sao lưu sẽ tự động được tải xuống máy tính của bạn." #: src/views/backup/AutoBackup/AutoBackup.vue:229 #: src/views/environments/group/columns.ts:72 @@ -1033,7 +1302,8 @@ msgstr "Giải mã thất bại" #: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:150 msgid "Define shared memory zone name and size, e.g. proxy_cache:10m" -msgstr "Xác định tên và kích thước vùng bộ nhớ dùng chung, ví dụ proxy_cache:10m" +msgstr "" +"Xác định tên và kích thước vùng bộ nhớ dùng chung, ví dụ proxy_cache:10m" #: src/components/NgxConfigEditor/NgxServer.vue:110 #: src/components/NgxConfigEditor/NgxUpstream.vue:78 src/language/curd.ts:9 @@ -1046,6 +1316,14 @@ msgstr "Xác định tên và kích thước vùng bộ nhớ dùng chung, ví d msgid "Delete" msgstr "Xoá" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "Xóa %{path} trên %{env_name} thất bại" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "Đã xóa %{path} trên %{env_name} thành công" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "Xóa chứng chỉ" @@ -1058,18 +1336,51 @@ msgstr "Xác nhận xóa" msgid "Delete Permanently" msgstr "Xóa Vĩnh Viễn" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "Lỗi xóa cấu hình từ xa" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "Xóa cấu hình từ xa thành công" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "Lỗi xóa trang web từ xa" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "Xóa trang web từ xa thành công" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "Lỗi xóa luồng từ xa" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "Xóa luồng từ xa thành công" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "Xóa trang %{name} từ %{node} thất bại" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "Đã xóa trang web %{name} từ %{node} thành công" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "Xoá trang web: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "Xóa luồng %{name} từ %{node} thất bại" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "Đã xóa luồng %{name} từ %{node} thành công" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "Xóa luồng: %{stream_name}" @@ -1156,14 +1467,56 @@ msgstr "Vô hiệu hóa" msgid "Disable auto-renewal failed for %{name}" msgstr "Vô hiệu hóa gia hạn tự động thất bại cho %{name}" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "Lỗi vô hiệu hóa trang từ xa" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "Lỗi tắt bảo trì trang web từ xa" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "Vô hiệu hóa bảo trì trang web từ xa thành công" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "Đã vô hiệu hóa trang web từ xa thành công" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "Lỗi tắt luồng từ xa" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "Vô hiệu hóa luồng từ xa thành công" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "Không thể vô hiệu hóa trang web %{name} từ %{node}" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "Đã vô hiệu hóa trang %{name} từ %{node} thành công" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "Không thể tắt bảo trì trang web %{name} trên %{node}" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "Đã tắt bảo trì trang web %{name} trên %{node} thành công" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "Không thể tắt luồng %{name} từ %{node}" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "Đã vô hiệu hóa luồng %{name} từ %{node} thành công" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1234,6 +1587,10 @@ msgstr "Bạn có muốn xóa upstream này không?" msgid "Docker client not initialized" msgstr "Máy khách Docker chưa được khởi tạo" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Ổ cắm Docker tồn tại" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Ổ cắm Docker không tồn tại" @@ -1384,14 +1741,56 @@ msgstr "Bật HTTPS" msgid "Enable Proxy Cache" msgstr "Bật bộ nhớ đệm proxy" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "Lỗi kích hoạt trang từ xa" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "Lỗi bật bảo trì trang web từ xa" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "Kích hoạt chế độ bảo trì trang web từ xa thành công" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "Kích hoạt trang từ xa thành công" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "Lỗi bật luồng từ xa" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "Bật luồng từ xa thành công" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "Không thể bật chế độ bảo trì cho trang web %{name} trên %{node}" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "Đã bật chế độ bảo trì trang web %{name} trên %{node} thành công" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "Không thể kích hoạt trang web %{name} trên %{node}" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "Đã bật trang web %{name} trên %{node} thành công" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "Không thể bật luồng %{name} trên %{node}" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "Đã bật luồng %{name} trên %{node} thành công" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "Bật module stub_status" @@ -1534,11 +1933,11 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "" -"ID khóa liên kết tài khoản bên ngoài (tùy chọn). Bắt buộc đối với một số " -"nhà cung cấp ACME như ZeroSSL." +"ID khóa liên kết tài khoản bên ngoài (tùy chọn). Bắt buộc đối với một số nhà " +"cung cấp ACME như ZeroSSL." #: src/views/preference/tabs/NginxSettings.vue:49 msgid "External Docker Container" @@ -1548,6 +1947,10 @@ msgstr "Container Docker bên ngoài" msgid "External notification configuration not found" msgstr "Không tìm thấy cấu hình thông báo bên ngoài" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "Kiểm tra thông báo bên ngoài" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1702,6 +2105,10 @@ msgstr "Không thể giải mã thư mục Nginx UI: {0}" msgid "Failed to delete certificate" msgstr "Xóa chứng chỉ không thành công" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "Xóa chứng chỉ từ cơ sở dữ liệu thất bại: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1868,6 +2275,10 @@ msgstr "Khôi phục tệp giao diện Nginx thất bại: {0}" msgid "Failed to revoke certificate" msgstr "Không thể thu hồi chứng chỉ" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "Không thể thu hồi chứng chỉ: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "Không thể lưu cài đặt hiệu suất Nginx" @@ -1991,8 +2402,8 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "" "Đối với chứng chỉ dựa trên IP, vui lòng chỉ định địa chỉ IP của máy chủ sẽ " "được đưa vào chứng chỉ." @@ -2149,7 +2560,8 @@ msgstr "Nếu bạn muốn tự động thu hồi chứng chỉ cũ, vui lòng b #: src/views/preference/components/AuthSettings/AddPasskey.vue:75 msgid "If your browser supports WebAuthn Passkey, a dialog box will appear." -msgstr "Nếu trình duyệt của bạn hỗ trợ WebAuthn Passkey, một hộp thoại sẽ xuất hiện." +msgstr "" +"Nếu trình duyệt của bạn hỗ trợ WebAuthn Passkey, một hộp thoại sẽ xuất hiện." #: src/components/AutoCertForm/AutoCertForm.vue:271 msgid "" @@ -2517,6 +2929,16 @@ msgstr "Locations" msgid "Log" msgstr "Nhật ký" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"Tệp nhật ký %{log_path} không phải là tệp thông thường. Nếu bạn đang sử dụng " +"nginx-ui trong container docker, vui lòng tham khảo https://nginxui.com/" +"zh_CN/guide/config-nginx-log.html để biết thêm thông tin." + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "Danh sách nhật ký" @@ -2539,19 +2961,19 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" "Logrotate được kích hoạt mặc định trong hầu hết các bản phân phối Linux phổ " -"biến dành cho người dùng cài đặt Nginx UI trực tiếp trên máy chủ, vì vậy " -"bạn không cần phải thay đổi các tham số trên trang này. Đối với người dùng " -"cài đặt Nginx UI bằng container Docker, bạn có thể kích hoạt thủ công tùy " -"chọn này. Bộ lập lịch tác vụ crontab của Nginx UI sẽ thực thi lệnh " -"logrotate theo khoảng thời gian bạn đặt (tính bằng phút)." +"biến dành cho người dùng cài đặt Nginx UI trực tiếp trên máy chủ, vì vậy bạn " +"không cần phải thay đổi các tham số trên trang này. Đối với người dùng cài " +"đặt Nginx UI bằng container Docker, bạn có thể kích hoạt thủ công tùy chọn " +"này. Bộ lập lịch tác vụ crontab của Nginx UI sẽ thực thi lệnh logrotate theo " +"khoảng thời gian bạn đặt (tính bằng phút)." #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2862,6 +3284,10 @@ msgstr "Đầu ra của Nginx -T trống" msgid "Nginx Access Log Path" msgstr "Vị trí lưu log truy cập (Access log) của Nginx" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Đường dẫn nhật ký truy cập Nginx tồn tại" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2891,6 +3317,14 @@ msgstr "Cấu hình Nginx không bao gồm stream-enabled" msgid "Nginx config directory is not set" msgstr "Thư mục cấu hình Nginx chưa được thiết lập" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Thư mục cấu hình Nginx tồn tại" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Tập tin cấu hình đầu vào Nginx tồn tại" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Cấu hình Nginx đã được khôi phục" @@ -2925,6 +3359,10 @@ msgstr "Tỷ lệ sử dụng CPU của Nginx" msgid "Nginx Error Log Path" msgstr "Vị trí lưu log lỗi (Error log) của Nginx" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Đường dẫn nhật ký lỗi Nginx tồn tại" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Lỗi Nginx: {0}" @@ -2962,6 +3400,10 @@ msgstr "Mức sử dụng bộ nhớ Nginx" msgid "Nginx PID Path" msgstr "Đường dẫn PID của Nginx" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Đường dẫn PID của Nginx tồn tại" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Lệnh Tải lại Nginx" @@ -2991,6 +3433,10 @@ msgstr "Các thao tác khởi động lại Nginx đã được gửi đến cá msgid "Nginx restarted successfully" msgstr "Khởi động lại Nginx thành công" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Đường dẫn sbin của Nginx tồn tại" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Lệnh kiểm tra cấu hình Nginx" @@ -3014,11 +3460,22 @@ msgstr "Cấu hình Nginx UI đã được khôi phục" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "" -"Cấu hình Nginx UI đã được khôi phục và sẽ tự động khởi động lại sau vài " -"giây." +"Cấu hình Nginx UI đã được khôi phục và sẽ tự động khởi động lại sau vài giây." + +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf bao gồm thư mục conf.d" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf bao gồm thư mục sites-enabled" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf bao gồm thư mục streams-enabled" #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 @@ -3332,9 +3789,9 @@ msgid "" "password replacement or as a 2FA method." msgstr "" "Passkey là thông tin xác thực WebAuthn dùng để xác minh danh tính của bạn " -"thông qua chạm, nhận diện khuôn mặt, mật khẩu thiết bị hoặc mã PIN. Chúng " -"có thể được sử dụng để thay thế mật khẩu hoặc làm phương thức xác thực hai " -"yếu tố (2FA)." +"thông qua chạm, nhận diện khuôn mặt, mật khẩu thiết bị hoặc mã PIN. Chúng có " +"thể được sử dụng để thay thế mật khẩu hoặc làm phương thức xác thực hai yếu " +"tố (2FA)." #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3435,8 +3892,7 @@ msgid "" "Please enter a name for the passkey you wish to create and click the OK " "button below." msgstr "" -"Vui lòng nhập tên cho khóa truy cập bạn muốn tạo và nhấp vào nút OK bên " -"dưới." +"Vui lòng nhập tên cho khóa truy cập bạn muốn tạo và nhấp vào nút OK bên dưới." #: src/components/AutoCertForm/AutoCertForm.vue:98 msgid "Please enter a valid IPv4 address (0-255 per octet)" @@ -3483,20 +3939,22 @@ msgstr "Vui lòng điền vào các trường cấu hình S3 bắt buộc" msgid "" "Please fill in the API authentication credentials provided by your DNS " "provider." -msgstr "Vui lòng điền thông tin xác thực API do nhà cung cấp DNS của bạn cung cấp" +msgstr "" +"Vui lòng điền thông tin xác thực API do nhà cung cấp DNS của bạn cung cấp" #: src/components/AutoCertForm/AutoCertForm.vue:168 msgid "" "Please first add credentials in Certification > DNS Credentials, and then " "select one of the credentialsbelow to request the API of the DNS provider." msgstr "" -"Trước tiên, vui lòng thêm thông tin xác thực trong Chứng chỉ > Thông tin " -"xác thực DNS, sau đó chọn nhà cung cấp DNS" +"Trước tiên, vui lòng thêm thông tin xác thực trong Chứng chỉ > Thông tin xác " +"thực DNS, sau đó chọn nhà cung cấp DNS" +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "" "Vui lòng tạo mã khôi phục mới trong phần tùy chọn ngay lập tức để tránh bị " "khóa." @@ -3514,13 +3972,15 @@ msgstr "Vui lòng nhập tên thư mục" msgid "" "Please input name, this will be used as the filename of the new " "configuration!" -msgstr "Vui lòng nhập tên, tên này sẽ được sử dụng làm tên tệp của cấu hình mới!" +msgstr "" +"Vui lòng nhập tên, tên này sẽ được sử dụng làm tên tệp của cấu hình mới!" #: src/views/site/site_list/SiteDuplicate.vue:33 msgid "" "Please input name, this will be used as the filename of the new " "configuration." -msgstr "Vui lòng nhập tên, tên này sẽ được sử dụng làm tên tệp cho cấu hình mới." +msgstr "" +"Vui lòng nhập tên, tên này sẽ được sử dụng làm tên tệp cho cấu hình mới." #: src/views/install/components/InstallForm.vue:25 msgid "Please input your E-mail!" @@ -3540,7 +4000,8 @@ msgid "Please log in." msgstr "Vui lòng đăng nhập." #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "Lưu ý đơn vị cấu hình thời gian bên dưới được tính bằng giây." #: src/views/install/components/InstallView.vue:102 @@ -3670,8 +4131,7 @@ msgstr "Thư mục được bảo vệ" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." +"reverse proxy, please configure the protocol separately in the reverse proxy." msgstr "" "Cấu hình giao thức chỉ có hiệu lực khi kết nối trực tiếp. Nếu sử dụng proxy " "ngược, vui lòng cấu hình giao thức riêng trong proxy ngược." @@ -3723,7 +4183,7 @@ msgstr "Đọc" msgid "Receive" msgstr "Nhận" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "Kiểm tra lại" @@ -3811,6 +4271,22 @@ msgstr "Tải lại Nginx" msgid "Reload nginx failed: {0}" msgstr "Tải lại nginx thất bại: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "Tải lại Nginx trên %{node} thất bại, phản hồi: %{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "Tải lại Nginx trên %{node} thành công" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "Lỗi tải lại Nginx từ xa" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "Tải lại Nginx từ xa thành công" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "Yêu cầu tải lại thất bại, vui lòng kiểm tra kết nối mạng của bạn" @@ -3850,22 +4326,56 @@ msgstr "Đã xóa thành công" msgid "Rename" msgstr "Đổi tên" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "Đổi tên %{orig_path} thành %{new_path} trên %{env_name} thất bại" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "Đã đổi tên %{orig_path} thành %{new_path} trên %{env_name} thành công" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "Lỗi đổi tên cấu hình từ xa" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "Đổi tên cấu hình từ xa thành công" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "Lỗi đổi tên trang từ xa" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "Đổi tên trang từ xa thành công" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "Lỗi đổi tên luồng từ xa" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "Đổi tên luồng từ xa thành công" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "Đổi tên trang web %{name} thành %{new_name} trên %{node} thất bại" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "Đã đổi tên trang web %{name} thành %{new_name} trên %{node} thành công" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "Đổi tên luồng %{name} thành %{new_name} trên %{node} thất bại" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "Đổi tên luồng %{name} thành %{new_name} trên %{node} thành công" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "Đổi tên thành công" @@ -3929,8 +4439,8 @@ msgid "" "processes" msgstr "" "Kích thước tập hợp thường trú: Bộ nhớ thực tế thường trú trong bộ nhớ vật " -"lý, bao gồm tất cả bộ nhớ thư viện dùng chung, sẽ được tính toán lặp lại " -"cho nhiều tiến trình" +"lý, bao gồm tất cả bộ nhớ thư viện dùng chung, sẽ được tính toán lặp lại cho " +"nhiều tiến trình" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -3947,6 +4457,22 @@ msgstr "Khởi động lại" msgid "Restart Nginx" msgstr "Khởi động lại Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "Khởi động lại Nginx trên %{node} thất bại, phản hồi: %{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "Khởi động lại Nginx thành công trên %{node}" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "Lỗi khởi động lại Nginx từ xa" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "Khởi động lại Nginx từ xa thành công" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "Yêu cầu khởi động lại thất bại, vui lòng kiểm tra kết nối mạng của bạn" @@ -4008,8 +4534,8 @@ msgid "" "Revoking a certificate will affect any services currently using it. This " "action cannot be undone." msgstr "" -"Việc thu hồi chứng chỉ sẽ ảnh hưởng đến bất kỳ dịch vụ nào hiện đang sử " -"dụng nó. Hành động này không thể hoàn tác." +"Việc thu hồi chứng chỉ sẽ ảnh hưởng đến bất kỳ dịch vụ nào hiện đang sử dụng " +"nó. Hành động này không thể hoàn tác." #: src/views/preference/tabs/AuthSettings.vue:75 msgid "RP Display Name" @@ -4158,14 +4684,40 @@ msgstr "Lưu" msgid "Save Directive" msgstr "Lưu Directive" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "Lỗi lưu trang từ xa" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "Lưu trang từ xa thành công" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "Lỗi lưu luồng từ xa" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "Lưu luồng từ xa thành công" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "Lưu trang %{name} vào %{node} thất bại" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "Đã lưu trang %{name} vào %{node} thành công" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "Lưu luồng %{name} vào %{node} thất bại" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "Đã lưu luồng %{name} vào %{node} thành công" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "Lưu thành công" @@ -4205,7 +4757,8 @@ msgstr "Kết quả quét" #: src/views/preference/components/AuthSettings/TOTP.vue:69 msgid "Scan the QR code with your mobile phone to add the account to the app." -msgstr "Quét mã QR bằng điện thoại di động của bạn để thêm tài khoản vào ứng dụng." +msgstr "" +"Quét mã QR bằng điện thoại di động của bạn để thêm tài khoản vào ứng dụng." #: src/views/nginx_log/NginxLogList.vue:101 msgid "Scanning logs..." @@ -4274,14 +4827,15 @@ msgstr "Đã chọn {count} tệp" msgid "Selector" msgstr "Bộ chọn" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "Tự kiểm tra" #: src/components/SelfCheck/SelfCheckHeaderBanner.vue:37 #: src/components/SelfCheck/SelfCheckHeaderBanner.vue:60 msgid "Self check failed, Nginx UI may not work properly" -msgstr "Tự kiểm tra thất bại, giao diện Nginx có thể không hoạt động bình thường" +msgstr "" +"Tự kiểm tra thất bại, giao diện Nginx có thể không hoạt động bình thường" #: src/views/dashboard/ServerAnalytic.vue:35 #: src/views/dashboard/ServerAnalytic.vue:351 @@ -4341,8 +4895,8 @@ msgid "" "Set the recursive nameservers to override the systems nameservers for the " "step of DNS challenge." msgstr "" -"Đặt các máy chủ tên đệ quy để ghi đè các máy chủ tên hệ thống trong bước " -"thử thách DNS." +"Đặt các máy chủ tên đệ quy để ghi đè các máy chủ tên hệ thống trong bước thử " +"thách DNS." #: src/views/site/components/SiteStatusSelect.vue:116 msgid "set to maintenance mode" @@ -4362,19 +4916,19 @@ msgstr "Đang thiết lập nhà cung cấp thử thách HTTP01" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath trống, tham khảo " -"https://nginxui.com/guide/config-nginx.html để biết thêm thông tin" +"Settings.NginxLogSettings.AccessLogPath trống, tham khảo https://nginxui.com/" +"guide/config-nginx.html để biết thêm thông tin" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath trống, tham khảo " -"https://nginxui.com/guide/config-nginx.html để biết thêm thông tin" +"Settings.NginxLogSettings.ErrorLogPath trống, tham khảo https://nginxui.com/" +"guide/config-nginx.html để biết thêm thông tin" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4416,6 +4970,10 @@ msgstr "Nhật ký trang web" msgid "Site not found" msgstr "Không tìm thấy trang web" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "Thư mục trang web tồn tại" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "Danh sách Website" @@ -4545,6 +5103,14 @@ msgstr "Storage" msgid "Storage Configuration" msgstr "Cấu hình lưu trữ" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "" +"Xác thực cấu hình lưu trữ cho tác vụ sao lưu %{backup_name} thất bại, lỗi: " +"%{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4572,6 +5138,10 @@ msgstr "Luồng đã được bật" msgid "Stream not found" msgstr "Không tìm thấy luồng" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Thư mục Streams tồn tại" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Thư mục Streams-available không tồn tại" @@ -4599,29 +5169,17 @@ msgstr "Thành công" msgid "Sunday" msgstr "Chủ nhật" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"Hỗ trợ giao tiếp với backend thông qua giao thức Server-Sent Events. Nếu " -"Nginx UI của bạn đang được sử dụng qua proxy ngược Nginx, vui lòng tham " -"khảo liên kết này để viết tệp cấu hình tương ứng: " -"https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" -"Hỗ trợ giao tiếp với backend thông qua giao thức WebSocket. Nếu Nginx UI " -"của bạn đang được sử dụng thông qua proxy ngược Nginx, vui lòng tham khảo " -"liên kết này để viết tệp cấu hình tương ứng: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"Hỗ trợ giao tiếp với backend thông qua giao thức WebSocket. Nếu Nginx UI của " +"bạn đang được sử dụng thông qua proxy ngược Nginx, vui lòng tham khảo liên " +"kết này để viết tệp cấu hình tương ứng: https://nginxui.com/guide/nginx-" +"proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4658,19 +5216,35 @@ msgstr "Đồng bộ" msgid "Sync Certificate" msgstr "Đồng bộ chứng chỉ" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "Đồng bộ chứng chỉ %{cert_name} tới %{env_name} thất bại" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "Đồng bộ chứng chỉ %{cert_name} tới %{env_name} thành công" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "Lỗi đồng bộ chứng chỉ" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "Đồng bộ chứng chỉ thành công" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "Đồng bộ cấu hình %{config_name} tới %{env_name} thất bại" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "Đồng bộ cấu hình %{config_name} tới %{env_name} thành công" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "Lỗi đồng bộ cấu hình" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "Đồng bộ cấu hình thành công" @@ -4766,16 +5340,16 @@ msgid "" "since it was last issued." msgstr "" "Chứng chỉ cho tên miền sẽ được kiểm tra sau mỗi 30 phút và sẽ được gia hạn " -"nếu đã hơn 1 tuần hoặc khoảng thời gian bạn đặt trong cài đặt kể từ lần " -"phát hành cuối cùng." +"nếu đã hơn 1 tuần hoặc khoảng thời gian bạn đặt trong cài đặt kể từ lần phát " +"hành cuối cùng." #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" "The ICP Number should only contain letters, unicode, numbers, hyphens, " "dashes, colons, and dots." msgstr "" -"Số ICP chỉ được chứa chữ cái, unicode, số, dấu gạch ngang, dấu gạch dài, " -"dấu hai chấm và dấu chấm." +"Số ICP chỉ được chứa chữ cái, unicode, số, dấu gạch ngang, dấu gạch dài, dấu " +"hai chấm và dấu chấm." #: src/views/certificate/components/CertificateContentEditor.vue:96 msgid "The input is not a SSL Certificate" @@ -4787,11 +5361,10 @@ msgstr "Đầu vào không phải là Khóa Chứng chỉ SSL" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "" -"Đường dẫn nhật ký không nằm trong các đường dẫn trong " -"settings.NginxSettings.LogDirWhiteList" +"Đường dẫn nhật ký không nằm trong các đường dẫn trong settings.NginxSettings." +"LogDirWhiteList" #: src/views/preference/tabs/OpenAISettings.vue:23 #: src/views/preference/tabs/OpenAISettings.vue:89 @@ -4803,7 +5376,8 @@ msgstr "" "dài, dấu hai chấm và dấu chấm." #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "" "Mô hình được sử dụng để hoàn thành mã, nếu không được đặt, mô hình trò " "chuyện sẽ được sử dụng." @@ -4833,8 +5407,8 @@ msgid "" "The Public Security Number should only contain letters, unicode, numbers, " "hyphens, dashes, colons, and dots." msgstr "" -"Số Công an chỉ được chứa chữ cái, unicode, số, dấu gạch ngang, dấu gạch " -"dài, dấu hai chấm và dấu chấm." +"Số Công an chỉ được chứa chữ cái, unicode, số, dấu gạch ngang, dấu gạch dài, " +"dấu hai chấm và dấu chấm." #: src/views/dashboard/components/NodeAnalyticItem.vue:107 msgid "" @@ -4842,9 +5416,9 @@ msgid "" "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." msgstr "" -"Phiên bản Nginx UI từ xa không tương thích với phiên bản Nginx UI cục bộ. " -"Để tránh các lỗi tiềm ẩn, vui lòng nâng cấp phiên bản Nginx UI từ xa để " -"khớp với phiên bản cục bộ." +"Phiên bản Nginx UI từ xa không tương thích với phiên bản Nginx UI cục bộ. Để " +"tránh các lỗi tiềm ẩn, vui lòng nâng cấp phiên bản Nginx UI từ xa để khớp " +"với phiên bản cục bộ." #: src/components/AutoCertForm/AutoCertForm.vue:155 msgid "" @@ -4917,22 +5491,27 @@ msgid "This field should not be empty" msgstr "Trường này không được để trống" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "Trường này chỉ được chứa chữ cái, ký tự Unicode, số và -_." #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "Trường này chỉ được chứa chữ cái, ký tự Unicode, số và -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "Đây là một thông báo thử nghiệm được gửi tại %{Timestamp} từ nginx UI." + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " "After enabling it, you can view performance statistics" msgstr "" -"Mô-đun này cung cấp dữ liệu như thống kê yêu cầu Nginx, số lượng kết nối, " -"v.v. Sau khi bật, bạn có thể xem thống kê hiệu suất" +"Mô-đun này cung cấp dữ liệu như thống kê yêu cầu Nginx, số lượng kết nối, v." +"v. Sau khi bật, bạn có thể xem thống kê hiệu suất" #: src/views/preference/tabs/ExternalNotify.vue:15 msgid "This notification is disabled" @@ -4943,14 +5522,14 @@ msgid "" "This operation will only remove the certificate from the database. The " "certificate files on the file system will not be deleted." msgstr "" -"Thao tác này sẽ chỉ xóa chứng chỉ khỏi cơ sở dữ liệu. Các tệp chứng chỉ " -"trên hệ thống tệp sẽ không bị xóa." +"Thao tác này sẽ chỉ xóa chứng chỉ khỏi cơ sở dữ liệu. Các tệp chứng chỉ trên " +"hệ thống tệp sẽ không bị xóa." #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" "Trang web này được cấu hình làm máy chủ mặc định (default_server) cho HTTPS " "(cổng 443). Chứng chỉ IP yêu cầu hỗ trợ từ Tổ chức cấp chứng chỉ (CA) và có " @@ -4958,13 +5537,13 @@ msgstr "" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." msgstr "" "Trang web này sử dụng tên máy chủ đại diện (_) thường chỉ ra chứng chỉ dựa " -"trên IP. Chứng chỉ IP yêu cầu hỗ trợ từ Tổ chức cấp chứng chỉ (CA) và có " -"thể không khả dụng với tất cả nhà cung cấp ACME." +"trên IP. Chứng chỉ IP yêu cầu hỗ trợ từ Tổ chức cấp chứng chỉ (CA) và có thể " +"không khả dụng với tất cả nhà cung cấp ACME." #: src/views/backup/components/BackupCreator.vue:141 msgid "" @@ -4997,11 +5576,12 @@ msgid "" "This will restore configuration files and database. Nginx UI will restart " "after the restoration is complete." msgstr "" -"Thao tác này sẽ khôi phục các tệp cấu hình và cơ sở dữ liệu. Giao diện " -"Nginx sẽ khởi động lại sau khi quá trình khôi phục hoàn tất." +"Thao tác này sẽ khôi phục các tệp cấu hình và cơ sở dữ liệu. Giao diện Nginx " +"sẽ khởi động lại sau khi quá trình khôi phục hoàn tất." #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "" "Thao tác này sẽ nâng cấp hoặc cài đặt lại Nginx UI trên %{nodeNames} lên " "phiên bản %{version}." @@ -5051,20 +5631,20 @@ msgid "" "and restart Nginx UI." msgstr "" "Để đảm bảo bảo mật, cấu hình WebAuthn không thể được thêm qua giao diện " -"người dùng. Vui lòng cấu hình thủ công các mục sau trong tệp cấu hình " -"app.ini và khởi động lại Nginx UI." +"người dùng. Vui lòng cấu hình thủ công các mục sau trong tệp cấu hình app." +"ini và khởi động lại Nginx UI." #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"Để đảm bảo tính năng tự động gia hạn chứng chỉ có thể hoạt động bình " -"thường, chúng tôi cần thêm một vị trí có thể ủy quyền yêu cầu từ cơ quan có " -"thẩm quyền đến chương trình phụ trợ và chúng tôi cần lưu tệp này và tải lại " +"Để đảm bảo tính năng tự động gia hạn chứng chỉ có thể hoạt động bình thường, " +"chúng tôi cần thêm một vị trí có thể ủy quyền yêu cầu từ cơ quan có thẩm " +"quyền đến chương trình phụ trợ và chúng tôi cần lưu tệp này và tải lại " "Nginx. Bạn có chắc chắn muốn Tiếp tục?" #: src/views/preference/tabs/OpenAISettings.vue:36 @@ -5362,9 +5942,9 @@ msgid "" "you have a valid backup file and security token, and carefully select what " "to restore." msgstr "" -"Cảnh báo: Thao tác khôi phục sẽ ghi đè lên cấu hình hiện tại. Đảm bảo bạn " -"có tệp sao lưu hợp lệ và mã bảo mật, đồng thời cẩn thận chọn nội dung cần " -"khôi phục." +"Cảnh báo: Thao tác khôi phục sẽ ghi đè lên cấu hình hiện tại. Đảm bảo bạn có " +"tệp sao lưu hợp lệ và mã bảo mật, đồng thời cẩn thận chọn nội dung cần khôi " +"phục." #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" @@ -5373,8 +5953,8 @@ msgid "" "or consider using a private CA." msgstr "" "Cảnh báo: Đây có vẻ là một địa chỉ IP riêng. Các tổ chức cấp chứng chỉ công " -"cộng như Let's Encrypt không thể cấp chứng chỉ cho các IP riêng. Hãy sử " -"dụng địa chỉ IP công cộng hoặc cân nhắc sử dụng tổ chức cấp chứng chỉ riêng." +"cộng như Let's Encrypt không thể cấp chứng chỉ cho các IP riêng. Hãy sử dụng " +"địa chỉ IP công cộng hoặc cân nhắc sử dụng tổ chức cấp chứng chỉ riêng." #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5386,8 +5966,8 @@ msgstr "" #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" msgstr "" "Chúng tôi sẽ xóa cấu hình HTTPChallenge khỏi tệp này và tải lại Nginx. Bạn " "có muốn tiếp tục không?" @@ -5436,8 +6016,8 @@ msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." msgstr "" -"Khi bạn bật/tắt, xóa hoặc lưu trang web này, các nút được đặt trong Nhóm " -"Nút và các nút được chọn bên dưới sẽ được đồng bộ hóa." +"Khi bạn bật/tắt, xóa hoặc lưu trang web này, các nút được đặt trong Nhóm Nút " +"và các nút được chọn bên dưới sẽ được đồng bộ hóa." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" @@ -5505,12 +6085,12 @@ msgstr "Có" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." msgstr "" -"Bạn đang truy cập thiết bị đầu cuối này thông qua kết nối HTTP không an " -"toàn trên một miền không phải localhost. Điều này có thể làm lộ thông tin " -"nhạy cảm." +"Bạn đang truy cập thiết bị đầu cuối này thông qua kết nối HTTP không an toàn " +"trên một miền không phải localhost. Điều này có thể làm lộ thông tin nhạy " +"cảm." #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5536,13 +6116,15 @@ msgstr "Bạn có thể đóng hộp thoại này ngay bây giờ" msgid "" "You have not configured the settings of Webauthn, so you cannot add a " "passkey." -msgstr "Bạn chưa cấu hình cài đặt WebAuthn, vì vậy không thể thêm khóa truy cập." +msgstr "" +"Bạn chưa cấu hình cài đặt WebAuthn, vì vậy không thể thêm khóa truy cập." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "" -"Bạn chưa bật xác thực hai yếu tố. Vui lòng bật xác thực hai yếu tố để tạo " -"mã khôi phục." +"Bạn chưa bật xác thực hai yếu tố. Vui lòng bật xác thực hai yếu tố để tạo mã " +"khôi phục." #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94 msgid "You have not generated recovery codes yet." @@ -5565,447 +6147,16 @@ msgstr "Mã cũ của bạn sẽ không còn hoạt động nữa." msgid "Your passkeys" msgstr "Khóa truy cập của bạn" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] Người dùng ACME: %{name}, Email: %{email}, Thư mục CA: %{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] Đang sao lưu chứng chỉ hiện tại để thu hồi sau này" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] Gia hạn chứng chỉ thành công" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] Hủy chứng chỉ thành công" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "" -#~ "[Nginx UI] Chứng chỉ đã được sử dụng cho máy chủ, đang tải lại chứng chỉ " -#~ "TLS của máy chủ" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] Tạo máy khách để tạo điều kiện giao tiếp với máy chủ CA" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] Đã dọn dẹp biến môi trường" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] Đã hoàn thành" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] Đã cấp chứng chỉ thành công" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] Đang lấy chứng chỉ" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] Chuẩn bị thu hồi chứng chỉ" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] Đang chuẩn bị cấu hình lego" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] Đang tải lại nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] Đã hoàn tất thu hồi" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] Đang thu hồi chứng chỉ" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] Đang thu hồi chứng chỉ cũ" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] Đang thiết lập nhà cung cấp thử thách DNS01" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] Đang thiết lập biến môi trường" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] Đang thiết lập nhà cung cấp thử thách HTTP01" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] Đang ghi khóa riêng của chứng chỉ vào ổ đĩa" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] Đang ghi chứng chỉ vào ổ đĩa" - -#~ msgid "Auto Backup Completed" -#~ msgstr "Sao lưu tự động hoàn tất" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "Lỗi cấu hình sao lưu tự động" - -#~ msgid "Auto Backup Failed" -#~ msgstr "Sao lưu tự động thất bại" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "Lưu trữ sao lưu tự động thất bại" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "Tác vụ sao lưu %{backup_name} đã hoàn thành thành công, tệp: %{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "" -#~ "Tác vụ sao lưu %{backup_name} thất bại trong quá trình tải lên lưu trữ, " -#~ "lỗi: %{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "Tác vụ sao lưu %{backup_name} không thể thực thi, lỗi: %{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "Chứng chỉ %{name} đã hết hạn" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "Chứng chỉ %{name} sẽ hết hạn sau %{days} ngày" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "Chứng chỉ %{name} sẽ hết hạn trong 1 ngày" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "Thông báo hết hạn chứng chỉ" - -#~ msgid "Certificate Expired" -#~ msgstr "Chứng chỉ đã hết hạn" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "Chứng chỉ sắp hết hạn" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "Không tìm thấy chứng chỉ: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "Hủy chứng chỉ thành công" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "Kiểm tra xem /var/run/docker.sock có tồn tại không. Nếu bạn đang sử dụng " -#~ "hình ảnh Docker chính thức của Nginx UI, hãy đảm bảo rằng ổ cắm Docker được " -#~ "gắn kết như sau: `-v /var/run/docker.sock:/var/run/docker.sock`. Hình ảnh " -#~ "chính thức Nginx UI sử dụng /var/run/docker.sock để giao tiếp với Docker " -#~ "Engine của máy chủ thông qua API Docker Client. Tính năng này được sử dụng " -#~ "để kiểm soát Nginx trong một container khác và thực hiện thay thế container " -#~ "thay vì thay thế nhị phân trong quá trình nâng cấp OTA của Nginx UI để đảm " -#~ "bảo các phụ thuộc container cũng được nâng cấp. Nếu bạn không cần tính năng " -#~ "này, hãy thêm biến môi trường NGINX_UI_IGNORE_DOCKER_SOCKET=true vào " -#~ "container." - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "Kiểm tra xem đường dẫn nhật ký truy cập nginx có tồn tại không. Theo mặc " -#~ "định, đường dẫn này được lấy từ 'nginx -V'. Nếu không thể lấy được hoặc " -#~ "đường dẫn lấy được không trỏ đến một tệp hợp lệ đang tồn tại, một lỗi sẽ " -#~ "được báo cáo. Trong trường hợp này, bạn cần sửa đổi tệp cấu hình để chỉ " -#~ "định đường dẫn nhật ký truy cập. Tham khảo tài liệu để biết thêm chi tiết: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "Kiểm tra xem thư mục cấu hình nginx có tồn tại không" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "Kiểm tra xem tệp cấu hình đầu vào của nginx có tồn tại không" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "Kiểm tra xem đường dẫn nhật ký lỗi của nginx có tồn tại không. Theo mặc " -#~ "định, đường dẫn này được lấy từ 'nginx -V'. Nếu không thể lấy được hoặc " -#~ "đường dẫn lấy được không trỏ đến một tệp hợp lệ đang tồn tại, một lỗi sẽ " -#~ "được báo cáo. Trong trường hợp này, bạn cần sửa đổi tệp cấu hình để chỉ " -#~ "định đường dẫn nhật ký lỗi. Tham khảo tài liệu để biết thêm chi tiết: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "Kiểm tra xem đường dẫn PID của Nginx có tồn tại không. Theo mặc định, đường " -#~ "dẫn này được lấy từ lệnh 'nginx -V'. Nếu không thể lấy được, một lỗi sẽ " -#~ "được báo cáo. Trong trường hợp này, bạn cần sửa đổi tệp cấu hình để chỉ " -#~ "định đường dẫn PID của Nginx. Tham khảo tài liệu để biết thêm chi tiết: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "Kiểm tra xem đường dẫn sbin của nginx có tồn tại không" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "Kiểm tra xem tệp nginx.conf có bao gồm thư mục conf.d không" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "Kiểm tra xem tệp nginx.conf có bao gồm thư mục sites-enabled không" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "Kiểm tra xem tệp nginx.conf có bao gồm thư mục streams-enabled không" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "" -#~ "Kiểm tra xem các thư mục sites-available và sites-enabled có nằm trong thư " -#~ "mục cấu hình nginx không" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "" -#~ "Kiểm tra xem các thư mục streams-available và streams-enabled có nằm trong " -#~ "thư mục cấu hình nginx không" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "Xóa %{path} trên %{env_name} thất bại" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "Đã xóa %{path} trên %{env_name} thành công" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "Lỗi xóa cấu hình từ xa" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "Xóa cấu hình từ xa thành công" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "Lỗi xóa luồng từ xa" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "Xóa luồng từ xa thành công" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "Xóa trang %{name} từ %{node} thất bại" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "Đã xóa trang web %{name} từ %{node} thành công" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "Xóa luồng %{name} từ %{node} thất bại" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "Đã xóa luồng %{name} từ %{node} thành công" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "Lỗi tắt bảo trì trang web từ xa" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "Vô hiệu hóa bảo trì trang web từ xa thành công" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "Lỗi tắt luồng từ xa" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "Vô hiệu hóa luồng từ xa thành công" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "Không thể vô hiệu hóa trang web %{name} từ %{node}" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "Đã vô hiệu hóa trang %{name} từ %{node} thành công" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "Không thể tắt bảo trì trang web %{name} trên %{node}" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "Đã tắt bảo trì trang web %{name} trên %{node} thành công" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "Không thể tắt luồng %{name} từ %{node}" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "Đã vô hiệu hóa luồng %{name} từ %{node} thành công" - -#~ msgid "Docker socket exists" -#~ msgstr "Ổ cắm Docker tồn tại" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "Lỗi bật bảo trì trang web từ xa" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "Kích hoạt chế độ bảo trì trang web từ xa thành công" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "Lỗi bật luồng từ xa" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "Bật luồng từ xa thành công" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "Không thể bật chế độ bảo trì cho trang web %{name} trên %{node}" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "Đã bật chế độ bảo trì trang web %{name} trên %{node} thành công" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "Không thể kích hoạt trang web %{name} trên %{node}" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "Đã bật trang web %{name} trên %{node} thành công" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "Không thể bật luồng %{name} trên %{node}" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "Đã bật luồng %{name} trên %{node} thành công" - -#~ msgid "External Notification Test" -#~ msgstr "Kiểm tra thông báo bên ngoài" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "Xóa chứng chỉ từ cơ sở dữ liệu thất bại: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "Không thể thu hồi chứng chỉ: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "Tệp nhật ký %{log_path} không phải là tệp thông thường. Nếu bạn đang sử " -#~ "dụng nginx-ui trong container docker, vui lòng tham khảo " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html để biết thêm thông " -#~ "tin." - -#~ msgid "Nginx access log path exists" -#~ msgstr "Đường dẫn nhật ký truy cập Nginx tồn tại" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Thư mục cấu hình Nginx tồn tại" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Tập tin cấu hình đầu vào Nginx tồn tại" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Đường dẫn nhật ký lỗi Nginx tồn tại" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Đường dẫn PID của Nginx tồn tại" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Đường dẫn sbin của Nginx tồn tại" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf bao gồm thư mục conf.d" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf bao gồm thư mục sites-enabled" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf bao gồm thư mục streams-enabled" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Tải lại Nginx trên %{node} thất bại, phản hồi: %{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "Tải lại Nginx trên %{node} thành công" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "Lỗi tải lại Nginx từ xa" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "Tải lại Nginx từ xa thành công" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "Đổi tên %{orig_path} thành %{new_path} trên %{env_name} thất bại" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "Đã đổi tên %{orig_path} thành %{new_path} trên %{env_name} thành công" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "Lỗi đổi tên luồng từ xa" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "Đổi tên luồng từ xa thành công" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "Đổi tên trang web %{name} thành %{new_name} trên %{node} thất bại" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Đã đổi tên trang web %{name} thành %{new_name} trên %{node} thành công" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "Đổi tên luồng %{name} thành %{new_name} trên %{node} thất bại" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "Đổi tên luồng %{name} thành %{new_name} trên %{node} thành công" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "Khởi động lại Nginx trên %{node} thất bại, phản hồi: %{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "Khởi động lại Nginx thành công trên %{node}" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "Lỗi khởi động lại Nginx từ xa" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "Khởi động lại Nginx từ xa thành công" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "Lỗi lưu luồng từ xa" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "Lưu luồng từ xa thành công" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "Lưu trang %{name} vào %{node} thất bại" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "Đã lưu trang %{name} vào %{node} thành công" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "Lưu luồng %{name} vào %{node} thất bại" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "Đã lưu luồng %{name} vào %{node} thành công" - -#~ msgid "Sites directory exists" -#~ msgstr "Thư mục trang web tồn tại" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "" -#~ "Xác thực cấu hình lưu trữ cho tác vụ sao lưu %{backup_name} thất bại, lỗi: " -#~ "%{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Thư mục Streams tồn tại" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "Đồng bộ chứng chỉ %{cert_name} tới %{env_name} thất bại" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "Đồng bộ chứng chỉ %{cert_name} tới %{env_name} thành công" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "Đồng bộ cấu hình %{config_name} tới %{env_name} thất bại" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "Đồng bộ cấu hình %{config_name} tới %{env_name} thành công" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "Đây là một thông báo thử nghiệm được gửi tại %{Timestamp} từ nginx UI." +#~ "Hỗ trợ giao tiếp với backend thông qua giao thức Server-Sent Events. Nếu " +#~ "Nginx UI của bạn đang được sử dụng qua proxy ngược Nginx, vui lòng tham " +#~ "khảo liên kết này để viết tệp cấu hình tương ứng: https://nginxui.com/" +#~ "guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "Nếu để trống, thư mục CA mặc định sẽ được sử dụng." @@ -6094,8 +6245,8 @@ msgstr "Khóa truy cập của bạn" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" #~ "Kiểm tra xem /var/run/docker.sock có tồn tại không. Nếu bạn đang sử dụng " #~ "Docker Image chính thức của Nginx UI, hãy đảm bảo rằng ổ cắm Docker được " @@ -6190,11 +6341,14 @@ msgstr "Khóa truy cập của bạn" #~ msgstr "Nhân bản %{conf_name} thành %{node_name} thành công" #, fuzzy -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" #~ msgstr "Nhân bản %{conf_name} thành %{node_name} thành công" #, fuzzy -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" #~ msgstr "Nhân bản %{conf_name} thành %{node_name} thành công" #, fuzzy @@ -6208,7 +6362,8 @@ msgstr "Khóa truy cập của bạn" #~ msgstr "Nhân bản %{conf_name} thành %{node_name} thành công" #, fuzzy -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "Nhân bản %{conf_name} thành %{node_name} thành công" #, fuzzy diff --git a/app/src/language/zh_CN/app.po b/app/src/language/zh_CN/app.po index ce0629b5..b2642aea 100644 --- a/app/src/language/zh_CN/app.po +++ b/app/src/language/zh_CN/app.po @@ -5,16 +5,101 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2025-05-09 21:33+0800\n" "Last-Translator: 0xJacky \n" -"Language-Team: Chinese (Simplified Han script) " -"\n" +"Language-Team: Chinese (Simplified Han script) \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 3.6\n" "Generated-By: easygettext\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "[Nginx UI] ACME 用户:%{name},邮箱:%{email},CA 目录:%{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] 正在备份当前证书以便后续撤销" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] 证书更新成功" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] 证书成功撤销" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "[Nginx UI] 证书已用于服务器,正在重新加载服务器 TLS 证书" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] 正在创建客户端用于与 CA 服务器通信" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] 环境变量已清理" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] 已完成" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] 证书申请成功" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] 正在获取证书" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] 准备撤销证书" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] 正在准备 lego 配置" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] 重新加载 Nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] 吊销完成" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] 正在撤销证书" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] 正在撤销旧证书" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] 正在设置 DNS01 验证提供程序" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] 正在设置环境变量" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] 正在设置 HTTP01 验证提供程序" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] 正在将证书私钥写入磁盘" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] 正在将证书写入磁盘" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* 包含来自组 %{groupName} 的节点和手动选择的节点" @@ -146,6 +231,7 @@ msgstr "之后,请刷新此页面并再次点击添加通行密钥。" msgid "All" msgstr "全部" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "所有恢复代码已用完" @@ -157,7 +243,8 @@ msgid "" msgstr "所有选定的子域名必须属于同一 DNS 提供商,否则证书申请将失败。" #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "任何可访问的IP地址均可用于私有证书颁发机构" #: src/views/preference/tabs/OpenAISettings.vue:32 @@ -254,7 +341,7 @@ msgstr "与ChatGPT聊天" msgid "Assistant" msgstr "助手" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "尝试修复" @@ -293,6 +380,22 @@ msgstr "自动 = CPU 线程数" msgid "Auto Backup" msgstr "自动备份" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "自动备份完成" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "自动备份配置错误" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "自动备份失败" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "自动备份存储失败" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -388,6 +491,19 @@ msgstr "备份路径不在授予的访问路径中: {0}" msgid "Backup Schedule" msgstr "备份计划" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "备份任务 %{backup_name} 已完成,文件:%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "备份任务 %{backup_name} 在存储上传过程中失败,错误:%{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "备份任务 %{backup_name} 执行失败,错误:%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "备份类型" @@ -502,7 +618,9 @@ msgstr "CADir" msgid "" "Calculated based on worker_processes * worker_connections. Actual " "performance depends on hardware, configuration, and workload" -msgstr "基于 worker_processes * worker_connections 计算得出。实际性能取决于硬件、配置和工作负载" +msgstr "" +"基于 worker_processes * worker_connections 计算得出。实际性能取决于硬件、配置" +"和工作负载" #: src/components/ChatGPT/ChatMessage.vue:216 #: src/components/NgxConfigEditor/NgxServer.vue:61 @@ -558,6 +676,20 @@ msgstr "证书路径不在 Nginx 配置目录下" msgid "certificate" msgstr "证书" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "证书 %{name} 已过期" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "证书 %{name} 将在 %{days} 天后过期" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "证书 %{name} 将在1天后过期" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "证书内容和私钥内容不能为空" @@ -566,6 +698,20 @@ msgstr "证书内容和私钥内容不能为空" msgid "Certificate decode error" msgstr "证书解码错误" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "证书到期通知" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "证书已过期" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "证书即将过期" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "证书文件下载成功" @@ -574,6 +720,10 @@ msgstr "证书文件下载成功" msgid "Certificate name cannot be empty" msgstr "证书名称不能为空" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "未找到证书:%{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "证书解析错误" @@ -595,6 +745,10 @@ msgstr "证书续期间隔" msgid "Certificate renewed successfully" msgstr "证书更新成功" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "证书撤销成功" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -660,11 +814,109 @@ msgstr "检查" msgid "Check again" msgstr "重新检查" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"检查 /var/run/docker.sock 是否存在。如果您使用的是 Nginx UI 官方 Docker 镜" +"像,请确保以这种方式挂载 Docker 套接字:`-v /var/run/docker.sock:/var/run/" +"docker.sock`。Nginx UI 官方镜像使用 /var/run/docker.sock 通过 Docker Client " +"API 与主机 Docker Engine 通信。此功能用于在另一个容器中控制 Nginx,并在 " +"Nginx UI 的 OTA 升级期间执行容器替换而非二进制替换,以确保容器依赖项也得到升" +"级。如果您不需要此功能,请向容器添加环境变量 " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true。" + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " "prevents using Passkeys and clipboard features" -msgstr "检查是否启用了 HTTPS。在本地主机之外使用 HTTP 是不安全的,这也会导致无法使用 Passkey 和剪贴板功能" +msgstr "" +"检查是否启用了 HTTPS。在本地主机之外使用 HTTP 是不安全的,这也会导致无法使用 " +"Passkey 和剪贴板功能" + +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"检查 nginx 访问日志路径是否存在。默认情况下,此路径从 'nginx -V' 获取。如果无" +"法获取或获取的路径未指向有效的现有文件,将报告错误。在这种情况下,您需要修改" +"配置文件以指定访问日志路径。更多详情请参阅文档:https://nginxui.com/zh_CN/" +"guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "检查 Nginx 配置目录是否存在" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "检查 nginx 配置入口文件是否存在" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"检查 nginx 错误日志路径是否存在。默认情况下,该路径从 'nginx -V' 获取。如果无" +"法获取或获取的路径未指向有效的现有文件,将报错。此时需要修改配置文件以指定错" +"误日志路径。详情请参阅文档:https://nginxui.com/zh_CN/guide/config-nginx." +"html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"检查 Nginx PID 路径是否存在。默认情况下,该路径是从 'nginx -V' 获取的。如果无" +"法获取,将会报错。在这种情况下,您需要修改配置文件以指定 Nginx PID 路径。更多" +"详情请参阅文档:https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "检查 nginx sbin 路径是否存在" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "检查 nginx.conf 是否包含 conf.d 目录" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "检查 nginx.conf 是否包含 sites-enabled 目录" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "检查 nginx.conf 是否包含 streams-enabled 的目录" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "检查 sites-available 和 sites-enabled 目录是否位于 Nginx 配置目录下" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "检查 Nginx 配置目录下是否有 streams-available 和 streams-enabled 目录" #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" @@ -909,7 +1161,8 @@ msgstr "创建文件夹" msgid "" "Create system backups including Nginx configuration and Nginx UI settings. " "Backup files will be automatically downloaded to your computer." -msgstr "创建系统备份,包括 Nginx 配置和 Nginx UI 设置。备份文件将自动下载到你的电脑。" +msgstr "" +"创建系统备份,包括 Nginx 配置和 Nginx UI 设置。备份文件将自动下载到你的电脑。" #: src/views/backup/AutoBackup/AutoBackup.vue:229 #: src/views/environments/group/columns.ts:72 @@ -1042,6 +1295,14 @@ msgstr "定义共享内存区名称和大小,例如 proxy_cache:10m" msgid "Delete" msgstr "删除" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "删除 %{env_name} 上的 %{path} 失败" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "已在 %{env_name} 上成功删除 %{path}" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "删除证书" @@ -1054,18 +1315,51 @@ msgstr "删除确认" msgid "Delete Permanently" msgstr "彻底删除" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "删除远程配置错误" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "远程配置删除成功" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "删除远程站点错误" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "删除远程站点成功" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "删除远程 Stream 错误" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "删除远程 Stream 成功" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "部署 %{name} 到 %{node} 失败" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "成功从 %{node} 中删除站点 %{name}" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "删除站点: %{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "从 %{node} 删除 Stream %{name} 失败" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "已成功从 %{node} 删除 Stream %{name}" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "删除 Stream: %{stream_name}" @@ -1152,14 +1446,56 @@ msgstr "禁用" msgid "Disable auto-renewal failed for %{name}" msgstr "禁用 %{name} 的自动续期失败" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "禁用远程站点错误" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "禁用远程站点维护错误" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "远程站点维护已成功禁用" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "远程站点禁用成功" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "禁用远程 Stream 错误" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "禁用远程 Stream成功" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "在 %{node} 上禁用 %{name} 成功" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "在 %{node} 上禁用 %{name} 成功" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "停用站点 %{name} 维护 %{node} 失败" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "成功停用站点 %{name} 上 %{node} 的维护功能" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "在 %{node} 中启用 %{name} 失败" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "在 %{node} 上禁用 %{name} 成功" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1230,6 +1566,10 @@ msgstr "你想删除这个 Upstream 吗?" msgid "Docker client not initialized" msgstr "Docker 客户端未初始化" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Docker Socket 存在" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "不存在 Docker Socket" @@ -1277,7 +1617,9 @@ msgstr "试运行模式已启动" msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." -msgstr "由于某些浏览器的安全策略,除非在 localhost 上使用,否则不能在非 HTTPS 网站上使用 Passkey。" +msgstr "" +"由于某些浏览器的安全策略,除非在 localhost 上使用,否则不能在非 HTTPS 网站上" +"使用 Passkey。" #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1376,14 +1718,56 @@ msgstr "启用 HTTPS" msgid "Enable Proxy Cache" msgstr "启用代理缓存" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "启用远程站点错误" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "在 %{node} 上启用 %{site} 失败" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "成功启用远程站点维护" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "启用远程站点成功" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "启用远程 Steam 错误" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "启用远程 Stream 成功" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "在 %{node} 中为 %{name} 启用维护模式失败" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "在 %{node} 上成功启用站点 %{name} 维护模式" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "在 %{node} 中启用 %{name} 失败" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "在 %{node} 上启用 %{name} 成功" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "在 %{node} 中启用 %{name} 失败" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "在 %{node} 上启用 %{name} 成功" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "启用 stub_status 模块" @@ -1524,8 +1908,8 @@ msgstr "外部账户绑定 HMAC 密钥(可选)。应为 Base64 URL 编码格 #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "外部账户绑定密钥ID(可选)。某些ACME提供商(如ZeroSSL)需要此信息。" #: src/views/preference/tabs/NginxSettings.vue:49 @@ -1536,6 +1920,10 @@ msgstr "外部 Docker 容器" msgid "External notification configuration not found" msgstr "未找到外部通知配置" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "外部通知测试" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1690,6 +2078,10 @@ msgstr "解密 Nginx UI 目录失败:{0}" msgid "Failed to delete certificate" msgstr "删除证书失败" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "从数据库中删除证书失败:%{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1856,6 +2248,10 @@ msgstr "恢复 Nginx UI 文件失败:{0}" msgid "Failed to revoke certificate" msgstr "证书撤销失败" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "撤销证书失败:%{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "保存 Nginx 性能参数失败" @@ -1971,12 +2367,13 @@ msgstr "中国用户:https://cloud.nginxui.com/" msgid "" "For IP-based certificate configurations, only HTTP-01 challenge method is " "supported. DNS-01 challenge is not compatible with IP-based certificates." -msgstr "对于基于IP的证书配置,仅支持HTTP-01验证方法。DNS-01验证与基于IP的证书不兼容。" +msgstr "" +"对于基于IP的证书配置,仅支持HTTP-01验证方法。DNS-01验证与基于IP的证书不兼容。" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "对于基于IP的证书,请指定将包含在证书中的服务器IP地址。" #: src/constants/errors/middleware.ts:4 @@ -2119,7 +2516,9 @@ msgstr "ICP备案号" msgid "" "If the number of login failed attempts from a ip reach the max attempts in " "ban threshold minutes, the ip will be banned for a period of time." -msgstr "如果某个 IP 的登录失败次数达到禁用阈值分钟内的最大尝试次数,该 IP 将被禁止登录一段时间。" +msgstr "" +"如果某个 IP 的登录失败次数达到禁用阈值分钟内的最大尝试次数,该 IP 将被禁止登" +"录一段时间。" #: src/components/AutoCertForm/AutoCertForm.vue:280 msgid "" @@ -2332,7 +2731,8 @@ msgstr "Jwt 密钥" msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." -msgstr "请像保护密码一样安全地保管您的恢复代码。我们建议使用密码管理器保存它们。" +msgstr "" +"请像保护密码一样安全地保管您的恢复代码。我们建议使用密码管理器保存它们。" #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2489,6 +2889,15 @@ msgstr "Locations" msgid "Log" msgstr "日志" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"日志文件 %{log_path} 不是常规文件。如果在 Docker 容器中使用 Nginx UI,请参阅 " +"https://nginxui.com/zh_CN/guide/config-nginx-log.html 获取更多信息。" + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "日志列表" @@ -2511,16 +2920,17 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" -"对于在宿主机上安装 Nginx UI 的用户,大多数主流 Linux 发行版都默认启用 logrotate " -"定时任务,因此您无需修改本页面的参数。对于使用 Docker 容器安装 Nginx 用户界面的用户,您可以手动启用该选项。Nginx UI " -"的定时任务任务调度器将按照您设置的时间间隔(以分钟为单位)执行 logrotate 命令。" +"对于在宿主机上安装 Nginx UI 的用户,大多数主流 Linux 发行版都默认启用 " +"logrotate 定时任务,因此您无需修改本页面的参数。对于使用 Docker 容器安装 " +"Nginx 用户界面的用户,您可以手动启用该选项。Nginx UI 的定时任务任务调度器将按" +"照您设置的时间间隔(以分钟为单位)执行 logrotate 命令。" #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2549,7 +2959,9 @@ msgstr "创建证书目录错误:{0}" msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." -msgstr "在获取签发证书前,请确保配置文件中已将 .well-known 目录反向代理到 HTTPChallengePort。" +msgstr "" +"在获取签发证书前,请确保配置文件中已将 .well-known 目录反向代理到 " +"HTTPChallengePort。" #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2829,6 +3241,10 @@ msgstr "Nginx -T 的输出为空" msgid "Nginx Access Log Path" msgstr "Nginx 访问日志路径" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "存在 Nginx 访问日志路径" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2858,6 +3274,14 @@ msgstr "Nginx Conf 中未引用 stream-enabled" msgid "Nginx config directory is not set" msgstr "未设置 Nginx 配置目录" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Nginx 配置目录存在" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "存在 Nginx 配置入口文件" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Nginx 配置已恢复" @@ -2892,6 +3316,10 @@ msgstr "Nginx CPU 使用率" msgid "Nginx Error Log Path" msgstr "Nginx 错误日志路径" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "存在 Nginx 错误日志路径" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Nginx 错误:{0}" @@ -2929,6 +3357,10 @@ msgstr "Nginx 内存使用量" msgid "Nginx PID Path" msgstr "Nginx PID 路径" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Nginx PID 路径存在" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Nginx 重载命令" @@ -2958,6 +3390,10 @@ msgstr "Nginx 重启操作已发送到远程节点" msgid "Nginx restarted successfully" msgstr "Nginx 重启成功" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Nginx Sbin 路径存在" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Nginx 测试配置命令" @@ -2981,10 +3417,22 @@ msgstr "Nginx 用户界面配置已恢复" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "Nginx UI 配置已恢复,几秒钟后将自动重启。" +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf 包括 conf.d 目录" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf 包含 sites-enabled 目录" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "检查 nginx.conf 是否包含 streams-enabled 的目录" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3024,7 +3472,9 @@ msgstr "未配置服务器" msgid "" "No specific IP address found in server_name configuration. Please specify " "the server IP address below for the certificate." -msgstr "在 server_name 配置中未找到特定 IP 地址。请在下方指定服务器 IP 地址以获取证书。" +msgstr "" +"在 server_name 配置中未找到特定 IP 地址。请在下方指定服务器 IP 地址以获取证" +"书。" #: src/components/NgxConfigEditor/NgxUpstream.vue:103 msgid "No upstreams configured" @@ -3289,7 +3739,9 @@ msgid "" "Passkeys are webauthn credentials that validate your identity using touch, " "facial recognition, a device password, or a PIN. They can be used as a " "password replacement or as a 2FA method." -msgstr "Passkey 是一种网络认证凭据,可通过指纹、面部识别、设备密码或 PIN 码验证身份。它们可用作密码替代品或二步验证方法。" +msgstr "" +"Passkey 是一种网络认证凭据,可通过指纹、面部识别、设备密码或 PIN 码验证身份。" +"它们可用作密码替代品或二步验证方法。" #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3440,12 +3892,15 @@ msgstr "请填写 DNS 提供商提供的 API 验证凭据。" msgid "" "Please first add credentials in Certification > DNS Credentials, and then " "select one of the credentialsbelow to request the API of the DNS provider." -msgstr "请首先在 “证书”> “DNS 凭证” 中添加凭证,然后在下方选择一个凭证,请求 DNS 提供商的 API。" +msgstr "" +"请首先在 “证书”> “DNS 凭证” 中添加凭证,然后在下方选择一个凭证,请求 DNS 提供" +"商的 API。" +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "请立即在偏好设置中生成新的恢复码,以防止无法访问您的账户。" #: src/views/config/components/ConfigRightPanel/Basic.vue:27 @@ -3487,7 +3942,8 @@ msgid "Please log in." msgstr "请登录。" #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "请注意,下面的时间单位配置均以秒为单位。" #: src/views/install/components/InstallView.vue:102 @@ -3617,9 +4073,9 @@ msgstr "受保护目录" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." -msgstr "协议配置仅在直接连接时生效。如果使用反向代理,请在反向代理中单独配置协议。" +"reverse proxy, please configure the protocol separately in the reverse proxy." +msgstr "" +"协议配置仅在直接连接时生效。如果使用反向代理,请在反向代理中单独配置协议。" #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3668,7 +4124,7 @@ msgstr "读" msgid "Receive" msgstr "下载" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "重新检查" @@ -3684,7 +4140,9 @@ msgstr "恢复代码" msgid "" "Recovery codes are used to access your account when you lose access to your " "2FA device. Each code can only be used once." -msgstr "恢复代码用于在您无法访问双重身份验证设备时登录您的账户。每个代码只能使用一次。" +msgstr "" +"恢复代码用于在您无法访问双重身份验证设备时登录您的账户。每个代码只能使用一" +"次。" #: src/views/preference/tabs/CertSettings.vue:40 msgid "Recursive Nameservers" @@ -3752,6 +4210,22 @@ msgstr "重载 Nginx" msgid "Reload nginx failed: {0}" msgstr "重载 Nginx 失败: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "在 %{node} 上重载 Nginx 失败,响应:%{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "在 %{node} 上重载 Nginx 成功" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "重载远程 Nginx 错误" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "重载远程 Nginx 成功" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "重载请求失败,请检查网络连接" @@ -3791,22 +4265,56 @@ msgstr "删除成功" msgid "Rename" msgstr "重命名" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "成功将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path}" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "成功将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path}" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "远程配置重命名错误" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "重命名远程配置成功" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "重命名远程站点错误" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "重命名远程站点成功" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "重命名远程 Stream 错误" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "重命名远程 Stream成功" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "重命名成功" @@ -3868,7 +4376,9 @@ msgid "" "Resident Set Size: Actual memory resident in physical memory, including all " "shared library memory, which will be repeated calculated for multiple " "processes" -msgstr "驻留集大小:实际驻留在物理内存中的内存,包括所有共享库内存,将为多个进程重复计算" +msgstr "" +"驻留集大小:实际驻留在物理内存中的内存,包括所有共享库内存,将为多个进程重复" +"计算" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -3885,6 +4395,22 @@ msgstr "重启" msgid "Restart Nginx" msgstr "重启 Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "在 %{node} 上重启 Nginx 失败,响应:%{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "在 %{node} 上重启 Nginx 成功" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "重启远程 Nginx 错误" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "重启远程 Nginx 成功" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "重启请求失败,请检查网络连接" @@ -4094,14 +4620,40 @@ msgstr "保存" msgid "Save Directive" msgstr "保存指令" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "保存远程站点错误" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "保存远程站点成功" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "保存远程 Stream 错误" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "保存远程 Stream 成功" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "成功将站点 %{name} 保存到 %{node} 中" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "成功将站点 %{name} 保存到 %{node} 中" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "部署 %{name} 到 %{node} 失败" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "成功将站点 %{name} 保存到 %{node} 中" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "保存成功" @@ -4208,7 +4760,7 @@ msgstr "已选择 {count} 个文件" msgid "Selector" msgstr "选择器" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "自我检查" @@ -4294,19 +4846,19 @@ msgstr "使用 HTTP01 challenge provider" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath 为空,更多信息请参阅 " -"https://nginxui.com/guide/config-nginx.html" +"Settings.NginxLogSettings.AccessLogPath 为空,更多信息请参阅 https://nginxui." +"com/guide/config-nginx.html" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath为空,更多信息请参阅 " -"https://nginxui.com/guide/config-nginx.html" +"Settings.NginxLogSettings.ErrorLogPath为空,更多信息请参阅 https://nginxui." +"com/guide/config-nginx.html" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4348,6 +4900,10 @@ msgstr "站点列表" msgid "Site not found" msgstr "网站未找到" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "网站目录存在" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "站点列表" @@ -4477,6 +5033,12 @@ msgstr "存储" msgid "Storage Configuration" msgstr "存储配置" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "备份任务 %{backup_name} 的存储配置验证失败,错误:%{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4504,6 +5066,10 @@ msgstr "Stream 已启用" msgid "Stream not found" msgstr "Stream 未找到" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Streams 目录存在" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "Streams-available 目录不存在" @@ -4531,22 +5097,12 @@ msgstr "成功" msgid "Sunday" msgstr "星期日" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"支持通过 Server-Sent Events 协议与后端通信。如果您的 Nginx UI 是通过 Nginx " -"反向代理使用的,请参考此链接编写相应的配置文件:https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" "支持通过 WebSocket 协议与后端通信,如果您正在使用 Nginx 反向代理了 Nginx UI " "请参考:https://nginxui.com/guide/nginx-proxy-example.html 编写配置文件" @@ -4586,19 +5142,35 @@ msgstr "同步" msgid "Sync Certificate" msgstr "同步证书" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "证书 %{cert_name} 已成功同步到 %{env_name}" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "证书 %{cert_name} 已成功同步到 %{env_name}" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "同步证书错误" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "同步证书成功" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "配置 %{config_name} 同步到 %{env_name} 失败" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "配置 %{config_name} 同步到 %{env_name} 成功" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "同步配置错误" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "同步配置成功" @@ -4692,7 +5264,9 @@ msgid "" "The certificate for the domain will be checked 30 minutes, and will be " "renewed if it has been more than 1 week or the period you set in settings " "since it was last issued." -msgstr "域名证书将在 30 分钟内接受检查,如果距离上次签发证书的时间超过 1 周或您在设置中设定的时间,证书将被更新。" +msgstr "" +"域名证书将在 30 分钟内接受检查,如果距离上次签发证书的时间超过 1 周或您在设置" +"中设定的时间,证书将被更新。" #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" @@ -4710,8 +5284,7 @@ msgstr "输入的内容不是 SSL 证书密钥" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "日志路径不在 settings.NginxSettings.LogDirWhiteList 中的路径之下" #: src/views/preference/tabs/OpenAISettings.vue:23 @@ -4722,7 +5295,8 @@ msgid "" msgstr "模型名称只能包含字母、单码、数字、连字符、破折号、冒号和点。" #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "用于代码自动补全的模型,如果未设置,则使用聊天模型。" #: src/views/preference/tabs/NodeSettings.vue:18 @@ -4754,7 +5328,9 @@ msgid "" "The remote Nginx UI version is not compatible with the local Nginx UI " "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." -msgstr "远程 Nginx UI 版本与本地 Nginx UI版本不兼容。为避免意料之外的错误,请升级远程 Nginx UI,使其与本地版本一致。" +msgstr "" +"远程 Nginx UI 版本与本地 Nginx UI版本不兼容。为避免意料之外的错误,请升级远" +"程 Nginx UI,使其与本地版本一致。" #: src/components/AutoCertForm/AutoCertForm.vue:155 msgid "" @@ -4789,7 +5365,9 @@ msgid "" "These codes are the last resort for accessing your account in case you lose " "your password and second factors. If you cannot find these codes, you will " "lose access to your account." -msgstr "这些代码是在您丢失密码和双重身份验证方式时,访问账户的最后手段。如果找不到这些代码,您将无法再访问您的账户。" +msgstr "" +"这些代码是在您丢失密码和双重身份验证方式时,访问账户的最后手段。如果找不到这" +"些代码,您将无法再访问您的账户。" #: src/views/certificate/components/AutoCertManagement.vue:45 msgid "This Auto Cert item is invalid, please remove it." @@ -4822,15 +5400,20 @@ msgid "This field should not be empty" msgstr "该字段不能为空" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "该字段只能包含字母、unicode 字符、数字和 -_。" #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "此字段应仅包含字母、Unicode字符、数字和 -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "这是一条测试消息,于 %{timestamp} 从 Nginx UI 发送。" + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " @@ -4849,19 +5432,21 @@ msgstr "此操作只会从数据库中删除证书。文件系统中的证书文 #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" -"此站点已配置为 HTTPS(端口 443)的默认服务器(default_server)。IP 证书需要证书颁发机构(CA)的支持,且并非所有 ACME " -"提供商都提供此类证书。" +"此站点已配置为 HTTPS(端口 443)的默认服务器(default_server)。IP 证书需要证" +"书颁发机构(CA)的支持,且并非所有 ACME 提供商都提供此类证书。" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." -msgstr "此站点使用通配符服务器名称(_),通常表示基于IP的证书。IP证书需要证书颁发机构(CA)的支持,并且可能并非所有ACME提供商都提供。" +msgstr "" +"此站点使用通配符服务器名称(_),通常表示基于IP的证书。IP证书需要证书颁发机构" +"(CA)的支持,并且可能并非所有ACME提供商都提供。" #: src/views/backup/components/BackupCreator.vue:141 msgid "" @@ -4892,7 +5477,8 @@ msgid "" msgstr "这将恢复配置文件和数据库。恢复完成后,Nginx UI 将重新启动。" #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "将 %{nodeNames} 上的 Nginx UI 升级或重新安装到 %{version} 版本。" #: src/views/preference/tabs/AuthSettings.vue:92 @@ -4913,7 +5499,8 @@ msgstr "提示" msgid "" "Tips: You can increase the concurrency processing capacity by increasing " "worker_processes or worker_connections" -msgstr "提示您可以通过增加 worker_processes 或 worker_connections 来提高并发处理能力" +msgstr "" +"提示您可以通过增加 worker_processes 或 worker_connections 来提高并发处理能力" #: src/views/notification/notificationColumns.tsx:58 msgid "Title" @@ -4927,25 +5514,28 @@ msgstr "要确认撤销,请在下面的字段中输入 \"撤销\":" msgid "" "To enable it, you need to install the Google or Microsoft Authenticator app " "on your mobile phone." -msgstr "要启用该功能,您需要在手机上安装 Google 或 Microsoft Authenticator 应用程序。" +msgstr "" +"要启用该功能,您需要在手机上安装 Google 或 Microsoft Authenticator 应用程序。" #: src/views/preference/components/AuthSettings/AddPasskey.vue:94 msgid "" "To ensure security, Webauthn configuration cannot be added through the UI. " "Please manually configure the following in the app.ini configuration file " "and restart Nginx UI." -msgstr "为确保安全,Webauthn 配置不能通过用户界面添加。请在 app.ini 配置文件中手动配置以下内容,并重启 Nginx UI 服务。" +msgstr "" +"为确保安全,Webauthn 配置不能通过用户界面添加。请在 app.ini 配置文件中手动配" +"置以下内容,并重启 Nginx UI 服务。" #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"为了确保认证自动更新能够正常工作,我们需要添加一个能够代理从权威机构到后端的请求的 " -"Location,并且我们需要保存这个文件并重新加载Nginx。你确定要继续吗?" +"为了确保认证自动更新能够正常工作,我们需要添加一个能够代理从权威机构到后端的" +"请求的 Location,并且我们需要保存这个文件并重新加载Nginx。你确定要继续吗?" #: src/views/preference/tabs/OpenAISettings.vue:36 msgid "" @@ -4953,8 +5543,8 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"要使用本地大型模型,可使用 ollama、vllm 或 lmdeploy 进行部署。它们提供了与 OpenAI 兼容的 API 端点,因此只需将 " -"baseUrl 设置为本地 API 即可。" +"要使用本地大型模型,可使用 ollama、vllm 或 lmdeploy 进行部署。它们提供了与 " +"OpenAI 兼容的 API 端点,因此只需将 baseUrl 设置为本地 API 即可。" #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5238,7 +5828,9 @@ msgid "" "Warning: Restore operation will overwrite current configurations. Make sure " "you have a valid backup file and security token, and carefully select what " "to restore." -msgstr "警告:还原操作将覆盖当前配置。请确保您有有效的备份文件和安全令牌,并仔细选择要还原的内容。" +msgstr "" +"警告:还原操作将覆盖当前配置。请确保您有有效的备份文件和安全令牌,并仔细选择" +"要还原的内容。" #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" @@ -5246,8 +5838,8 @@ msgid "" "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." msgstr "" -"警告:这似乎是一个私有 IP 地址。像 Let's Encrypt 这样的公共 CA 无法为私有 IP 颁发证书。请使用公共 IP " -"地址或考虑使用私有CA。" +"警告:这似乎是一个私有 IP 地址。像 Let's Encrypt 这样的公共 CA 无法为私有 IP " +"颁发证书。请使用公共 IP 地址或考虑使用私有CA。" #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5257,9 +5849,10 @@ msgstr "我们将在您域名的 DNS 记录中添加一个或多个 TXT 记录 #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" -msgstr "我们将从这个文件中删除HTTPChallenge的配置,并重新加载Nginx。你确定要继续吗?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" +msgstr "" +"我们将从这个文件中删除HTTPChallenge的配置,并重新加载Nginx。你确定要继续吗?" #: src/views/preference/tabs/AuthSettings.vue:65 msgid "Webauthn" @@ -5294,14 +5887,18 @@ msgid "" "When Enabled, Nginx UI will automatically re-register users upon startup. " "Generally, do not enable this unless you are in a dev environment and using " "Pebble as CA." -msgstr "启用后,Nginx UI 将在启动时自动重新注册用户。一般情况下,除非在开发环境中使用 Pebble 作为 CA,否则不要启用此功能。" +msgstr "" +"启用后,Nginx UI 将在启动时自动重新注册用户。一般情况下,除非在开发环境中使" +"用 Pebble 作为 CA,否则不要启用此功能。" #: src/views/site/site_edit/components/RightPanel/Basic.vue:62 #: src/views/stream/components/RightPanel/Basic.vue:57 msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." -msgstr "启用/禁用、删除或保存此站点时,环境组中设置的节点和下面选择的节点将同步执行操作。" +msgstr "" +"启用/禁用、删除或保存此站点时,环境组中设置的节点和下面选择的节点将同步执行操" +"作。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" @@ -5369,9 +5966,10 @@ msgstr "是的" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." -msgstr "您正在通过非本地主机域上的不安全 HTTP 连接访问此终端。这可能会暴露敏感信息。" +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." +msgstr "" +"您正在通过非本地主机域上的不安全 HTTP 连接访问此终端。这可能会暴露敏感信息。" #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5400,7 +5998,8 @@ msgid "" msgstr "您尚未配置 Webauthn 的设置,因此无法添加 Passkey。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "您尚未启用双重身份验证。请启用双重身份验证以生成恢复代码。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94 @@ -5422,423 +6021,15 @@ msgstr "您的旧代码将不再有效。" msgid "Your passkeys" msgstr "你的 Passkeys" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] ACME 用户:%{name},邮箱:%{email},CA 目录:%{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] 正在备份当前证书以便后续撤销" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] 证书更新成功" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] 证书成功撤销" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "[Nginx UI] 证书已用于服务器,正在重新加载服务器 TLS 证书" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] 正在创建客户端用于与 CA 服务器通信" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] 环境变量已清理" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] 已完成" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] 证书申请成功" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] 正在获取证书" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] 准备撤销证书" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] 正在准备 lego 配置" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] 重新加载 Nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] 吊销完成" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] 正在撤销证书" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] 正在撤销旧证书" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] 正在设置 DNS01 验证提供程序" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] 正在设置环境变量" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] 正在设置 HTTP01 验证提供程序" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] 正在将证书私钥写入磁盘" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] 正在将证书写入磁盘" - -#~ msgid "Auto Backup Completed" -#~ msgstr "自动备份完成" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "自动备份配置错误" - -#~ msgid "Auto Backup Failed" -#~ msgstr "自动备份失败" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "自动备份存储失败" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "备份任务 %{backup_name} 已完成,文件:%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "备份任务 %{backup_name} 在存储上传过程中失败,错误:%{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "备份任务 %{backup_name} 执行失败,错误:%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "证书 %{name} 已过期" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "证书 %{name} 将在 %{days} 天后过期" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "证书 %{name} 将在1天后过期" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "证书到期通知" - -#~ msgid "Certificate Expired" -#~ msgstr "证书已过期" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "证书即将过期" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "未找到证书:%{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "证书撤销成功" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "检查 /var/run/docker.sock 是否存在。如果您使用的是 Nginx UI 官方 Docker 镜像,请确保以这种方式挂载 " -#~ "Docker 套接字:`-v /var/run/docker.sock:/var/run/docker.sock`。Nginx UI 官方镜像使用 " -#~ "/var/run/docker.sock 通过 Docker Client API 与主机 Docker Engine " -#~ "通信。此功能用于在另一个容器中控制 Nginx,并在 Nginx UI 的 OTA " -#~ "升级期间执行容器替换而非二进制替换,以确保容器依赖项也得到升级。如果您不需要此功能,请向容器添加环境变量 " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true。" - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "检查 nginx 访问日志路径是否存在。默认情况下,此路径从 'nginx -V' " -#~ "获取。如果无法获取或获取的路径未指向有效的现有文件,将报告错误。在这种情况下,您需要修改配置文件以指定访问日志路径。更多详情请参阅文档:https://" -#~ "nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "检查 Nginx 配置目录是否存在" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "检查 nginx 配置入口文件是否存在" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "检查 nginx 错误日志路径是否存在。默认情况下,该路径从 'nginx -V' " -#~ "获取。如果无法获取或获取的路径未指向有效的现有文件,将报错。此时需要修改配置文件以指定错误日志路径。详情请参阅文档:https://nginxui." -#~ "com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "检查 Nginx PID 路径是否存在。默认情况下,该路径是从 'nginx -V' " -#~ "获取的。如果无法获取,将会报错。在这种情况下,您需要修改配置文件以指定 Nginx PID " -#~ "路径。更多详情请参阅文档:https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "检查 nginx sbin 路径是否存在" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "检查 nginx.conf 是否包含 conf.d 目录" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "检查 nginx.conf 是否包含 sites-enabled 目录" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "检查 nginx.conf 是否包含 streams-enabled 的目录" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "检查 sites-available 和 sites-enabled 目录是否位于 Nginx 配置目录下" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "检查 Nginx 配置目录下是否有 streams-available 和 streams-enabled 目录" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "删除 %{env_name} 上的 %{path} 失败" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "已在 %{env_name} 上成功删除 %{path}" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "删除远程配置错误" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "远程配置删除成功" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "删除远程 Stream 错误" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "删除远程 Stream 成功" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "部署 %{name} 到 %{node} 失败" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "成功从 %{node} 中删除站点 %{name}" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "从 %{node} 删除 Stream %{name} 失败" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "已成功从 %{node} 删除 Stream %{name}" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "禁用远程站点维护错误" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "远程站点维护已成功禁用" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "禁用远程 Stream 错误" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "禁用远程 Stream成功" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "在 %{node} 上禁用 %{name} 成功" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "在 %{node} 上禁用 %{name} 成功" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "停用站点 %{name} 维护 %{node} 失败" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "成功停用站点 %{name} 上 %{node} 的维护功能" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "在 %{node} 中启用 %{name} 失败" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "在 %{node} 上禁用 %{name} 成功" - -#~ msgid "Docker socket exists" -#~ msgstr "Docker Socket 存在" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "在 %{node} 上启用 %{site} 失败" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "成功启用远程站点维护" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "启用远程 Steam 错误" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "启用远程 Stream 成功" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "在 %{node} 中为 %{name} 启用维护模式失败" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "在 %{node} 上成功启用站点 %{name} 维护模式" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "在 %{node} 中启用 %{name} 失败" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "在 %{node} 上启用 %{name} 成功" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "在 %{node} 中启用 %{name} 失败" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "在 %{node} 上启用 %{name} 成功" - -#~ msgid "External Notification Test" -#~ msgstr "外部通知测试" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "从数据库中删除证书失败:%{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "撤销证书失败:%{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "日志文件 %{log_path} 不是常规文件。如果在 Docker 容器中使用 Nginx UI,请参阅 " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html 获取更多信息。" - -#~ msgid "Nginx access log path exists" -#~ msgstr "存在 Nginx 访问日志路径" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Nginx 配置目录存在" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "存在 Nginx 配置入口文件" - -#~ msgid "Nginx error log path exists" -#~ msgstr "存在 Nginx 错误日志路径" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Nginx PID 路径存在" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Nginx Sbin 路径存在" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf 包括 conf.d 目录" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf 包含 sites-enabled 目录" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "检查 nginx.conf 是否包含 streams-enabled 的目录" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "在 %{node} 上重载 Nginx 失败,响应:%{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "在 %{node} 上重载 Nginx 成功" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "重载远程 Nginx 错误" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "重载远程 Nginx 成功" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "成功将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path}" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "成功将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path}" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "重命名远程 Stream 错误" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "重命名远程 Stream成功" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "在 %{node} 上将站点 %{name} 重命名为 %{new_name} 成功" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "在 %{node} 上重启 Nginx 失败,响应:%{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "在 %{node} 上重启 Nginx 成功" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "重启远程 Nginx 错误" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "重启远程 Nginx 成功" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "保存远程 Stream 错误" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "保存远程 Stream 成功" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "成功将站点 %{name} 保存到 %{node} 中" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "成功将站点 %{name} 保存到 %{node} 中" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "部署 %{name} 到 %{node} 失败" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "成功将站点 %{name} 保存到 %{node} 中" - -#~ msgid "Sites directory exists" -#~ msgstr "网站目录存在" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "备份任务 %{backup_name} 的存储配置验证失败,错误:%{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Streams 目录存在" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "证书 %{cert_name} 已成功同步到 %{env_name}" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "证书 %{cert_name} 已成功同步到 %{env_name}" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "配置 %{config_name} 同步到 %{env_name} 失败" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "配置 %{config_name} 同步到 %{env_name} 成功" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "这是一条测试消息,于 %{timestamp} 从 Nginx UI 发送。" +#~ "支持通过 Server-Sent Events 协议与后端通信。如果您的 Nginx UI 是通过 " +#~ "Nginx 反向代理使用的,请参考此链接编写相应的配置文件:https://nginxui.com/" +#~ "guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "如果留空,则使用默认 CA Dir。" @@ -5927,11 +6118,12 @@ msgstr "你的 Passkeys" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "检查 /var/run/docker.sock 是否存在。如果你使用的是 Nginx UI 官方 Docker Image,请确保 Docker " -#~ "Socket 像这样挂载:`-v /var/run/docker.sock:/var/run/docker.sock`." +#~ "检查 /var/run/docker.sock 是否存在。如果你使用的是 Nginx UI 官方 Docker " +#~ "Image,请确保 Docker Socket 像这样挂载:`-v /var/run/docker.sock:/var/run/" +#~ "docker.sock`." #~ msgid "Check if the nginx access log path exists" #~ msgstr "检查 Nginx 访问日志路径是否存在" @@ -5957,7 +6149,9 @@ msgstr "你的 Passkeys" #~ msgid "" #~ "If logs are not indexed, please check if the log file is under the " #~ "directory in Nginx.LogDirWhiteList." -#~ msgstr "如果日志未被索引,请检查日志文件是否位于 Nginx.LogDirWhiteList 中的目录下。" +#~ msgstr "" +#~ "如果日志未被索引,请检查日志文件是否位于 Nginx.LogDirWhiteList 中的目录" +#~ "下。" #~ msgid "Indexed" #~ msgstr "已索引" @@ -5984,9 +6178,11 @@ msgstr "你的 Passkeys" #~ msgstr "保存失败,在配置中检测到语法错误。" #~ msgid "" -#~ "When you enable/disable, delete, or save this stream, the nodes set in the " -#~ "Node Group and the nodes selected below will be synchronized." -#~ msgstr "启用/禁用、删除或保存此站点时,环境组中设置的节点和下面选择的节点将同步执行操作。" +#~ "When you enable/disable, delete, or save this stream, the nodes set in " +#~ "the Node Group and the nodes selected below will be synchronized." +#~ msgstr "" +#~ "启用/禁用、删除或保存此站点时,环境组中设置的节点和下面选择的节点将同步执" +#~ "行操作。" #~ msgid "KB" #~ msgstr "KB" @@ -6070,11 +6266,16 @@ msgstr "你的 Passkeys" #~ msgid "Please upgrade the remote Nginx UI to the latest version" #~ msgstr "请将远程 Nginx UI 升级到最新版本" -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" -#~ msgstr "将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path} 失败,响应:%{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" +#~ msgstr "" +#~ "将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path} 失败,响应:%{resp}" -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" -#~ msgstr "在 %{node} 上将站点 %{site} 重命名为 %{new_site} 失败,响应:%{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgstr "" +#~ "在 %{node} 上将站点 %{site} 重命名为 %{new_site} 失败,响应:%{resp}" #~ msgid "Save site %{site} to %{node} error, response: %{resp}" #~ msgstr "保存站点 %{site} 到 %{node} 错误,响应: %{resp}" @@ -6082,23 +6283,27 @@ msgstr "你的 Passkeys" #~ msgid "" #~ "Sync Certificate %{cert_name} to %{env_name} failed, please upgrade the " #~ "remote Nginx UI to the latest version" -#~ msgstr "同步证书 %{cert_name} 到 %{env_name} 失败,请先将远程的 Nginx UI 升级到最新版本" +#~ msgstr "" +#~ "同步证书 %{cert_name} 到 %{env_name} 失败,请先将远程的 Nginx UI 升级到最" +#~ "新版本" -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "同步证书 %{cert_name} 到 %{env_name} 失败,响应:%{resp}" #~ msgid "Sync config %{config_name} to %{env_name} failed, response: %{resp}" #~ msgstr "同步配置 %{config_name} 到 %{env_name} 失败,响应:%{resp}" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "如果丢失了手机,可以使用恢复代码重置二步验证。" #~ msgid "Recovery Code:" #~ msgstr "恢复代码:" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "恢复密码只会显示一次,请妥善保存。" #~ msgid "Can't scan? Use text key binding" @@ -6113,7 +6318,9 @@ msgstr "你的 Passkeys" #~ msgid "" #~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, please upgrade " #~ "the remote Nginx UI to the latest version" -#~ msgstr "将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path} 失败,请将远程 Nginx UI 升级到最新版本" +#~ msgstr "" +#~ "将 %{env_name} 上的 %{orig_path} 重命名为 %{new_path} 失败,请将远程 " +#~ "Nginx UI 升级到最新版本" #~ msgid "Server Name" #~ msgstr "服务器名称" @@ -6187,8 +6394,9 @@ msgstr "你的 Passkeys" #~ "Once the verification is complete, the records will be removed.\n" #~ "Please note that the unit of time configurations below are all in seconds." #~ msgstr "" -#~ "请填写您的DNS提供商提供的API认证凭证。我们将在你的域名的DNS记录中添加一个或多个TXT记录,以进行所有权验证。一旦验证完成,这些记录将被删除。请" -#~ "注意,下面的时间配置都是以秒为单位。" +#~ "请填写您的DNS提供商提供的API认证凭证。我们将在你的域名的DNS记录中添加一个" +#~ "或多个TXT记录,以进行所有权验证。一旦验证完成,这些记录将被删除。请注意," +#~ "下面的时间配置都是以秒为单位。" #~ msgid "Delete ID: %{id}" #~ msgstr "删除 ID: %{id}" @@ -6209,11 +6417,11 @@ msgstr "你的 Passkeys" #~ msgstr "操作同步" #~ msgid "" -#~ "Such as Reload and Configs, regex can configure as " -#~ "`/api/nginx/reload|/api/nginx/test|/api/config/.+`, please see system api" +#~ "Such as Reload and Configs, regex can configure as `/api/nginx/reload|/" +#~ "api/nginx/test|/api/config/.+`, please see system api" #~ msgstr "" -#~ "`重载`和`配置管理`的操作同步正则可以配置为`/api/nginx/reload|/api/nginx/test|/api/config/.+`" -#~ ",详细请查看系统API" +#~ "`重载`和`配置管理`的操作同步正则可以配置为`/api/nginx/reload|/api/nginx/" +#~ "test|/api/config/.+`,详细请查看系统API" #~ msgid "SyncApiRegex" #~ msgstr "Api正则表达式" @@ -6231,9 +6439,11 @@ msgstr "你的 Passkeys" #~ msgstr "你想启用自动更新证书吗?" #~ msgid "" -#~ "We need to add the HTTPChallenge configuration to this file and reload the " -#~ "Nginx. Are you sure you want to continue?" -#~ msgstr "我们需要将 HTTPChallenge 的配置添加到这个文件中,并重新加载Nginx。你确定要继续吗?" +#~ "We need to add the HTTPChallenge configuration to this file and reload " +#~ "the Nginx. Are you sure you want to continue?" +#~ msgstr "" +#~ "我们需要将 HTTPChallenge 的配置添加到这个文件中,并重新加载Nginx。你确定要" +#~ "继续吗?" #~ msgid "Chat with ChatGPT" #~ msgstr "与ChatGPT聊天" @@ -6286,8 +6496,8 @@ msgstr "你的 Passkeys" #~ "you do not have a certificate before, please click \"Getting Certificate " #~ "from Let's Encrypt\" first." #~ msgstr "" -#~ "系统将会每小时检测一次该域名证书,若距离上次签发已超过1个月,则将自动续签。
如果您之前没有证书,请先点击 \"从 Let's Encrypt " -#~ "获取证书\"。" +#~ "系统将会每小时检测一次该域名证书,若距离上次签发已超过1个月,则将自动续" +#~ "签。
如果您之前没有证书,请先点击 \"从 Let's Encrypt 获取证书\"。" #~ msgid "Do you want to change the template to support the TLS?" #~ msgstr "你想要改变模板以支持 TLS 吗?" @@ -6302,12 +6512,15 @@ msgstr "你的 Passkeys" #~ "The following values will only take effect if you have the corresponding " #~ "fields in your configuration file. The configuration filename cannot be " #~ "changed after it has been created." -#~ msgstr "只有在您的配置文件中有相应字段时,下列的配置才能生效。配置文件名称创建后不可修改。" +#~ msgstr "" +#~ "只有在您的配置文件中有相应字段时,下列的配置才能生效。配置文件名称创建后不" +#~ "可修改。" #~ msgid "This operation will lose the custom configuration." #~ msgstr "该操作将会丢失自定义配置。" -#~ msgid "Add site here first, then you can configure TLS on the domain edit page." +#~ msgid "" +#~ "Add site here first, then you can configure TLS on the domain edit page." #~ msgstr "在这里添加站点,完成后可进入编辑页面配置 TLS。" #~ msgid "Server Status" diff --git a/app/src/language/zh_TW/app.po b/app/src/language/zh_TW/app.po index 488f497b..6806b793 100644 --- a/app/src/language/zh_TW/app.po +++ b/app/src/language/zh_TW/app.po @@ -9,16 +9,101 @@ msgstr "" "POT-Creation-Date: \n" "PO-Revision-Date: 2025-04-10 02:51+0000\n" "Last-Translator: 0xJacky \n" -"Language-Team: Chinese (Traditional Han script) " -"\n" +"Language-Team: Chinese (Traditional Han script) \n" "Language: zh_TW\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 5.10.4\n" "Generated-By: easygettext\n" +#: src/language/generate.ts:33 +msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" +msgstr "[Nginx UI] ACME 使用者:%{name},電子郵件:%{email},CA 目錄:%{caDir}" + +#: src/language/generate.ts:34 +msgid "[Nginx UI] Backing up current certificate for later revocation" +msgstr "[Nginx UI] 正在備份當前憑證以便後續撤銷" + +#: src/language/generate.ts:35 +msgid "[Nginx UI] Certificate renewed successfully" +msgstr "[Nginx UI] 憑證更新成功" + +#: src/language/generate.ts:36 +msgid "[Nginx UI] Certificate successfully revoked" +msgstr "[Nginx UI] 證書已成功撤銷" + +#: src/language/generate.ts:37 +msgid "" +"[Nginx UI] Certificate was used for server, reloading server TLS certificate" +msgstr "[Nginx UI] 憑證已用於伺服器,正在重新載入伺服器 TLS 憑證" + +#: src/language/generate.ts:38 +msgid "[Nginx UI] Creating client facilitates communication with the CA server" +msgstr "[Nginx UI] 創建客戶端以促進與 CA 伺服器的通信" + +#: src/language/generate.ts:39 +msgid "[Nginx UI] Environment variables cleaned" +msgstr "[Nginx UI] 環境變數已清理" + +#: src/language/generate.ts:40 +msgid "[Nginx UI] Finished" +msgstr "[Nginx UI] 已完成" + +#: src/language/generate.ts:41 +msgid "[Nginx UI] Issued certificate successfully" +msgstr "[Nginx UI] 證書簽發成功" + +#: src/language/generate.ts:42 +msgid "[Nginx UI] Obtaining certificate" +msgstr "[Nginx UI] 正在取得憑證" + +#: src/language/generate.ts:43 +msgid "[Nginx UI] Preparing for certificate revocation" +msgstr "[Nginx UI] 準備撤銷憑證" + +#: src/language/generate.ts:44 +msgid "[Nginx UI] Preparing lego configurations" +msgstr "[Nginx UI] 正在準備 lego 配置" + +#: src/language/generate.ts:45 +msgid "[Nginx UI] Reloading nginx" +msgstr "[Nginx UI] 重新載入 Nginx" + +#: src/language/generate.ts:46 +msgid "[Nginx UI] Revocation completed" +msgstr "[Nginx UI] 撤銷完成" + +#: src/language/generate.ts:47 +msgid "[Nginx UI] Revoking certificate" +msgstr "[Nginx UI] 正在撤銷證書" + +#: src/language/generate.ts:48 +msgid "[Nginx UI] Revoking old certificate" +msgstr "[Nginx UI] 正在撤銷舊憑證" + +#: src/language/generate.ts:49 +msgid "[Nginx UI] Setting DNS01 challenge provider" +msgstr "[Nginx UI] 正在設定 DNS01 驗證提供者" + +#: src/language/generate.ts:51 +msgid "[Nginx UI] Setting environment variables" +msgstr "[Nginx UI] 設定環境變數" + +#: src/language/generate.ts:50 +msgid "[Nginx UI] Setting HTTP01 challenge provider" +msgstr "[Nginx UI] 正在設定 HTTP01 驗證提供者" + +#: src/language/generate.ts:52 +msgid "[Nginx UI] Writing certificate private key to disk" +msgstr "[Nginx UI] 正在將證書私鑰寫入磁碟" + +#: src/language/generate.ts:53 +msgid "[Nginx UI] Writing certificate to disk" +msgstr "[Nginx UI] 正在將憑證寫入磁碟" + #: src/components/SyncNodesPreview/SyncNodesPreview.vue:59 msgid "* Includes nodes from group %{groupName} and manually selected nodes" msgstr "* 包含來自群組 %{groupName} 的節點和手動選擇的節點" @@ -150,6 +235,7 @@ msgstr "之後,請重新整理此頁面並再次點擊新增通行金鑰。" msgid "All" msgstr "全部" +#: src/components/Notification/notifications.ts:193 #: src/language/constants.ts:58 msgid "All Recovery Codes Have Been Used" msgstr "所有恢復代碼已用完" @@ -161,7 +247,8 @@ msgid "" msgstr "所有選定的子網域名稱必須屬於同一 DNS 提供商,否則證書申請將失敗。" #: src/components/AutoCertForm/AutoCertForm.vue:209 -msgid "Any reachable IP address can be used with private Certificate Authorities" +msgid "" +"Any reachable IP address can be used with private Certificate Authorities" msgstr "任何可訪問的IP地址均可用於私有證書頒發機構" #: src/views/preference/tabs/OpenAISettings.vue:32 @@ -258,7 +345,7 @@ msgstr "向 ChatGPT 尋求幫助" msgid "Assistant" msgstr "助理" -#: src/components/SelfCheck/SelfCheck.vue:31 +#: src/components/SelfCheck/SelfCheck.vue:30 msgid "Attempt to fix" msgstr "嘗試修復" @@ -297,6 +384,22 @@ msgstr "auto = CPU 核心數" msgid "Auto Backup" msgstr "自動備份" +#: src/components/Notification/notifications.ts:37 +msgid "Auto Backup Completed" +msgstr "自動備份完成" + +#: src/components/Notification/notifications.ts:25 +msgid "Auto Backup Configuration Error" +msgstr "自動備份配置錯誤" + +#: src/components/Notification/notifications.ts:29 +msgid "Auto Backup Failed" +msgstr "自動備份失敗" + +#: src/components/Notification/notifications.ts:33 +msgid "Auto Backup Storage Failed" +msgstr "自動備份儲存失敗" + #: src/views/environments/list/Environment.vue:165 #: src/views/nginx_log/NginxLog.vue:150 msgid "Auto Refresh" @@ -392,6 +495,19 @@ msgstr "備份路徑不在授予的訪問路徑中: {0}" msgid "Backup Schedule" msgstr "備份計劃" +#: src/components/Notification/notifications.ts:38 +msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" +msgstr "備份任務 %{backup_name} 已完成,檔案:%{file_path}" + +#: src/components/Notification/notifications.ts:34 +msgid "" +"Backup task %{backup_name} failed during storage upload, error: %{error}" +msgstr "備份任務 %{backup_name} 在儲存上傳過程中失敗,錯誤:%{error}" + +#: src/components/Notification/notifications.ts:30 +msgid "Backup task %{backup_name} failed to execute, error: %{error}" +msgstr "備份任務 %{backup_name} 執行失敗,錯誤:%{error}" + #: src/views/backup/AutoBackup/AutoBackup.vue:24 msgid "Backup Type" msgstr "備份類型" @@ -506,7 +622,9 @@ msgstr "CADir" msgid "" "Calculated based on worker_processes * worker_connections. Actual " "performance depends on hardware, configuration, and workload" -msgstr "基於 worker_processes * worker_connections 計算得出。實際效能取決於硬體、配置和工作負載" +msgstr "" +"基於 worker_processes * worker_connections 計算得出。實際效能取決於硬體、配置" +"和工作負載" #: src/components/ChatGPT/ChatMessage.vue:216 #: src/components/NgxConfigEditor/NgxServer.vue:61 @@ -562,6 +680,20 @@ msgstr "證書路徑不在 Nginx 設定檔資料夾下" msgid "certificate" msgstr "證書" +#: src/components/Notification/notifications.ts:42 +msgid "Certificate %{name} has expired" +msgstr "證書 %{name} 已過期" + +#: src/components/Notification/notifications.ts:46 +#: src/components/Notification/notifications.ts:50 +#: src/components/Notification/notifications.ts:54 +msgid "Certificate %{name} will expire in %{days} days" +msgstr "憑證 %{name} 將在 %{days} 天後過期" + +#: src/components/Notification/notifications.ts:58 +msgid "Certificate %{name} will expire in 1 day" +msgstr "證書 %{name} 將在1天後過期" + #: src/views/certificate/components/CertificateDownload.vue:36 msgid "Certificate content and private key content cannot be empty" msgstr "證書內容和私鑰內容不能為空" @@ -570,6 +702,20 @@ msgstr "證書內容和私鑰內容不能為空" msgid "Certificate decode error" msgstr "證書解碼錯誤" +#: src/components/Notification/notifications.ts:45 +msgid "Certificate Expiration Notice" +msgstr "憑證到期通知" + +#: src/components/Notification/notifications.ts:41 +msgid "Certificate Expired" +msgstr "憑證已過期" + +#: src/components/Notification/notifications.ts:49 +#: src/components/Notification/notifications.ts:53 +#: src/components/Notification/notifications.ts:57 +msgid "Certificate Expiring Soon" +msgstr "憑證即將到期" + #: src/views/certificate/components/CertificateDownload.vue:70 msgid "Certificate files downloaded successfully" msgstr "憑證檔案下載成功" @@ -578,6 +724,10 @@ msgstr "憑證檔案下載成功" msgid "Certificate name cannot be empty" msgstr "證書名稱不能為空" +#: src/language/generate.ts:4 +msgid "Certificate not found: %{error}" +msgstr "找不到證書: %{error}" + #: src/constants/errors/cert.ts:5 msgid "Certificate parse error" msgstr "憑證解析錯誤" @@ -599,6 +749,10 @@ msgstr "憑證更新間隔" msgid "Certificate renewed successfully" msgstr "憑證更新成功" +#: src/language/generate.ts:5 +msgid "Certificate revoked successfully" +msgstr "證書撤銷成功" + #: src/views/certificate/components/AutoCertManagement.vue:67 #: src/views/site/site_edit/components/Cert/Cert.vue:58 msgid "Certificate Status" @@ -664,11 +818,110 @@ msgstr "檢查" msgid "Check again" msgstr "再次檢查" +#: src/language/generate.ts:6 +msgid "" +"Check if /var/run/docker.sock exists. If you are using Nginx UI Official " +"Docker Image, please make sure the docker socket is mounted like this: `-v /" +"var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/" +"run/docker.sock to communicate with the host Docker Engine via Docker Client " +"API. This feature is used to control Nginx in another container and perform " +"container replacement rather than binary replacement during OTA upgrades of " +"Nginx UI to ensure container dependencies are also upgraded. If you don't " +"need this feature, please add the environment variable " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +msgstr "" +"檢查 /var/run/docker.sock 是否存在。如果您使用的是 Nginx UI 官方 Docker 映" +"像,請確保以這種方式掛載 Docker 通訊端:`-v /var/run/docker.sock:/var/run/" +"docker.sock`。Nginx UI 官方映像使用 /var/run/docker.sock 通過 Docker Client " +"API 與主機 Docker Engine 通訊。此功能用於在另一個容器中控制 Nginx,並在 " +"Nginx UI 的 OTA 升級期間執行容器替換而非二進位替換,以確保容器依賴項也得到升" +"級。如果您不需要此功能,請向容器新增環境變數 " +"NGINX_UI_IGNORE_DOCKER_SOCKET=true。" + #: src/components/SelfCheck/tasks/frontend/https-check.ts:14 msgid "" "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and " "prevents using Passkeys and clipboard features" -msgstr "檢查是否啟用了 HTTPS。在 localhost 之外使用 HTTP 不安全,並且會阻止使用 Passkeys 和剪貼簿功能" +msgstr "" +"檢查是否啟用了 HTTPS。在 localhost 之外使用 HTTP 不安全,並且會阻止使用 " +"Passkeys 和剪貼簿功能" + +#: src/language/generate.ts:8 +msgid "" +"Check if the nginx access log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the access log path." +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#accesslogpath" +msgstr "" +"檢查 nginx 訪問日誌路徑是否存在。預設情況下,此路徑從 'nginx -V' 獲取。如果無" +"法獲取或獲取的路徑未指向有效的現有文件,將報告錯誤。在這種情況下,您需要修改" +"配置文件以指定訪問日誌路徑。更多詳情請參閱文檔:https://nginxui.com/zh_CN/" +"guide/config-nginx.html#accesslogpath" + +#: src/language/generate.ts:9 +msgid "Check if the nginx configuration directory exists" +msgstr "檢查 nginx 配置目錄是否存在" + +#: src/language/generate.ts:10 +msgid "Check if the nginx configuration entry file exists" +msgstr "檢查 nginx 配置入口文件是否存在" + +#: src/language/generate.ts:11 +msgid "" +"Check if the nginx error log path exists. By default, this path is obtained " +"from 'nginx -V'. If it cannot be obtained or the obtained path does not " +"point to a valid, existing file, an error will be reported. In this case, " +"you need to modify the configuration file to specify the error log path. " +"Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-" +"nginx.html#errorlogpath" +msgstr "" +"檢查 nginx 錯誤日誌路徑是否存在。預設情況下,該路徑從 'nginx -V' 獲取。如果無" +"法獲取或獲取的路徑未指向有效的現有文件,將報錯。此時需要修改配置文件以指定錯" +"誤日誌路徑。詳情請參閱文件:https://nginxui.com/zh_CN/guide/config-nginx." +"html#errorlogpath" + +#: src/language/generate.ts:7 +msgid "" +"Check if the nginx PID path exists. By default, this path is obtained from " +"'nginx -V'. If it cannot be obtained, an error will be reported. In this " +"case, you need to modify the configuration file to specify the Nginx PID " +"path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/" +"config-nginx.html#pidpath" +msgstr "" +"檢查 Nginx PID 路徑是否存在。預設情況下,該路徑是從 'nginx -V' 獲取的。如果無" +"法獲取,將會報錯。在這種情況下,您需要修改設定檔以指定 Nginx PID 路徑。更多詳" +"情請參閱文件:https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" + +#: src/language/generate.ts:12 +msgid "Check if the nginx sbin path exists" +msgstr "檢查 nginx sbin 路徑是否存在" + +#: src/language/generate.ts:13 +msgid "Check if the nginx.conf includes the conf.d directory" +msgstr "檢查 nginx.conf 是否包含 conf.d 目錄" + +#: src/language/generate.ts:14 +msgid "Check if the nginx.conf includes the sites-enabled directory" +msgstr "檢查 nginx.conf 是否包含 sites-enabled 目錄" + +#: src/language/generate.ts:15 +msgid "Check if the nginx.conf includes the streams-enabled directory" +msgstr "檢查 nginx.conf 是否包含 streams-enabled 目錄" + +#: src/language/generate.ts:16 +msgid "" +"Check if the sites-available and sites-enabled directories are under the " +"nginx configuration directory" +msgstr "檢查 sites-available 和 sites-enabled 目錄是否位於 nginx 配置目錄下" + +#: src/language/generate.ts:17 +msgid "" +"Check if the streams-available and streams-enabled directories are under the " +"nginx configuration directory" +msgstr "" +"檢查 streams-available 和 streams-enabled 目錄是否位於 nginx 配置目錄下" #: src/constants/errors/crypto.ts:3 msgid "Cipher text is too short" @@ -913,7 +1166,8 @@ msgstr "建立資料夾" msgid "" "Create system backups including Nginx configuration and Nginx UI settings. " "Backup files will be automatically downloaded to your computer." -msgstr "建立系統備份,包括 Nginx 設定與 Nginx UI 設定。備份檔案將自動下載至您的電腦。" +msgstr "" +"建立系統備份,包括 Nginx 設定與 Nginx UI 設定。備份檔案將自動下載至您的電腦。" #: src/views/backup/AutoBackup/AutoBackup.vue:229 #: src/views/environments/group/columns.ts:72 @@ -1046,6 +1300,14 @@ msgstr "定義共享記憶體區域名稱和大小,例如 proxy_cache:10m" msgid "Delete" msgstr "刪除" +#: src/components/Notification/notifications.ts:86 +msgid "Delete %{path} on %{env_name} failed" +msgstr "刪除 %{env_name} 上的 %{path} 失敗" + +#: src/components/Notification/notifications.ts:90 +msgid "Delete %{path} on %{env_name} successfully" +msgstr "已在 %{env_name} 上成功刪除 %{path}" + #: src/views/certificate/components/RemoveCert.vue:95 msgid "Delete Certificate" msgstr "刪除憑證" @@ -1058,18 +1320,51 @@ msgstr "刪除確認" msgid "Delete Permanently" msgstr "永久刪除" -#: src/language/constants.ts:50 +#: src/components/Notification/notifications.ts:85 +msgid "Delete Remote Config Error" +msgstr "刪除遠端配置錯誤" + +#: src/components/Notification/notifications.ts:89 +msgid "Delete Remote Config Success" +msgstr "遠端配置刪除成功" + +#: src/components/Notification/notifications.ts:97 src/language/constants.ts:50 msgid "Delete Remote Site Error" msgstr "刪除遠端網站錯誤" +#: src/components/Notification/notifications.ts:101 #: src/language/constants.ts:49 msgid "Delete Remote Site Success" msgstr "刪除遠端網站成功" +#: src/components/Notification/notifications.ts:153 +msgid "Delete Remote Stream Error" +msgstr "刪除遠端串流錯誤" + +#: src/components/Notification/notifications.ts:157 +msgid "Delete Remote Stream Success" +msgstr "刪除遠端串流成功" + +#: src/components/Notification/notifications.ts:98 +msgid "Delete site %{name} from %{node} failed" +msgstr "從 %{node} 刪除網站 %{name} 失敗" + +#: src/components/Notification/notifications.ts:102 +msgid "Delete site %{name} from %{node} successfully" +msgstr "成功從 %{node} 移除站點 %{name}" + #: src/views/site/site_list/SiteList.vue:48 msgid "Delete site: %{site_name}" msgstr "刪除網站:%{site_name}" +#: src/components/Notification/notifications.ts:154 +msgid "Delete stream %{name} from %{node} failed" +msgstr "從 %{node} 刪除串流 %{name} 失敗" + +#: src/components/Notification/notifications.ts:158 +msgid "Delete stream %{name} from %{node} successfully" +msgstr "已成功從 %{node} 刪除串流 %{name}" + #: src/views/stream/StreamList.vue:47 msgid "Delete stream: %{stream_name}" msgstr "刪除 Stream:%{stream_name}" @@ -1156,14 +1451,56 @@ msgstr "禁用" msgid "Disable auto-renewal failed for %{name}" msgstr "停用 %{name} 的自動續期失敗" +#: src/components/Notification/notifications.ts:105 #: src/language/constants.ts:52 msgid "Disable Remote Site Error" msgstr "禁用遠端站點錯誤" +#: src/components/Notification/notifications.ts:129 +msgid "Disable Remote Site Maintenance Error" +msgstr "禁用遠端站點維護錯誤" + +#: src/components/Notification/notifications.ts:133 +msgid "Disable Remote Site Maintenance Success" +msgstr "遠端站點維護已成功停用" + +#: src/components/Notification/notifications.ts:109 #: src/language/constants.ts:51 msgid "Disable Remote Site Success" msgstr "遠端站點停用成功" +#: src/components/Notification/notifications.ts:161 +msgid "Disable Remote Stream Error" +msgstr "停用遠端串流錯誤" + +#: src/components/Notification/notifications.ts:165 +msgid "Disable Remote Stream Success" +msgstr "停用遠端串流成功" + +#: src/components/Notification/notifications.ts:106 +msgid "Disable site %{name} from %{node} failed" +msgstr "停用 %{node} 上的網站 %{name} 失敗" + +#: src/components/Notification/notifications.ts:110 +msgid "Disable site %{name} from %{node} successfully" +msgstr "已成功從 %{node} 停用網站 %{name}" + +#: src/components/Notification/notifications.ts:130 +msgid "Disable site %{name} maintenance on %{node} failed" +msgstr "在 %{node} 上停用網站%{name}的維護模式失敗" + +#: src/components/Notification/notifications.ts:134 +msgid "Disable site %{name} maintenance on %{node} successfully" +msgstr "網站 %{name} 在 %{node} 上的維護已成功停用" + +#: src/components/Notification/notifications.ts:162 +msgid "Disable stream %{name} from %{node} failed" +msgstr "停用來自 %{node} 的串流 %{name} 失敗" + +#: src/components/Notification/notifications.ts:166 +msgid "Disable stream %{name} from %{node} successfully" +msgstr "已成功從 %{node} 停用串流 %{name}" + #: src/views/backup/AutoBackup/AutoBackup.vue:175 #: src/views/environments/list/envColumns.tsx:60 #: src/views/environments/list/envColumns.tsx:78 @@ -1234,6 +1571,10 @@ msgstr "您要移除這個 Upstream 嗎?" msgid "Docker client not initialized" msgstr "Docker 客戶端未初始化" +#: src/language/generate.ts:18 +msgid "Docker socket exists" +msgstr "Docker 套接字存在" + #: src/constants/errors/self_check.ts:16 msgid "Docker socket not exist" msgstr "Docker 通訊端不存在" @@ -1281,7 +1622,9 @@ msgstr "試運轉模式已啟用" msgid "" "Due to the security policies of some browsers, you cannot use passkeys on " "non-HTTPS websites, except when running on localhost." -msgstr "基於部分瀏覽器的安全政策,您無法在未啟用 HTTPS 網站,特別是 localhost 上使用通行金鑰。" +msgstr "" +"基於部分瀏覽器的安全政策,您無法在未啟用 HTTPS 網站,特別是 localhost 上使用" +"通行金鑰。" #: src/views/site/site_list/SiteDuplicate.vue:72 #: src/views/site/site_list/SiteList.vue:108 @@ -1380,14 +1723,56 @@ msgstr "啟用 HTTPS" msgid "Enable Proxy Cache" msgstr "啟用 Proxy 快取" +#: src/components/Notification/notifications.ts:113 #: src/language/constants.ts:54 msgid "Enable Remote Site Error" msgstr "啟用遠端網站錯誤" +#: src/components/Notification/notifications.ts:121 +msgid "Enable Remote Site Maintenance Error" +msgstr "啟用遠端網站維護錯誤" + +#: src/components/Notification/notifications.ts:125 +msgid "Enable Remote Site Maintenance Success" +msgstr "啟用遠端網站維護成功" + +#: src/components/Notification/notifications.ts:117 #: src/language/constants.ts:53 msgid "Enable Remote Site Success" msgstr "啟用遠端站點成功" +#: src/components/Notification/notifications.ts:169 +msgid "Enable Remote Stream Error" +msgstr "啟用遠端串流錯誤" + +#: src/components/Notification/notifications.ts:173 +msgid "Enable Remote Stream Success" +msgstr "啟用遠端串流成功" + +#: src/components/Notification/notifications.ts:122 +msgid "Enable site %{name} maintenance on %{node} failed" +msgstr "啟用網站 %{name} 在 %{node} 上的維護模式失敗" + +#: src/components/Notification/notifications.ts:126 +msgid "Enable site %{name} maintenance on %{node} successfully" +msgstr "成功在 %{node} 上啟用網站%{name}的維護模式" + +#: src/components/Notification/notifications.ts:114 +msgid "Enable site %{name} on %{node} failed" +msgstr "在 %{node} 上啟用網站%{name}失敗" + +#: src/components/Notification/notifications.ts:118 +msgid "Enable site %{name} on %{node} successfully" +msgstr "成功在 %{node} 上啟用網站%{name}" + +#: src/components/Notification/notifications.ts:170 +msgid "Enable stream %{name} on %{node} failed" +msgstr "在 %{node} 上啟用串流 %{name} 失敗" + +#: src/components/Notification/notifications.ts:174 +msgid "Enable stream %{name} on %{node} successfully" +msgstr "在 %{node} 上成功啟用串流 %{name}" + #: src/views/dashboard/NginxDashBoard.vue:172 msgid "Enable stub_status module" msgstr "啟用stub_status模組" @@ -1528,8 +1913,8 @@ msgstr "外部帳戶綁定 HMAC 金鑰(可選)。應為 Base64 URL 編碼格 #: src/views/certificate/ACMEUser.vue:90 msgid "" -"External Account Binding Key ID (optional). Required for some ACME " -"providers like ZeroSSL." +"External Account Binding Key ID (optional). Required for some ACME providers " +"like ZeroSSL." msgstr "外部帳戶綁定密鑰ID(可選)。某些ACME提供商(如ZeroSSL)需要此信息。" #: src/views/preference/tabs/NginxSettings.vue:49 @@ -1540,6 +1925,10 @@ msgstr "外部 Docker 容器" msgid "External notification configuration not found" msgstr "未找到外部通知配置" +#: src/components/Notification/notifications.ts:93 +msgid "External Notification Test" +msgstr "外部通知測試" + #: src/views/preference/Preference.vue:58 #: src/views/preference/tabs/ExternalNotify.vue:41 msgid "External Notify" @@ -1694,6 +2083,10 @@ msgstr "解密 Nginx UI 目錄失敗:{0}" msgid "Failed to delete certificate" msgstr "憑證刪除失敗" +#: src/language/generate.ts:19 +msgid "Failed to delete certificate from database: %{error}" +msgstr "從資料庫刪除憑證失敗: %{error}" + #: src/views/site/components/SiteStatusSelect.vue:73 #: src/views/stream/components/StreamStatusSelect.vue:45 msgid "Failed to disable %{msg}" @@ -1860,6 +2253,10 @@ msgstr "還原 Nginx UI 檔案失敗:{0}" msgid "Failed to revoke certificate" msgstr "撤銷憑證失敗" +#: src/language/generate.ts:20 +msgid "Failed to revoke certificate: %{error}" +msgstr "撤銷憑證失敗: %{error}" + #: src/views/dashboard/components/ParamsOptimization.vue:91 msgid "Failed to save Nginx performance settings" msgstr "儲存 Nginx 效能設定失敗" @@ -1975,12 +2372,13 @@ msgstr "中國使用者:https://cloud.nginxui.com/" msgid "" "For IP-based certificate configurations, only HTTP-01 challenge method is " "supported. DNS-01 challenge is not compatible with IP-based certificates." -msgstr "對於基於IP的證書配置,僅支援HTTP-01驗證方法。DNS-01驗證與基於IP的證書不相容。" +msgstr "" +"對於基於IP的證書配置,僅支援HTTP-01驗證方法。DNS-01驗證與基於IP的證書不相容。" #: src/components/AutoCertForm/AutoCertForm.vue:188 msgid "" -"For IP-based certificates, please specify the server IP address that will " -"be included in the certificate." +"For IP-based certificates, please specify the server IP address that will be " +"included in the certificate." msgstr "對於基於IP的證書,請指定將包含在證書中的伺服器IP地址。" #: src/constants/errors/middleware.ts:4 @@ -2123,7 +2521,9 @@ msgstr "ICP 編號" msgid "" "If the number of login failed attempts from a ip reach the max attempts in " "ban threshold minutes, the ip will be banned for a period of time." -msgstr "如果來自某個 IP 的登入失敗次數在禁止閾值分鐘內達到最大嘗試次數,該 IP 將被禁止一段時間。" +msgstr "" +"如果來自某個 IP 的登入失敗次數在禁止閾值分鐘內達到最大嘗試次數,該 IP 將被禁" +"止一段時間。" #: src/components/AutoCertForm/AutoCertForm.vue:280 msgid "" @@ -2336,7 +2736,8 @@ msgstr "Jwt 金鑰" msgid "" "Keep your recovery codes as safe as your password. We recommend saving them " "with a password manager." -msgstr "請將您的復原代碼與密碼一樣妥善保管。我們建議使用密碼管理工具來儲存這些代碼。" +msgstr "" +"請將您的復原代碼與密碼一樣妥善保管。我們建議使用密碼管理工具來儲存這些代碼。" #: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60 msgid "Keepalive Timeout" @@ -2493,6 +2894,15 @@ msgstr "Locations" msgid "Log" msgstr "日誌" +#: src/language/generate.ts:21 +msgid "" +"Log file %{log_path} is not a regular file. If you are using nginx-ui in " +"docker container, please refer to https://nginxui.com/zh_CN/guide/config-" +"nginx-log.html for more information." +msgstr "" +"日誌文件 %{log_path} 不是常規文件。如果您在 docker 容器中使用 nginx-ui,請參" +"考 https://nginxui.com/zh_CN/guide/config-nginx-log.html 獲取更多信息。" + #: src/routes/modules/nginx_log.ts:39 src/views/nginx_log/NginxLogList.vue:88 msgid "Log List" msgstr "日誌列表" @@ -2515,16 +2925,17 @@ msgstr "Logrotate" #: src/views/preference/tabs/LogrotateSettings.vue:13 msgid "" -"Logrotate, by default, is enabled in most mainstream Linux distributions " -"for users who install Nginx UI on the host machine, so you don't need to " -"modify the parameters on this page. For users who install Nginx UI using " -"Docker containers, you can manually enable this option. The crontab task " -"scheduler of Nginx UI will execute the logrotate command at the interval " -"you set in minutes." +"Logrotate, by default, is enabled in most mainstream Linux distributions for " +"users who install Nginx UI on the host machine, so you don't need to modify " +"the parameters on this page. For users who install Nginx UI using Docker " +"containers, you can manually enable this option. The crontab task scheduler " +"of Nginx UI will execute the logrotate command at the interval you set in " +"minutes." msgstr "" -"預設情況下,對於在主機上安裝 Nginx UI 的使用者,大多數主流 Linux 發行版都啟用了 " -"logrotate,因此您無需修改此頁面的參數。對於使用 Docker 容器安裝 Nginx UI 的使用者,您可以手動啟用此選項。Nginx UI " -"的 crontab 任務排程器將按照您設定的分鐘間隔執行 logrotate 命令。" +"預設情況下,對於在主機上安裝 Nginx UI 的使用者,大多數主流 Linux 發行版都啟用" +"了 logrotate,因此您無需修改此頁面的參數。對於使用 Docker 容器安裝 Nginx UI " +"的使用者,您可以手動啟用此選項。Nginx UI 的 crontab 任務排程器將按照您設定的" +"分鐘間隔執行 logrotate 命令。" #: src/components/UpstreamDetailModal/UpstreamDetailModal.vue:51 #: src/composables/useUpstreamStatus.ts:156 @@ -2553,7 +2964,8 @@ msgstr "建立憑證目錄錯誤:{0}" msgid "" "Make sure you have configured a reverse proxy for .well-known directory to " "HTTPChallengePort before obtaining the certificate." -msgstr "在取得憑證前,請確保您已將 .well-known 目錄反向代理到 HTTPChallengePort。" +msgstr "" +"在取得憑證前,請確保您已將 .well-known 目錄反向代理到 HTTPChallengePort。" #: src/routes/modules/config.ts:10 #: src/views/config/components/ConfigLeftPanel.vue:114 @@ -2833,6 +3245,10 @@ msgstr "Nginx -T 的輸出為空" msgid "Nginx Access Log Path" msgstr "Nginx 存取日誌路徑" +#: src/language/generate.ts:23 +msgid "Nginx access log path exists" +msgstr "Nginx 訪問日誌路徑存在" + #: src/views/backup/AutoBackup/AutoBackup.vue:28 #: src/views/backup/AutoBackup/AutoBackup.vue:40 msgid "Nginx and Nginx UI Config" @@ -2862,6 +3278,14 @@ msgstr "Nginx 設定檔未包含 stream-enabled" msgid "Nginx config directory is not set" msgstr "Nginx 設定目錄未設定" +#: src/language/generate.ts:24 +msgid "Nginx configuration directory exists" +msgstr "Nginx 配置目錄存在" + +#: src/language/generate.ts:25 +msgid "Nginx configuration entry file exists" +msgstr "Nginx 設定入口檔案存在" + #: src/components/SystemRestore/SystemRestoreContent.vue:138 msgid "Nginx configuration has been restored" msgstr "Nginx 設定已恢復" @@ -2896,6 +3320,10 @@ msgstr "Nginx CPU 使用率" msgid "Nginx Error Log Path" msgstr "Nginx 錯誤日誌路徑" +#: src/language/generate.ts:26 +msgid "Nginx error log path exists" +msgstr "Nginx 錯誤日誌路徑存在" + #: src/constants/errors/nginx.ts:2 msgid "Nginx error: {0}" msgstr "Nginx 錯誤:{0}" @@ -2933,6 +3361,10 @@ msgstr "Nginx 記憶體使用量" msgid "Nginx PID Path" msgstr "Nginx PID 路徑" +#: src/language/generate.ts:22 +msgid "Nginx PID path exists" +msgstr "Nginx PID 路徑存在" + #: src/views/preference/tabs/NginxSettings.vue:40 msgid "Nginx Reload Command" msgstr "Nginx 重新載入指令" @@ -2962,6 +3394,10 @@ msgstr "Nginx 重啟操作已分發至遠端節點" msgid "Nginx restarted successfully" msgstr "Nginx 重啟成功" +#: src/language/generate.ts:27 +msgid "Nginx sbin path exists" +msgstr "Nginx Sbin 路徑存在" + #: src/views/preference/tabs/NginxSettings.vue:37 msgid "Nginx Test Config Command" msgstr "Nginx 測試設定指令" @@ -2985,10 +3421,22 @@ msgstr "Nginx UI 設定已恢復" #: src/components/SystemRestore/SystemRestoreContent.vue:336 msgid "" -"Nginx UI configuration has been restored and will restart automatically in " -"a few seconds." +"Nginx UI configuration has been restored and will restart automatically in a " +"few seconds." msgstr "Nginx UI 設定已恢復,將在幾秒後自動重新啟動。" +#: src/language/generate.ts:28 +msgid "Nginx.conf includes conf.d directory" +msgstr "Nginx.conf 包含 conf.d 目錄" + +#: src/language/generate.ts:29 +msgid "Nginx.conf includes sites-enabled directory" +msgstr "Nginx.conf 包含 sites-enabled 目錄" + +#: src/language/generate.ts:30 +msgid "Nginx.conf includes streams-enabled directory" +msgstr "Nginx.conf 包含 streams-enabled 目錄" + #: src/components/ChatGPT/ChatMessageInput.vue:17 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:111 #: src/components/EnvGroupTabs/EnvGroupTabs.vue:99 @@ -3028,7 +3476,9 @@ msgstr "未配置伺服器" msgid "" "No specific IP address found in server_name configuration. Please specify " "the server IP address below for the certificate." -msgstr "在 server_name 設定中未找到特定 IP 位址。請在下方指定伺服器 IP 位址以取得憑證。" +msgstr "" +"在 server_name 設定中未找到特定 IP 位址。請在下方指定伺服器 IP 位址以取得憑" +"證。" #: src/components/NgxConfigEditor/NgxUpstream.vue:103 msgid "No upstreams configured" @@ -3294,8 +3744,8 @@ msgid "" "facial recognition, a device password, or a PIN. They can be used as a " "password replacement or as a 2FA method." msgstr "" -"通行金鑰是 WebAuthn 認證,透過觸控、面部辨識、裝置密碼或 PIN 碼來驗證您的身份。它們可以用作密碼替代品或作為雙重身份驗證 (2FA) " -"方法。" +"通行金鑰是 WebAuthn 認證,透過觸控、面部辨識、裝置密碼或 PIN 碼來驗證您的身" +"份。它們可以用作密碼替代品或作為雙重身份驗證 (2FA) 方法。" #: src/views/other/Login.vue:238 src/views/user/userColumns.tsx:16 msgid "Password" @@ -3446,12 +3896,15 @@ msgstr "請填寫您的 DNS 供應商提供的 API 認證憑據。" msgid "" "Please first add credentials in Certification > DNS Credentials, and then " "select one of the credentialsbelow to request the API of the DNS provider." -msgstr "請先在「憑證」 > 「DNS 認證」中新增認證,然後選擇以下認證之一以請求 DNS 供應商的 API。" +msgstr "" +"請先在「憑證」 > 「DNS 認證」中新增認證,然後選擇以下認證之一以請求 DNS 供應" +"商的 API。" +#: src/components/Notification/notifications.ts:194 #: src/language/constants.ts:59 msgid "" -"Please generate new recovery codes in the preferences immediately to " -"prevent lockout." +"Please generate new recovery codes in the preferences immediately to prevent " +"lockout." msgstr "請立即在偏好設定中產生新的恢復碼,以免無法存取您的賬戶。" #: src/views/config/components/ConfigRightPanel/Basic.vue:27 @@ -3493,7 +3946,8 @@ msgid "Please log in." msgstr "請登入。" #: src/views/certificate/DNSCredential.vue:102 -msgid "Please note that the unit of time configurations below are all in seconds." +msgid "" +"Please note that the unit of time configurations below are all in seconds." msgstr "請注意,以下時間設定單位均為秒。" #: src/views/install/components/InstallView.vue:102 @@ -3623,9 +4077,9 @@ msgstr "受保護目錄" #: src/views/preference/tabs/ServerSettings.vue:47 msgid "" "Protocol configuration only takes effect when directly connecting. If using " -"reverse proxy, please configure the protocol separately in the reverse " -"proxy." -msgstr "協議配置僅在直接連接時生效。如果使用反向代理,請在反向代理中單獨配置協議。" +"reverse proxy, please configure the protocol separately in the reverse proxy." +msgstr "" +"協議配置僅在直接連接時生效。如果使用反向代理,請在反向代理中單獨配置協議。" #: src/views/certificate/DNSCredential.vue:26 msgid "Provider" @@ -3674,7 +4128,7 @@ msgstr "讀取" msgid "Receive" msgstr "接收" -#: src/components/SelfCheck/SelfCheck.vue:24 +#: src/components/SelfCheck/SelfCheck.vue:23 msgid "Recheck" msgstr "重新檢查" @@ -3690,7 +4144,8 @@ msgstr "復原代碼" msgid "" "Recovery codes are used to access your account when you lose access to your " "2FA device. Each code can only be used once." -msgstr "復原代碼在您無法使用 2FA 裝置時,用於存取您的帳戶。每個代碼僅能使用一次。" +msgstr "" +"復原代碼在您無法使用 2FA 裝置時,用於存取您的帳戶。每個代碼僅能使用一次。" #: src/views/preference/tabs/CertSettings.vue:40 msgid "Recursive Nameservers" @@ -3758,6 +4213,22 @@ msgstr "重新載入 Nginx" msgid "Reload nginx failed: {0}" msgstr "重新載入 nginx 失敗: {0}" +#: src/components/Notification/notifications.ts:10 +msgid "Reload Nginx on %{node} failed, response: %{resp}" +msgstr "在節點 %{node} 上重新載入 Nginx 失敗,回應:%{resp}" + +#: src/components/Notification/notifications.ts:14 +msgid "Reload Nginx on %{node} successfully" +msgstr "在 %{node} 上成功重新載入 Nginx" + +#: src/components/Notification/notifications.ts:9 +msgid "Reload Remote Nginx Error" +msgstr "重新載入遠端 Nginx 錯誤" + +#: src/components/Notification/notifications.ts:13 +msgid "Reload Remote Nginx Success" +msgstr "遠端 Nginx 重新載入成功" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:52 msgid "Reload request failed, please check your network connection" msgstr "重新載入請求失敗,請檢查您的網路連線" @@ -3797,22 +4268,56 @@ msgstr "移除成功" msgid "Rename" msgstr "重新命名" -#: src/language/constants.ts:42 +#: src/components/Notification/notifications.ts:78 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" +msgstr "將 %{orig_path} 重新命名為 %{new_path} 在 %{env_name} 上失敗" + +#: src/components/Notification/notifications.ts:82 +msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" +msgstr "成功將 %{env_name} 上的 %{orig_path} 重新命名為 %{new_path}" + +#: src/components/Notification/notifications.ts:77 src/language/constants.ts:42 msgid "Rename Remote Config Error" msgstr "重新命名遠端設定錯誤" -#: src/language/constants.ts:41 +#: src/components/Notification/notifications.ts:81 src/language/constants.ts:41 msgid "Rename Remote Config Success" msgstr "重新命名遠端設定成功" +#: src/components/Notification/notifications.ts:137 #: src/language/constants.ts:56 msgid "Rename Remote Site Error" msgstr "重新命名遠端遠端站點時發生錯誤" +#: src/components/Notification/notifications.ts:141 #: src/language/constants.ts:55 msgid "Rename Remote Site Success" msgstr "重新命名遠端站點成功" +#: src/components/Notification/notifications.ts:177 +msgid "Rename Remote Stream Error" +msgstr "遠端串流重新命名錯誤" + +#: src/components/Notification/notifications.ts:181 +msgid "Rename Remote Stream Success" +msgstr "遠端串流重新命名成功" + +#: src/components/Notification/notifications.ts:138 +msgid "Rename site %{name} to %{new_name} on %{node} failed" +msgstr "將網站 %{name} 在 %{node} 上重新命名為 %{new_name} 失敗" + +#: src/components/Notification/notifications.ts:142 +msgid "Rename site %{name} to %{new_name} on %{node} successfully" +msgstr "將網站 %{name} 在 %{node} 上成功更名為 %{new_name}" + +#: src/components/Notification/notifications.ts:178 +msgid "Rename stream %{name} to %{new_name} on %{node} failed" +msgstr "將節點 %{node} 上的串流 %{name} 重新命名為 %{new_name} 失敗" + +#: src/components/Notification/notifications.ts:182 +msgid "Rename stream %{name} to %{new_name} on %{node} successfully" +msgstr "將節點 %{node} 上的串流 %{name} 重新命名為 %{new_name} 成功" + #: src/views/config/components/Rename.vue:43 msgid "Rename successfully" msgstr "重新命名成功" @@ -3874,7 +4379,9 @@ msgid "" "Resident Set Size: Actual memory resident in physical memory, including all " "shared library memory, which will be repeated calculated for multiple " "processes" -msgstr "常駐集大小:實際存在於實體記憶體中的記憶體,包含所有共用函式庫記憶體,這些記憶體會在多個行程間重複計算" +msgstr "" +"常駐集大小:實際存在於實體記憶體中的記憶體,包含所有共用函式庫記憶體,這些記" +"憶體會在多個行程間重複計算" #: src/composables/usePerformanceMetrics.ts:109 #: src/views/dashboard/components/PerformanceTablesCard.vue:69 @@ -3891,6 +4398,22 @@ msgstr "重新啟動" msgid "Restart Nginx" msgstr "重新啟動 Nginx" +#: src/components/Notification/notifications.ts:18 +msgid "Restart Nginx on %{node} failed, response: %{resp}" +msgstr "在節點 %{node} 上重啟 Nginx 失敗,回應:%{resp}" + +#: src/components/Notification/notifications.ts:22 +msgid "Restart Nginx on %{node} successfully" +msgstr "在 %{node} 上成功重啟 Nginx" + +#: src/components/Notification/notifications.ts:17 +msgid "Restart Remote Nginx Error" +msgstr "遠端 Nginx 重啟錯誤" + +#: src/components/Notification/notifications.ts:21 +msgid "Restart Remote Nginx Success" +msgstr "遠端 Nginx 重啟成功" + #: src/components/EnvGroupTabs/EnvGroupTabs.vue:72 msgid "Restart request failed, please check your network connection" msgstr "重新啟動請求失敗,請檢查您的網路連線" @@ -4100,14 +4623,40 @@ msgstr "儲存" msgid "Save Directive" msgstr "儲存指令" +#: src/components/Notification/notifications.ts:145 #: src/language/constants.ts:48 msgid "Save Remote Site Error" msgstr "儲存遠端站點時發生錯誤" +#: src/components/Notification/notifications.ts:149 #: src/language/constants.ts:47 msgid "Save Remote Site Success" msgstr "儲存遠端站點成功" +#: src/components/Notification/notifications.ts:185 +msgid "Save Remote Stream Error" +msgstr "儲存遠端串流錯誤" + +#: src/components/Notification/notifications.ts:189 +msgid "Save Remote Stream Success" +msgstr "遠端串流儲存成功" + +#: src/components/Notification/notifications.ts:146 +msgid "Save site %{name} to %{node} failed" +msgstr "將網站 %{name} 儲存至 %{node} 失敗" + +#: src/components/Notification/notifications.ts:150 +msgid "Save site %{name} to %{node} successfully" +msgstr "網站 %{name} 成功儲存至 %{node}" + +#: src/components/Notification/notifications.ts:186 +msgid "Save stream %{name} to %{node} failed" +msgstr "儲存串流 %{name} 至 %{node} 失敗" + +#: src/components/Notification/notifications.ts:190 +msgid "Save stream %{name} to %{node} successfully" +msgstr "串流 %{name} 成功儲存至 %{node}" + #: src/language/curd.ts:36 msgid "Save successful" msgstr "儲存成功" @@ -4214,7 +4763,7 @@ msgstr "已選擇 {count} 個檔案" msgid "Selector" msgstr "選擇器" -#: src/components/SelfCheck/SelfCheck.vue:16 src/routes/modules/system.ts:19 +#: src/components/SelfCheck/SelfCheck.vue:15 src/routes/modules/system.ts:19 msgid "Self Check" msgstr "自我檢查" @@ -4300,19 +4849,19 @@ msgstr "使用 HTTP01 挑戰提供者" #: src/constants/errors/nginx_log.ts:8 msgid "" -"Settings.NginxLogSettings.AccessLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.AccessLogPath 為空,請參考 " -"https://nginxui.com/guide/config-nginx.html 了解更多資訊" +"Settings.NginxLogSettings.AccessLogPath 為空,請參考 https://nginxui.com/" +"guide/config-nginx.html 了解更多資訊" #: src/constants/errors/nginx_log.ts:7 msgid "" -"Settings.NginxLogSettings.ErrorLogPath is empty, refer to " -"https://nginxui.com/guide/config-nginx.html for more information" +"Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui." +"com/guide/config-nginx.html for more information" msgstr "" -"Settings.NginxLogSettings.ErrorLogPath 為空,請參考 " -"https://nginxui.com/guide/config-nginx.html 了解更多資訊" +"Settings.NginxLogSettings.ErrorLogPath 為空,請參考 https://nginxui.com/" +"guide/config-nginx.html 了解更多資訊" #: src/views/install/components/InstallView.vue:65 msgid "Setup your Nginx UI" @@ -4354,6 +4903,10 @@ msgstr "網站日誌" msgid "Site not found" msgstr "站點未找到" +#: src/language/generate.ts:31 +msgid "Sites directory exists" +msgstr "站點目錄存在" + #: src/routes/modules/sites.ts:19 msgid "Sites List" msgstr "網站列表" @@ -4483,6 +5036,12 @@ msgstr "儲存空間" msgid "Storage Configuration" msgstr "儲存配置" +#: src/components/Notification/notifications.ts:26 +msgid "" +"Storage configuration validation failed for backup task %{backup_name}, " +"error: %{error}" +msgstr "備份任務 %{backup_name} 的存儲配置驗證失敗,錯誤:%{error}" + #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120 #: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54 msgid "Storage Path" @@ -4510,6 +5069,10 @@ msgstr "串流已啟用" msgid "Stream not found" msgstr "串流未找到" +#: src/language/generate.ts:32 +msgid "Streams directory exists" +msgstr "Streams 目錄存在" + #: src/constants/errors/self_check.ts:13 msgid "Streams-available directory not exist" msgstr "streams-available 資料夾不存在" @@ -4537,25 +5100,16 @@ msgstr "成功" msgid "Sunday" msgstr "星期日" -#: src/components/SelfCheck/tasks/frontend/sse.ts:14 -msgid "" -"Support communication with the backend through the Server-Sent Events " -"protocol. If your Nginx UI is being used via an Nginx reverse proxy, please " -"refer to this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" -msgstr "" -"支援透過 Server-Sent Events 協定與後端通訊。如果您的 Nginx UI 是透過 Nginx " -"反向代理使用的,請參考此連結編寫相應的設定檔:https://nginxui.com/guide/nginx-proxy-example.html" - #: src/components/SelfCheck/tasks/frontend/websocket.ts:13 msgid "" "Support communication with the backend through the WebSocket protocol. If " -"your Nginx UI is being used via an Nginx reverse proxy, please refer to " -"this link to write the corresponding configuration file: " -"https://nginxui.com/guide/nginx-proxy-example.html" +"your Nginx UI is being used via an Nginx reverse proxy, please refer to this " +"link to write the corresponding configuration file: https://nginxui.com/" +"guide/nginx-proxy-example.html" msgstr "" -"支援透過 WebSocket 協議與後端進行通訊。如果您的 Nginx UI 是透過 Nginx " -"反向代理使用,請參考此連結編寫對應的設定文件:https://nginxui.com/guide/nginx-proxy-example.html" +"支援透過 WebSocket 協議與後端進行通訊。如果您的 Nginx UI 是透過 Nginx 反向代" +"理使用,請參考此連結編寫對應的設定文件:https://nginxui.com/guide/nginx-" +"proxy-example.html" #: src/language/curd.ts:53 src/language/curd.ts:57 msgid "Support single or batch upload of files" @@ -4592,19 +5146,35 @@ msgstr "同步" msgid "Sync Certificate" msgstr "同步憑證" -#: src/language/constants.ts:39 +#: src/components/Notification/notifications.ts:62 +msgid "Sync Certificate %{cert_name} to %{env_name} failed" +msgstr "同步憑證 %{cert_name} 至 %{env_name} 失敗" + +#: src/components/Notification/notifications.ts:66 +msgid "Sync Certificate %{cert_name} to %{env_name} successfully" +msgstr "同步憑證 %{cert_name} 到 %{env_name} 成功" + +#: src/components/Notification/notifications.ts:61 src/language/constants.ts:39 msgid "Sync Certificate Error" msgstr "同步憑證錯誤" -#: src/language/constants.ts:38 +#: src/components/Notification/notifications.ts:65 src/language/constants.ts:38 msgid "Sync Certificate Success" msgstr "同步憑證成功" -#: src/language/constants.ts:45 +#: src/components/Notification/notifications.ts:70 +msgid "Sync config %{config_name} to %{env_name} failed" +msgstr "同步設定 %{config_name} 至 %{env_name} 失敗" + +#: src/components/Notification/notifications.ts:74 +msgid "Sync config %{config_name} to %{env_name} successfully" +msgstr "同步設定 %{config_name} 到 %{env_name} 成功" + +#: src/components/Notification/notifications.ts:69 src/language/constants.ts:45 msgid "Sync Config Error" msgstr "同步設定錯誤" -#: src/language/constants.ts:44 +#: src/components/Notification/notifications.ts:73 src/language/constants.ts:44 msgid "Sync Config Success" msgstr "同步設定成功" @@ -4698,7 +5268,9 @@ msgid "" "The certificate for the domain will be checked 30 minutes, and will be " "renewed if it has been more than 1 week or the period you set in settings " "since it was last issued." -msgstr "網域憑證將在 30 分鐘內接受檢查,如果自上次簽發以來已超過 1 週或您在設定中設定的時間,憑證將會自動更新。" +msgstr "" +"網域憑證將在 30 分鐘內接受檢查,如果自上次簽發以來已超過 1 週或您在設定中設定" +"的時間,憑證將會自動更新。" #: src/views/preference/tabs/NodeSettings.vue:37 msgid "" @@ -4716,8 +5288,7 @@ msgstr "輸入的不是 SSL 憑證金鑰" #: src/constants/errors/nginx_log.ts:2 msgid "" -"The log path is not under the paths in " -"settings.NginxSettings.LogDirWhiteList" +"The log path is not under the paths in settings.NginxSettings.LogDirWhiteList" msgstr "日誌路徑不在 settings.NginxSettings.LogDirWhiteList 設定中的路徑範圍內" #: src/views/preference/tabs/OpenAISettings.vue:23 @@ -4728,7 +5299,8 @@ msgid "" msgstr "模型名稱僅能包含字母、Unicode 字元、數字、連字號、破折號、冒號和句點。" #: src/views/preference/tabs/OpenAISettings.vue:90 -msgid "The model used for code completion, if not set, the chat model will be used." +msgid "" +"The model used for code completion, if not set, the chat model will be used." msgstr "用於代碼補全的模型,如果未設置,將使用聊天模型。" #: src/views/preference/tabs/NodeSettings.vue:18 @@ -4760,7 +5332,9 @@ msgid "" "The remote Nginx UI version is not compatible with the local Nginx UI " "version. To avoid potential errors, please upgrade the remote Nginx UI to " "match the local version." -msgstr "遠端 Nginx UI 版本與本機 Nginx UI 版本不相容。為避免潛在錯誤,請升級遠端 Nginx UI 以匹配本機版本。" +msgstr "" +"遠端 Nginx UI 版本與本機 Nginx UI 版本不相容。為避免潛在錯誤,請升級遠端 " +"Nginx UI 以匹配本機版本。" #: src/components/AutoCertForm/AutoCertForm.vue:155 msgid "" @@ -4795,7 +5369,9 @@ msgid "" "These codes are the last resort for accessing your account in case you lose " "your password and second factors. If you cannot find these codes, you will " "lose access to your account." -msgstr "這些代碼是您在遺失密碼和第二重驗證因素時,存取帳戶的最後手段。如果您找不到這些代碼,您將無法再存取您的帳戶。" +msgstr "" +"這些代碼是您在遺失密碼和第二重驗證因素時,存取帳戶的最後手段。如果您找不到這" +"些代碼,您將無法再存取您的帳戶。" #: src/views/certificate/components/AutoCertManagement.vue:45 msgid "This Auto Cert item is invalid, please remove it." @@ -4828,15 +5404,20 @@ msgid "This field should not be empty" msgstr "此欄位不應為空" #: src/constants/form_errors.ts:6 -msgid "This field should only contain letters, unicode characters, numbers, and -_." +msgid "" +"This field should only contain letters, unicode characters, numbers, and -_." msgstr "此欄位僅能包含字母、Unicode 字元、數字、連字號、破折號和底線。" #: src/language/curd.ts:46 msgid "" -"This field should only contain letters, unicode characters, numbers, and " -"-_./:" +"This field should only contain letters, unicode characters, numbers, and -" +"_./:" msgstr "此欄位應僅包含字母、Unicode字符、數字和 -_./:" +#: src/components/Notification/notifications.ts:94 +msgid "This is a test message sent at %{timestamp} from Nginx UI." +msgstr "這是一條測試消息,於 %{timestamp} 從 Nginx UI 發送。" + #: src/views/dashboard/NginxDashBoard.vue:175 msgid "" "This module provides Nginx request statistics, connection count, etc. data. " @@ -4855,19 +5436,21 @@ msgstr "此操作僅會從資料庫中移除憑證。檔案系統上的憑證檔 #: src/components/AutoCertForm/AutoCertForm.vue:128 msgid "" -"This site is configured as a default server (default_server) for HTTPS " -"(port 443). IP certificates require Certificate Authority (CA) support and " -"may not be available with all ACME providers." +"This site is configured as a default server (default_server) for HTTPS (port " +"443). IP certificates require Certificate Authority (CA) support and may not " +"be available with all ACME providers." msgstr "" -"此站點已配置為 HTTPS(端口 443)的預設伺服器(default_server)。IP 憑證需要憑證頒發機構(CA)的支援,且並非所有 ACME " -"供應商都提供此類憑證。" +"此站點已配置為 HTTPS(端口 443)的預設伺服器(default_server)。IP 憑證需要憑" +"證頒發機構(CA)的支援,且並非所有 ACME 供應商都提供此類憑證。" #: src/components/AutoCertForm/AutoCertForm.vue:132 msgid "" -"This site uses wildcard server name (_) which typically indicates an " -"IP-based certificate. IP certificates require Certificate Authority (CA) " +"This site uses wildcard server name (_) which typically indicates an IP-" +"based certificate. IP certificates require Certificate Authority (CA) " "support and may not be available with all ACME providers." -msgstr "此站點使用萬用字元伺服器名稱(_),通常表示基於IP的憑證。IP憑證需要憑證授權機構(CA)的支援,並且可能並非所有ACME供應商都提供。" +msgstr "" +"此站點使用萬用字元伺服器名稱(_),通常表示基於IP的憑證。IP憑證需要憑證授權機" +"構(CA)的支援,並且可能並非所有ACME供應商都提供。" #: src/views/backup/components/BackupCreator.vue:141 msgid "" @@ -4898,7 +5481,8 @@ msgid "" msgstr "這將恢復設定檔案和資料庫。恢復完成後,Nginx UI 將重新啟動。" #: src/views/environments/list/BatchUpgrader.vue:186 -msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." +msgid "" +"This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}." msgstr "這將在 %{nodeNames} 上升級或重新安裝 Nginx UI 到 %{version}。" #: src/views/preference/tabs/AuthSettings.vue:92 @@ -4919,7 +5503,9 @@ msgstr "提示" msgid "" "Tips: You can increase the concurrency processing capacity by increasing " "worker_processes or worker_connections" -msgstr "提示:您可以通過增加 worker_processes 或 worker_connections 來提高並行處理能力" +msgstr "" +"提示:您可以通過增加 worker_processes 或 worker_connections 來提高並行處理能" +"力" #: src/views/notification/notificationColumns.tsx:58 msgid "Title" @@ -4933,25 +5519,28 @@ msgstr "若要確認撤銷,請在下方欄位中輸入「撤銷」:" msgid "" "To enable it, you need to install the Google or Microsoft Authenticator app " "on your mobile phone." -msgstr "要啟用它,您需要在手機上安裝 Google 或 Microsoft Authenticator 應用程式。" +msgstr "" +"要啟用它,您需要在手機上安裝 Google 或 Microsoft Authenticator 應用程式。" #: src/views/preference/components/AuthSettings/AddPasskey.vue:94 msgid "" "To ensure security, Webauthn configuration cannot be added through the UI. " "Please manually configure the following in the app.ini configuration file " "and restart Nginx UI." -msgstr "為確保安全性,Webauthn 設定無法透過 UI 新增。請在 app.ini 設定檔中手動設定以下內容,並重新啟動 Nginx UI。" +msgstr "" +"為確保安全性,Webauthn 設定無法透過 UI 新增。請在 app.ini 設定檔中手動設定以" +"下內容,並重新啟動 Nginx UI。" #: src/views/site/site_edit/components/Cert/IssueCert.vue:34 #: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15 msgid "" "To make sure the certification auto-renewal can work normally, we need to " -"add a location which can proxy the request from authority to backend, and " -"we need to save this file and reload the Nginx. Are you sure you want to " +"add a location which can proxy the request from authority to backend, and we " +"need to save this file and reload the Nginx. Are you sure you want to " "continue?" msgstr "" -"為了確保憑證自動續期能夠正常運作,我們需要新增一個 Location 來代理從授權後端的請求,我們需要儲存這個檔案並重新載入 " -"Nginx。你確定你要繼續嗎?" +"為了確保憑證自動續期能夠正常運作,我們需要新增一個 Location 來代理從授權後端" +"的請求,我們需要儲存這個檔案並重新載入 Nginx。你確定你要繼續嗎?" #: src/views/preference/tabs/OpenAISettings.vue:36 msgid "" @@ -4959,8 +5548,8 @@ msgid "" "provide an OpenAI-compatible API endpoint, so just set the baseUrl to your " "local API." msgstr "" -"要使用本機大型語言模型,請使用 ollama、vllm 或 lmdeploy 部署。它們提供與 OpenAI 相容的 API 端點,因此只需將 " -"baseUrl 設定為您的本機 API。" +"要使用本機大型語言模型,請使用 ollama、vllm 或 lmdeploy 部署。它們提供與 " +"OpenAI 相容的 API 端點,因此只需將 baseUrl 設定為您的本機 API。" #: src/views/dashboard/NginxDashBoard.vue:57 msgid "Toggle failed" @@ -5244,14 +5833,18 @@ msgid "" "Warning: Restore operation will overwrite current configurations. Make sure " "you have a valid backup file and security token, and carefully select what " "to restore." -msgstr "警告:恢復操作將覆蓋目前設定。請確保您擁有有效的備份檔案和安全令牌,並謹慎選擇要恢復的內容。" +msgstr "" +"警告:恢復操作將覆蓋目前設定。請確保您擁有有效的備份檔案和安全令牌,並謹慎選" +"擇要恢復的內容。" #: src/components/AutoCertForm/AutoCertForm.vue:103 msgid "" "Warning: This appears to be a private IP address. Public CAs like Let's " "Encrypt cannot issue certificates for private IPs. Use a public IP address " "or consider using a private CA." -msgstr "警告:這似乎是一個私有 IP 地址。像 Let's Encrypt 這樣的公共 CA 無法為私有IP頒發證書。請使用公共 IP 地址或考慮使用私有CA。" +msgstr "" +"警告:這似乎是一個私有 IP 地址。像 Let's Encrypt 這樣的公共 CA 無法為私有IP頒" +"發證書。請使用公共 IP 地址或考慮使用私有CA。" #: src/views/certificate/DNSCredential.vue:96 msgid "" @@ -5261,9 +5854,11 @@ msgstr "我們將在您的網域的 DNS 記錄中新增一個或多個 TXT 記 #: src/views/site/site_edit/components/Cert/ObtainCert.vue:141 msgid "" -"We will remove the HTTPChallenge configuration from this file and reload " -"the Nginx. Are you sure you want to continue?" -msgstr "我們將從該檔案中刪除 HTTPChallenge 設定並重新載入 Nginx 設定檔案。你確定你要繼續嗎?" +"We will remove the HTTPChallenge configuration from this file and reload the " +"Nginx. Are you sure you want to continue?" +msgstr "" +"我們將從該檔案中刪除 HTTPChallenge 設定並重新載入 Nginx 設定檔案。你確定你要" +"繼續嗎?" #: src/views/preference/tabs/AuthSettings.vue:65 msgid "Webauthn" @@ -5298,14 +5893,18 @@ msgid "" "When Enabled, Nginx UI will automatically re-register users upon startup. " "Generally, do not enable this unless you are in a dev environment and using " "Pebble as CA." -msgstr "啟用後,Nginx UI 將在啟動時自動重新註冊使用者。通常,除非您處於開發環境並使用 Pebble 作為 CA,否則不建議啟用此功能。" +msgstr "" +"啟用後,Nginx UI 將在啟動時自動重新註冊使用者。通常,除非您處於開發環境並使" +"用 Pebble 作為 CA,否則不建議啟用此功能。" #: src/views/site/site_edit/components/RightPanel/Basic.vue:62 #: src/views/stream/components/RightPanel/Basic.vue:57 msgid "" "When you enable/disable, delete, or save this site, the nodes set in the " "Node Group and the nodes selected below will be synchronized." -msgstr "當您啟用/停用、刪除或儲存此網站時,在節點群組中設定的節點以及下方選擇的節點將會同步更新。" +msgstr "" +"當您啟用/停用、刪除或儲存此網站時,在節點群組中設定的節點以及下方選擇的節點將" +"會同步更新。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140 msgid "" @@ -5373,9 +5972,11 @@ msgstr "是的" #: src/views/terminal/Terminal.vue:132 msgid "" -"You are accessing this terminal over an insecure HTTP connection on a " -"non-localhost domain. This may expose sensitive information." -msgstr "您正在透過非本地主機域上的不安全 HTTP 連線存取此終端機。這可能會暴露敏感資訊。" +"You are accessing this terminal over an insecure HTTP connection on a non-" +"localhost domain. This may expose sensitive information." +msgstr "" +"您正在透過非本地主機域上的不安全 HTTP 連線存取此終端機。這可能會暴露敏感資" +"訊。" #: src/constants/errors/config.ts:8 msgid "You are not allowed to delete a file outside of the nginx config path" @@ -5404,7 +6005,8 @@ msgid "" msgstr "您尚未設定 Webauthn 設定,因此無法新增通行金鑰。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81 -msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." +msgid "" +"You have not enabled 2FA yet. Please enable 2FA to generate recovery codes." msgstr "您尚未啟用雙重身份驗證 (2FA)。請啟用 2FA 以生成復原代碼。" #: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94 @@ -5426,423 +6028,15 @@ msgstr "您的舊代碼將不再有效。" msgid "Your passkeys" msgstr "您的通行金鑰" -#~ msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}" -#~ msgstr "[Nginx UI] ACME 使用者:%{name},電子郵件:%{email},CA 目錄:%{caDir}" - -#~ msgid "[Nginx UI] Backing up current certificate for later revocation" -#~ msgstr "[Nginx UI] 正在備份當前憑證以便後續撤銷" - -#~ msgid "[Nginx UI] Certificate renewed successfully" -#~ msgstr "[Nginx UI] 憑證更新成功" - -#~ msgid "[Nginx UI] Certificate successfully revoked" -#~ msgstr "[Nginx UI] 證書已成功撤銷" - -#~ msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate" -#~ msgstr "[Nginx UI] 憑證已用於伺服器,正在重新載入伺服器 TLS 憑證" - -#~ msgid "[Nginx UI] Creating client facilitates communication with the CA server" -#~ msgstr "[Nginx UI] 創建客戶端以促進與 CA 伺服器的通信" - -#~ msgid "[Nginx UI] Environment variables cleaned" -#~ msgstr "[Nginx UI] 環境變數已清理" - -#~ msgid "[Nginx UI] Finished" -#~ msgstr "[Nginx UI] 已完成" - -#~ msgid "[Nginx UI] Issued certificate successfully" -#~ msgstr "[Nginx UI] 證書簽發成功" - -#~ msgid "[Nginx UI] Obtaining certificate" -#~ msgstr "[Nginx UI] 正在取得憑證" - -#~ msgid "[Nginx UI] Preparing for certificate revocation" -#~ msgstr "[Nginx UI] 準備撤銷憑證" - -#~ msgid "[Nginx UI] Preparing lego configurations" -#~ msgstr "[Nginx UI] 正在準備 lego 配置" - -#~ msgid "[Nginx UI] Reloading nginx" -#~ msgstr "[Nginx UI] 重新載入 Nginx" - -#~ msgid "[Nginx UI] Revocation completed" -#~ msgstr "[Nginx UI] 撤銷完成" - -#~ msgid "[Nginx UI] Revoking certificate" -#~ msgstr "[Nginx UI] 正在撤銷證書" - -#~ msgid "[Nginx UI] Revoking old certificate" -#~ msgstr "[Nginx UI] 正在撤銷舊憑證" - -#~ msgid "[Nginx UI] Setting DNS01 challenge provider" -#~ msgstr "[Nginx UI] 正在設定 DNS01 驗證提供者" - -#~ msgid "[Nginx UI] Setting environment variables" -#~ msgstr "[Nginx UI] 設定環境變數" - -#~ msgid "[Nginx UI] Setting HTTP01 challenge provider" -#~ msgstr "[Nginx UI] 正在設定 HTTP01 驗證提供者" - -#~ msgid "[Nginx UI] Writing certificate private key to disk" -#~ msgstr "[Nginx UI] 正在將證書私鑰寫入磁碟" - -#~ msgid "[Nginx UI] Writing certificate to disk" -#~ msgstr "[Nginx UI] 正在將憑證寫入磁碟" - -#~ msgid "Auto Backup Completed" -#~ msgstr "自動備份完成" - -#~ msgid "Auto Backup Configuration Error" -#~ msgstr "自動備份配置錯誤" - -#~ msgid "Auto Backup Failed" -#~ msgstr "自動備份失敗" - -#~ msgid "Auto Backup Storage Failed" -#~ msgstr "自動備份儲存失敗" - -#~ msgid "Backup task %{backup_name} completed successfully, file: %{file_path}" -#~ msgstr "備份任務 %{backup_name} 已完成,檔案:%{file_path}" - -#~ msgid "Backup task %{backup_name} failed during storage upload, error: %{error}" -#~ msgstr "備份任務 %{backup_name} 在儲存上傳過程中失敗,錯誤:%{error}" - -#~ msgid "Backup task %{backup_name} failed to execute, error: %{error}" -#~ msgstr "備份任務 %{backup_name} 執行失敗,錯誤:%{error}" - -#~ msgid "Certificate %{name} has expired" -#~ msgstr "證書 %{name} 已過期" - -#~ msgid "Certificate %{name} will expire in %{days} days" -#~ msgstr "憑證 %{name} 將在 %{days} 天後過期" - -#~ msgid "Certificate %{name} will expire in 1 day" -#~ msgstr "證書 %{name} 將在1天後過期" - -#~ msgid "Certificate Expiration Notice" -#~ msgstr "憑證到期通知" - -#~ msgid "Certificate Expired" -#~ msgstr "憑證已過期" - -#~ msgid "Certificate Expiring Soon" -#~ msgstr "憑證即將到期" - -#~ msgid "Certificate not found: %{error}" -#~ msgstr "找不到證書: %{error}" - -#~ msgid "Certificate revoked successfully" -#~ msgstr "證書撤銷成功" - #~ msgid "" -#~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses " -#~ "/var/run/docker.sock to communicate with the host Docker Engine via Docker " -#~ "Client API. This feature is used to control Nginx in another container and " -#~ "perform container replacement rather than binary replacement during OTA " -#~ "upgrades of Nginx UI to ensure container dependencies are also upgraded. If " -#~ "you don't need this feature, please add the environment variable " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container." +#~ "Support communication with the backend through the Server-Sent Events " +#~ "protocol. If your Nginx UI is being used via an Nginx reverse proxy, " +#~ "please refer to this link to write the corresponding configuration file: " +#~ "https://nginxui.com/guide/nginx-proxy-example.html" #~ msgstr "" -#~ "檢查 /var/run/docker.sock 是否存在。如果您使用的是 Nginx UI 官方 Docker 映像,請確保以這種方式掛載 " -#~ "Docker 通訊端:`-v /var/run/docker.sock:/var/run/docker.sock`。Nginx UI 官方映像使用 " -#~ "/var/run/docker.sock 通過 Docker Client API 與主機 Docker Engine " -#~ "通訊。此功能用於在另一個容器中控制 Nginx,並在 Nginx UI 的 OTA " -#~ "升級期間執行容器替換而非二進位替換,以確保容器依賴項也得到升級。如果您不需要此功能,請向容器新增環境變數 " -#~ "NGINX_UI_IGNORE_DOCKER_SOCKET=true。" - -#~ msgid "" -#~ "Check if the nginx access log path exists. By default, this path is " -#~ "obtained from 'nginx -V'. If it cannot be obtained or the obtained path " -#~ "does not point to a valid, existing file, an error will be reported. In " -#~ "this case, you need to modify the configuration file to specify the access " -#~ "log path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" -#~ msgstr "" -#~ "檢查 nginx 訪問日誌路徑是否存在。預設情況下,此路徑從 'nginx -V' " -#~ "獲取。如果無法獲取或獲取的路徑未指向有效的現有文件,將報告錯誤。在這種情況下,您需要修改配置文件以指定訪問日誌路徑。更多詳情請參閱文檔:https://" -#~ "nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath" - -#~ msgid "Check if the nginx configuration directory exists" -#~ msgstr "檢查 nginx 配置目錄是否存在" - -#~ msgid "Check if the nginx configuration entry file exists" -#~ msgstr "檢查 nginx 配置入口文件是否存在" - -#~ msgid "" -#~ "Check if the nginx error log path exists. By default, this path is obtained " -#~ "from 'nginx -V'. If it cannot be obtained or the obtained path does not " -#~ "point to a valid, existing file, an error will be reported. In this case, " -#~ "you need to modify the configuration file to specify the error log path. " -#~ "Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath" -#~ msgstr "" -#~ "檢查 nginx 錯誤日誌路徑是否存在。預設情況下,該路徑從 'nginx -V' " -#~ "獲取。如果無法獲取或獲取的路徑未指向有效的現有文件,將報錯。此時需要修改配置文件以指定錯誤日誌路徑。詳情請參閱文件:https://nginxui." -#~ "com/zh_CN/guide/config-nginx.html#errorlogpath" - -#~ msgid "" -#~ "Check if the nginx PID path exists. By default, this path is obtained from " -#~ "'nginx -V'. If it cannot be obtained, an error will be reported. In this " -#~ "case, you need to modify the configuration file to specify the Nginx PID " -#~ "path.Refer to the docs for more details: " -#~ "https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" -#~ msgstr "" -#~ "檢查 Nginx PID 路徑是否存在。預設情況下,該路徑是從 'nginx -V' " -#~ "獲取的。如果無法獲取,將會報錯。在這種情況下,您需要修改設定檔以指定 Nginx PID " -#~ "路徑。更多詳情請參閱文件:https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath" - -#~ msgid "Check if the nginx sbin path exists" -#~ msgstr "檢查 nginx sbin 路徑是否存在" - -#~ msgid "Check if the nginx.conf includes the conf.d directory" -#~ msgstr "檢查 nginx.conf 是否包含 conf.d 目錄" - -#~ msgid "Check if the nginx.conf includes the sites-enabled directory" -#~ msgstr "檢查 nginx.conf 是否包含 sites-enabled 目錄" - -#~ msgid "Check if the nginx.conf includes the streams-enabled directory" -#~ msgstr "檢查 nginx.conf 是否包含 streams-enabled 目錄" - -#~ msgid "" -#~ "Check if the sites-available and sites-enabled directories are under the " -#~ "nginx configuration directory" -#~ msgstr "檢查 sites-available 和 sites-enabled 目錄是否位於 nginx 配置目錄下" - -#~ msgid "" -#~ "Check if the streams-available and streams-enabled directories are under " -#~ "the nginx configuration directory" -#~ msgstr "檢查 streams-available 和 streams-enabled 目錄是否位於 nginx 配置目錄下" - -#~ msgid "Delete %{path} on %{env_name} failed" -#~ msgstr "刪除 %{env_name} 上的 %{path} 失敗" - -#~ msgid "Delete %{path} on %{env_name} successfully" -#~ msgstr "已在 %{env_name} 上成功刪除 %{path}" - -#~ msgid "Delete Remote Config Error" -#~ msgstr "刪除遠端配置錯誤" - -#~ msgid "Delete Remote Config Success" -#~ msgstr "遠端配置刪除成功" - -#~ msgid "Delete Remote Stream Error" -#~ msgstr "刪除遠端串流錯誤" - -#~ msgid "Delete Remote Stream Success" -#~ msgstr "刪除遠端串流成功" - -#~ msgid "Delete site %{name} from %{node} failed" -#~ msgstr "從 %{node} 刪除網站 %{name} 失敗" - -#~ msgid "Delete site %{name} from %{node} successfully" -#~ msgstr "成功從 %{node} 移除站點 %{name}" - -#~ msgid "Delete stream %{name} from %{node} failed" -#~ msgstr "從 %{node} 刪除串流 %{name} 失敗" - -#~ msgid "Delete stream %{name} from %{node} successfully" -#~ msgstr "已成功從 %{node} 刪除串流 %{name}" - -#~ msgid "Disable Remote Site Maintenance Error" -#~ msgstr "禁用遠端站點維護錯誤" - -#~ msgid "Disable Remote Site Maintenance Success" -#~ msgstr "遠端站點維護已成功停用" - -#~ msgid "Disable Remote Stream Error" -#~ msgstr "停用遠端串流錯誤" - -#~ msgid "Disable Remote Stream Success" -#~ msgstr "停用遠端串流成功" - -#~ msgid "Disable site %{name} from %{node} failed" -#~ msgstr "停用 %{node} 上的網站 %{name} 失敗" - -#~ msgid "Disable site %{name} from %{node} successfully" -#~ msgstr "已成功從 %{node} 停用網站 %{name}" - -#~ msgid "Disable site %{name} maintenance on %{node} failed" -#~ msgstr "在 %{node} 上停用網站%{name}的維護模式失敗" - -#~ msgid "Disable site %{name} maintenance on %{node} successfully" -#~ msgstr "網站 %{name} 在 %{node} 上的維護已成功停用" - -#~ msgid "Disable stream %{name} from %{node} failed" -#~ msgstr "停用來自 %{node} 的串流 %{name} 失敗" - -#~ msgid "Disable stream %{name} from %{node} successfully" -#~ msgstr "已成功從 %{node} 停用串流 %{name}" - -#~ msgid "Docker socket exists" -#~ msgstr "Docker 套接字存在" - -#~ msgid "Enable Remote Site Maintenance Error" -#~ msgstr "啟用遠端網站維護錯誤" - -#~ msgid "Enable Remote Site Maintenance Success" -#~ msgstr "啟用遠端網站維護成功" - -#~ msgid "Enable Remote Stream Error" -#~ msgstr "啟用遠端串流錯誤" - -#~ msgid "Enable Remote Stream Success" -#~ msgstr "啟用遠端串流成功" - -#~ msgid "Enable site %{name} maintenance on %{node} failed" -#~ msgstr "啟用網站 %{name} 在 %{node} 上的維護模式失敗" - -#~ msgid "Enable site %{name} maintenance on %{node} successfully" -#~ msgstr "成功在 %{node} 上啟用網站%{name}的維護模式" - -#~ msgid "Enable site %{name} on %{node} failed" -#~ msgstr "在 %{node} 上啟用網站%{name}失敗" - -#~ msgid "Enable site %{name} on %{node} successfully" -#~ msgstr "成功在 %{node} 上啟用網站%{name}" - -#~ msgid "Enable stream %{name} on %{node} failed" -#~ msgstr "在 %{node} 上啟用串流 %{name} 失敗" - -#~ msgid "Enable stream %{name} on %{node} successfully" -#~ msgstr "在 %{node} 上成功啟用串流 %{name}" - -#~ msgid "External Notification Test" -#~ msgstr "外部通知測試" - -#~ msgid "Failed to delete certificate from database: %{error}" -#~ msgstr "從資料庫刪除憑證失敗: %{error}" - -#~ msgid "Failed to revoke certificate: %{error}" -#~ msgstr "撤銷憑證失敗: %{error}" - -#~ msgid "" -#~ "Log file %{log_path} is not a regular file. If you are using nginx-ui in " -#~ "docker container, please refer to " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information." -#~ msgstr "" -#~ "日誌文件 %{log_path} 不是常規文件。如果您在 docker 容器中使用 nginx-ui,請參考 " -#~ "https://nginxui.com/zh_CN/guide/config-nginx-log.html 獲取更多信息。" - -#~ msgid "Nginx access log path exists" -#~ msgstr "Nginx 訪問日誌路徑存在" - -#~ msgid "Nginx configuration directory exists" -#~ msgstr "Nginx 配置目錄存在" - -#~ msgid "Nginx configuration entry file exists" -#~ msgstr "Nginx 設定入口檔案存在" - -#~ msgid "Nginx error log path exists" -#~ msgstr "Nginx 錯誤日誌路徑存在" - -#~ msgid "Nginx PID path exists" -#~ msgstr "Nginx PID 路徑存在" - -#~ msgid "Nginx sbin path exists" -#~ msgstr "Nginx Sbin 路徑存在" - -#~ msgid "Nginx.conf includes conf.d directory" -#~ msgstr "Nginx.conf 包含 conf.d 目錄" - -#~ msgid "Nginx.conf includes sites-enabled directory" -#~ msgstr "Nginx.conf 包含 sites-enabled 目錄" - -#~ msgid "Nginx.conf includes streams-enabled directory" -#~ msgstr "Nginx.conf 包含 streams-enabled 目錄" - -#~ msgid "Reload Nginx on %{node} failed, response: %{resp}" -#~ msgstr "在節點 %{node} 上重新載入 Nginx 失敗,回應:%{resp}" - -#~ msgid "Reload Nginx on %{node} successfully" -#~ msgstr "在 %{node} 上成功重新載入 Nginx" - -#~ msgid "Reload Remote Nginx Error" -#~ msgstr "重新載入遠端 Nginx 錯誤" - -#~ msgid "Reload Remote Nginx Success" -#~ msgstr "遠端 Nginx 重新載入成功" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed" -#~ msgstr "將 %{orig_path} 重新命名為 %{new_path} 在 %{env_name} 上失敗" - -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully" -#~ msgstr "成功將 %{env_name} 上的 %{orig_path} 重新命名為 %{new_path}" - -#~ msgid "Rename Remote Stream Error" -#~ msgstr "遠端串流重新命名錯誤" - -#~ msgid "Rename Remote Stream Success" -#~ msgstr "遠端串流重新命名成功" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} failed" -#~ msgstr "將網站 %{name} 在 %{node} 上重新命名為 %{new_name} 失敗" - -#~ msgid "Rename site %{name} to %{new_name} on %{node} successfully" -#~ msgstr "將網站 %{name} 在 %{node} 上成功更名為 %{new_name}" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} failed" -#~ msgstr "將節點 %{node} 上的串流 %{name} 重新命名為 %{new_name} 失敗" - -#~ msgid "Rename stream %{name} to %{new_name} on %{node} successfully" -#~ msgstr "將節點 %{node} 上的串流 %{name} 重新命名為 %{new_name} 成功" - -#~ msgid "Restart Nginx on %{node} failed, response: %{resp}" -#~ msgstr "在節點 %{node} 上重啟 Nginx 失敗,回應:%{resp}" - -#~ msgid "Restart Nginx on %{node} successfully" -#~ msgstr "在 %{node} 上成功重啟 Nginx" - -#~ msgid "Restart Remote Nginx Error" -#~ msgstr "遠端 Nginx 重啟錯誤" - -#~ msgid "Restart Remote Nginx Success" -#~ msgstr "遠端 Nginx 重啟成功" - -#~ msgid "Save Remote Stream Error" -#~ msgstr "儲存遠端串流錯誤" - -#~ msgid "Save Remote Stream Success" -#~ msgstr "遠端串流儲存成功" - -#~ msgid "Save site %{name} to %{node} failed" -#~ msgstr "將網站 %{name} 儲存至 %{node} 失敗" - -#~ msgid "Save site %{name} to %{node} successfully" -#~ msgstr "網站 %{name} 成功儲存至 %{node}" - -#~ msgid "Save stream %{name} to %{node} failed" -#~ msgstr "儲存串流 %{name} 至 %{node} 失敗" - -#~ msgid "Save stream %{name} to %{node} successfully" -#~ msgstr "串流 %{name} 成功儲存至 %{node}" - -#~ msgid "Sites directory exists" -#~ msgstr "站點目錄存在" - -#~ msgid "" -#~ "Storage configuration validation failed for backup task %{backup_name}, " -#~ "error: %{error}" -#~ msgstr "備份任務 %{backup_name} 的存儲配置驗證失敗,錯誤:%{error}" - -#~ msgid "Streams directory exists" -#~ msgstr "Streams 目錄存在" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed" -#~ msgstr "同步憑證 %{cert_name} 至 %{env_name} 失敗" - -#~ msgid "Sync Certificate %{cert_name} to %{env_name} successfully" -#~ msgstr "同步憑證 %{cert_name} 到 %{env_name} 成功" - -#~ msgid "Sync config %{config_name} to %{env_name} failed" -#~ msgstr "同步設定 %{config_name} 至 %{env_name} 失敗" - -#~ msgid "Sync config %{config_name} to %{env_name} successfully" -#~ msgstr "同步設定 %{config_name} 到 %{env_name} 成功" - -#~ msgid "This is a test message sent at %{timestamp} from Nginx UI." -#~ msgstr "這是一條測試消息,於 %{timestamp} 從 Nginx UI 發送。" +#~ "支援透過 Server-Sent Events 協定與後端通訊。如果您的 Nginx UI 是透過 " +#~ "Nginx 反向代理使用的,請參考此連結編寫相應的設定檔:https://nginxui.com/" +#~ "guide/nginx-proxy-example.html" #~ msgid "If left blank, the default CA Dir will be used." #~ msgstr "如果留空,將使用預設的 CA Dir。" @@ -5931,11 +6125,12 @@ msgstr "您的通行金鑰" #~ msgid "" #~ "Check if /var/run/docker.sock exists. If you are using Nginx UI Official " -#~ "Docker Image, please make sure the docker socket is mounted like this: `-v " -#~ "/var/run/docker.sock:/var/run/docker.sock`." +#~ "Docker Image, please make sure the docker socket is mounted like this: `-" +#~ "v /var/run/docker.sock:/var/run/docker.sock`." #~ msgstr "" -#~ "檢查 /var/run/docker.sock 是否存在。如果您正在使用 Nginx UI 官方 Docker 映像,請確保 Docker " -#~ "通訊端已掛載如下:`-v /var/run/docker.sock:/var/run/docker.sock`。" +#~ "檢查 /var/run/docker.sock 是否存在。如果您正在使用 Nginx UI 官方 Docker 映" +#~ "像,請確保 Docker 通訊端已掛載如下:`-v /var/run/docker.sock:/var/run/" +#~ "docker.sock`。" #~ msgid "Check if the nginx access log path exists" #~ msgstr "檢查 Nginx 存取日誌路徑是否存在" @@ -5965,7 +6160,8 @@ msgstr "您的通行金鑰" #~ msgid "" #~ "If logs are not indexed, please check if the log file is under the " #~ "directory in Nginx.LogDirWhiteList." -#~ msgstr "如果日誌未被索引,請檢查日誌檔案是否位於 Nginx 的 LogDirWhiteList 目錄下。" +#~ msgstr "" +#~ "如果日誌未被索引,請檢查日誌檔案是否位於 Nginx 的 LogDirWhiteList 目錄下。" #~ msgid "Indexed" #~ msgstr "已建立索引" @@ -5987,9 +6183,11 @@ msgstr "您的通行金鑰" #~ msgstr "儲存失敗,在設定中偵測到語法錯誤。" #~ msgid "" -#~ "When you enable/disable, delete, or save this stream, the nodes set in the " -#~ "Node Group and the nodes selected below will be synchronized." -#~ msgstr "當您啟用/停用、刪除或儲存此串流時,在節點群組中設定的節點以及下方選擇的節點將會同步更新。" +#~ "When you enable/disable, delete, or save this stream, the nodes set in " +#~ "the Node Group and the nodes selected below will be synchronized." +#~ msgstr "" +#~ "當您啟用/停用、刪除或儲存此串流時,在節點群組中設定的節點以及下方選擇的節" +#~ "點將會同步更新。" #, fuzzy #~ msgid "Access Token" @@ -6048,11 +6246,17 @@ msgstr "您的通行金鑰" #~ msgid "Please upgrade the remote Nginx UI to the latest version" #~ msgstr "請將遠端 Nginx UI 升級至最新版本" -#~ msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: %{resp}" -#~ msgstr "在 %{env_name} 上將 %{orig_path} 重新命名為 %{new_path} 失敗,回應:%{resp}" +#~ msgid "" +#~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, response: " +#~ "%{resp}" +#~ msgstr "" +#~ "在 %{env_name} 上將 %{orig_path} 重新命名為 %{new_path} 失敗,回應:" +#~ "%{resp}" -#~ msgid "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" -#~ msgstr "將站點 %{site} 重新命名為 %{new_site} 於 %{node} 時發生錯誤,回應:%{resp}" +#~ msgid "" +#~ "Rename Site %{site} to %{new_site} on %{node} error, response: %{resp}" +#~ msgstr "" +#~ "將站點 %{site} 重新命名為 %{new_site} 於 %{node} 時發生錯誤,回應:%{resp}" #~ msgid "Save site %{site} to %{node} error, response: %{resp}" #~ msgstr "儲存站點 %{site} 至 %{node} 時發生錯誤,回應:%{resp}" @@ -6060,23 +6264,27 @@ msgstr "您的通行金鑰" #~ msgid "" #~ "Sync Certificate %{cert_name} to %{env_name} failed, please upgrade the " #~ "remote Nginx UI to the latest version" -#~ msgstr "同步憑證 %{cert_name} 到 %{env_name} 失敗,請將遠端 Nginx UI 升級到最新版本" +#~ msgstr "" +#~ "同步憑證 %{cert_name} 到 %{env_name} 失敗,請將遠端 Nginx UI 升級到最新版" +#~ "本" -#~ msgid "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" +#~ msgid "" +#~ "Sync Certificate %{cert_name} to %{env_name} failed, response: %{resp}" #~ msgstr "同步憑證 %{cert_name} 到 %{env_name} 失敗,回應:%{resp}" #~ msgid "Sync config %{config_name} to %{env_name} failed, response: %{resp}" #~ msgstr "同步設定 %{config_name} 到 %{env_name} 失敗,回應:%{resp}" #~ msgid "" -#~ "If you lose your mobile phone, you can use the recovery code to reset your " -#~ "2FA." +#~ "If you lose your mobile phone, you can use the recovery code to reset " +#~ "your 2FA." #~ msgstr "如果您遺失了手機,可以使用恢復碼重設您的多重因素驗證驗證。" #~ msgid "Recovery Code:" #~ msgstr "恢復碼:" -#~ msgid "The recovery code is only displayed once, please save it in a safe place." +#~ msgid "" +#~ "The recovery code is only displayed once, please save it in a safe place." #~ msgstr "恢復碼僅顯示一次,請將其儲存在安全的地方。" #~ msgid "Incorrect username or password" @@ -6088,7 +6296,9 @@ msgstr "您的通行金鑰" #~ msgid "" #~ "Rename %{orig_path} to %{new_path} on %{env_name} failed, please upgrade " #~ "the remote Nginx UI to the latest version" -#~ msgstr "將 %{orig_path} 重新命名為 %{new_path} 在 %{env_name} 失敗,請將遠端 Nginx UI 升級到最新版本" +#~ msgstr "" +#~ "將 %{orig_path} 重新命名為 %{new_path} 在 %{env_name} 失敗,請將遠端 " +#~ "Nginx UI 升級到最新版本" #~ msgid "Server Name" #~ msgstr "伺服器名稱" @@ -6151,8 +6361,9 @@ msgstr "您的通行金鑰" #~ "Once the verification is complete, the records will be removed.\n" #~ "Please note that the unit of time configurations below are all in seconds." #~ msgstr "" -#~ "請填寫您的 DNS 供應商提供的 API 身份驗證認證。我們會將一個或多個 TXT 記錄新增到您網域的 DNS " -#~ "記錄中以進行所有權驗證。驗證完成後,記錄將被刪除。請注意,以下時間設定均以秒為單位。" +#~ "請填寫您的 DNS 供應商提供的 API 身份驗證認證。我們會將一個或多個 TXT 記錄" +#~ "新增到您網域的 DNS 記錄中以進行所有權驗證。驗證完成後,記錄將被刪除。請注" +#~ "意,以下時間設定均以秒為單位。" #~ msgid "Delete ID: %{id}" #~ msgstr "刪除 ID: %{id}" @@ -6176,9 +6387,11 @@ msgstr "您的通行金鑰" #~ msgstr "您要啟用自動憑證更新嗎?" #~ msgid "" -#~ "We need to add the HTTPChallenge configuration to this file and reload the " -#~ "Nginx. Are you sure you want to continue?" -#~ msgstr "我們需要將 HTTPChallenge 設定新增到此檔案並重新載入 Nginx。你確定你要繼續嗎?" +#~ "We need to add the HTTPChallenge configuration to this file and reload " +#~ "the Nginx. Are you sure you want to continue?" +#~ msgstr "" +#~ "我們需要將 HTTPChallenge 設定新增到此檔案並重新載入 Nginx。你確定你要繼續" +#~ "嗎?" #~ msgid "Chat with ChatGPT" #~ msgstr "使用 ChatGPT 聊天" @@ -6222,8 +6435,8 @@ msgstr "您的通行金鑰" #~ "you do not have a certificate before, please click \"Getting Certificate " #~ "from Let's Encrypt\" first." #~ msgstr "" -#~ "系統將會每小時偵測一次該域名憑證,若距離上次簽發已超過 1 個月,則將自動續簽。
如果您之前沒有憑證,請先點選「從 Let's Encrypt " -#~ "取得憑證」。" +#~ "系統將會每小時偵測一次該域名憑證,若距離上次簽發已超過 1 個月,則將自動續" +#~ "簽。
如果您之前沒有憑證,請先點選「從 Let's Encrypt 取得憑證」。" #~ msgid "Do you want to change the template to support the TLS?" #~ msgstr "你想要改變範本以支援 TLS 嗎?" @@ -6238,12 +6451,15 @@ msgstr "您的通行金鑰" #~ "The following values will only take effect if you have the corresponding " #~ "fields in your configuration file. The configuration filename cannot be " #~ "changed after it has been created." -#~ msgstr "只有在您的設定檔案中有相應欄位時,下列的設定才能生效。設定檔名稱建立後不可修改。" +#~ msgstr "" +#~ "只有在您的設定檔案中有相應欄位時,下列的設定才能生效。設定檔名稱建立後不可" +#~ "修改。" #~ msgid "This operation will lose the custom configuration." #~ msgstr "該操作將會遺失自定義設定。" -#~ msgid "Add site here first, then you can configure TLS on the domain edit page." +#~ msgid "" +#~ "Add site here first, then you can configure TLS on the domain edit page." #~ msgstr "在這裡新增網站,完成後可進入編輯頁面設定 TLS。" #~ msgid "Server Status" diff --git a/cmd/lego_config/main.go b/cmd/lego_config/main.go index 9d79e437..d02b2d22 100644 --- a/cmd/lego_config/main.go +++ b/cmd/lego_config/main.go @@ -24,7 +24,7 @@ type GitHubRelease struct { } const ( - githubAPIURL = "https://api.github.com/repos/go-acme/lego/releases/latest" + githubAPIURL = "https://cloud.nginxui.com/https://api.github.com/repos/go-acme/lego/releases/latest" configDir = "internal/cert/config" ) @@ -97,7 +97,7 @@ func getLatestReleaseTag() (string, error) { // downloadAndExtract downloads the lego repository for a specific tag and extracts it func downloadAndExtract(tag string) (string, error) { - downloadURL := fmt.Sprintf("https://github.com/go-acme/lego/archive/refs/tags/%s.zip", tag) + downloadURL := fmt.Sprintf("https://cloud.nginxui.com/https://github.com/go-acme/lego/archive/refs/tags/%s.zip", tag) // Download the file logger.Infof("Downloading lego repository for tag %s...", tag) diff --git a/cmd/notification/generate.go b/cmd/notification/generate.go index 31a4d259..ae70fa2f 100644 --- a/cmd/notification/generate.go +++ b/cmd/notification/generate.go @@ -50,12 +50,16 @@ func main() { } // Skip excluded directories - for _, dir := range excludeDirs { - if strings.Contains(path, dir) { - if info.IsDir() { - return filepath.SkipDir + for _, excludeDir := range excludeDirs { + // Check if the path contains the excluded directory + pathParts := strings.Split(filepath.Clean(path), string(filepath.Separator)) + for _, part := range pathParts { + if part == excludeDir { + if info.IsDir() { + return filepath.SkipDir + } + return nil } - return nil } } diff --git a/cmd/translation/gettext.go b/cmd/translation/gettext.go index 52113a80..1afb71db 100644 --- a/cmd/translation/gettext.go +++ b/cmd/translation/gettext.go @@ -45,12 +45,16 @@ func main() { } // Skip excluded directories - for _, dir := range excludeDirs { - if strings.Contains(path, dir) { - if info.IsDir() { - return filepath.SkipDir + for _, excludeDir := range excludeDirs { + // Check if the path contains the excluded directory + pathParts := strings.Split(filepath.Clean(path), string(filepath.Separator)) + for _, part := range pathParts { + if part == excludeDir { + if info.IsDir() { + return filepath.SkipDir + } + return nil } - return nil } }