diff --git a/app/src/components/Notification/notifications.ts b/app/src/components/Notification/notifications.ts index 69fa3b8f..52043c07 100644 --- a/app/src/components/Notification/notifications.ts +++ b/app/src/components/Notification/notifications.ts @@ -45,6 +45,10 @@ const notifications: Record string, content: (args: any) title: () => $gettext('Renew Certificate Error'), content: (args: any) => $gettext('Certificate %{name} renewal failed: %{error}', args, true), }, + 'Renew Certificate Success_1': { + title: () => $gettext('Renew Certificate Success'), + content: (args: any) => $gettext('Certificate %{name} renewed successfully', args, true), + }, 'Certificate Expired': { title: () => $gettext('Certificate Expired'), content: (args: any) => $gettext('Certificate %{name} has expired', args, true), diff --git a/app/src/constants/errors/cert.ts b/app/src/constants/errors/cert.ts index b63a0fe6..d70bd669 100644 --- a/app/src/constants/errors/cert.ts +++ b/app/src/constants/errors/cert.ts @@ -23,4 +23,9 @@ export default { 50022: () => $gettext('Obtain cert error: {0}'), 50023: () => $gettext('Revoke cert error: {0}'), 50031: () => $gettext('No certificate available'), + 50032: () => $gettext('Generate self-signed private key error: {0}'), + 50033: () => $gettext('Create self-signed certificate error: {0}'), + 50034: () => $gettext('At least one domain or IP address is required'), + 50035: () => $gettext('Invalid IP address: {0}'), + 50036: () => $gettext('Certificate is not a self-signed certificate'), } diff --git a/app/src/constants/errors/self_check.ts b/app/src/constants/errors/self_check.ts index 9e73cc38..0075f99f 100644 --- a/app/src/constants/errors/self_check.ts +++ b/app/src/constants/errors/self_check.ts @@ -22,8 +22,8 @@ export default { 40418: () => $gettext('Error log path not exist'), 40419: () => $gettext('Conf.d directory not exists'), 40420: () => $gettext('GeoLite2 database not found at {0}. Log indexing requires GeoLite2 database for geographic IP analysis'), - 40421: () => $gettext('Bundled nginx-ui.conf is missing the WebSocket reverse-proxy fix'), 50007: () => $gettext('Failed to read bundled nginx-ui.conf: {0}'), + 40421: () => $gettext('Bundled nginx-ui.conf is missing the WebSocket reverse-proxy fix'), 50008: () => $gettext('Patched nginx-ui.conf is invalid: {0}'), 50009: () => $gettext('Nginx reload after fix failed: {0}'), 50010: () => $gettext('Failed to restore nginx-ui.conf from backup: {0}'), diff --git a/app/src/language/generate.ts b/app/src/language/generate.ts index 3d50fb84..408f8339 100644 --- a/app/src/language/generate.ts +++ b/app/src/language/generate.ts @@ -1,6 +1,7 @@ // This file is auto-generated. DO NOT EDIT MANUALLY. export const msg = [ + $gettext('Bundled nginx-ui.conf has WebSocket reverse-proxy fix'), $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.'), @@ -34,6 +35,7 @@ export const msg = [ $gettext('Nginx.conf includes streams-enabled directory'), $gettext('Sites directory exists'), $gettext('Streams directory exists'), + $gettext('When the container is behind an outer reverse proxy that terminates TLS (e.g. host nginx, Cloudflare), the bundled conf.d/nginx-ui.conf must trust the inbound X-Forwarded-Proto/Host headers; otherwise WebSocket origin checks fail. Older deployments that persisted /etc/nginx may still have the unfixed version.'), $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'), diff --git a/app/src/language/ja_JP/app.po b/app/src/language/ja_JP/app.po index d0bd5268..97be39d5 100644 --- a/app/src/language/ja_JP/app.po +++ b/app/src/language/ja_JP/app.po @@ -6897,7 +6897,7 @@ msgstr "ソケット" #: src/views/certificate/components/SelfSignedCertFields.vue:69 msgid "Some browsers reject TLS certificates valid for more than 398 days." -msgstr "一部のブラウザーは、有効期間が398日を超える TLS 証明書を拒否します。" +msgstr "一部のブラウザーは、有効期間が398 日を超える TLS 証明書を拒否します。" #: src/views/nginx_log/structured/StructuredLogViewer.vue:742 msgid "Sorted by" diff --git a/app/src/language/zh_CN/app.po b/app/src/language/zh_CN/app.po index 7a93dbfa..7a6d1a98 100644 --- a/app/src/language/zh_CN/app.po +++ b/app/src/language/zh_CN/app.po @@ -5432,7 +5432,7 @@ msgstr "请输入至少一个域名" #: src/views/certificate/components/DNSIssueCertificate.vue:128 #: src/views/certificate/components/SelfSignedCertForm.vue:51 msgid "Please enter at least one domain or IP address" -msgstr "请输入至少一个域名或IP地址" +msgstr "请输入至少一个域名或 IP 地址" #: src/views/install/components/InstallView.vue:121 msgid "Please enter the install secret before continuing" diff --git a/app/src/language/zh_TW/app.po b/app/src/language/zh_TW/app.po index dd60094f..8b7dc1f5 100644 --- a/app/src/language/zh_TW/app.po +++ b/app/src/language/zh_TW/app.po @@ -5438,7 +5438,7 @@ msgstr "請輸入至少一個域名" #: src/views/certificate/components/DNSIssueCertificate.vue:128 #: src/views/certificate/components/SelfSignedCertForm.vue:51 msgid "Please enter at least one domain or IP address" -msgstr "請輸入至少一個網域或IP位址" +msgstr "請輸入至少一個網域或 IP 位址" #: src/views/install/components/InstallView.vue:121 msgid "Please enter the install secret before continuing" diff --git a/app/src/version.json b/app/src/version.json index d8bca53d..080a820b 100644 --- a/app/src/version.json +++ b/app/src/version.json @@ -1 +1 @@ -{"version":"2.3.11","build_id":1,"total_build":522} \ No newline at end of file +{"version":"2.3.11","build_id":2,"total_build":523} \ No newline at end of file diff --git a/internal/cert/config/config.tar.xz b/internal/cert/config/config.tar.xz index e29ade07..c028cb00 100644 Binary files a/internal/cert/config/config.tar.xz and b/internal/cert/config/config.tar.xz differ diff --git a/internal/license/licenses.xz b/internal/license/licenses.xz index 7f414cf9..f23f2937 100644 Binary files a/internal/license/licenses.xz and b/internal/license/licenses.xz differ