mirror of
https://github.com/0xJacky/nginx-ui.git
synced 2025-05-11 02:15:48 +02:00
chore: update translations
This commit is contained in:
parent
a9aacce0ad
commit
85dbbcc54b
11 changed files with 365 additions and 246 deletions
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "nginx-ui-frontend-next",
|
"name": "nginx-ui-frontend-next",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "1.7.5",
|
"version": "1.7.6",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
|
|
|
@ -17,8 +17,8 @@ msgstr "About"
|
||||||
msgid "Access Logs"
|
msgid "Access Logs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:78 src/views/config/config.ts:36
|
#: src/views/cert/Cert.vue:74 src/views/config/config.ts:36
|
||||||
#: src/views/domain/DomainList.vue:47 src/views/user/User.vue:43
|
#: src/views/domain/DomainList.vue:48 src/views/user/User.vue:43
|
||||||
msgid "Action"
|
msgid "Action"
|
||||||
msgstr "Action"
|
msgstr "Action"
|
||||||
|
|
||||||
|
@ -85,11 +85,11 @@ msgstr ""
|
||||||
msgid "Auto"
|
msgid "Auto"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:41 src/views/domain/cert/ChangeCert.vue:35
|
#: src/views/cert/Cert.vue:37 src/views/domain/cert/ChangeCert.vue:35
|
||||||
msgid "Auto Cert"
|
msgid "Auto Cert"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:8
|
#: src/views/cert/Cert.vue:9
|
||||||
msgid "Auto cert is enabled, please do not modify this certification."
|
msgid "Auto cert is enabled, please do not modify this certification."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -97,6 +97,10 @@ msgstr ""
|
||||||
msgid "Auto Refresh"
|
msgid "Auto Refresh"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:27
|
||||||
|
msgid "Auto-Cert Log"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/cert/IssueCert.vue:71
|
#: src/views/domain/cert/IssueCert.vue:71
|
||||||
msgid "Auto-renewal disabled for %{name}"
|
msgid "Auto-renewal disabled for %{name}"
|
||||||
msgstr "Auto-renewal disabled for %{name}"
|
msgstr "Auto-renewal disabled for %{name}"
|
||||||
|
@ -152,7 +156,7 @@ msgstr "Certificate has expired"
|
||||||
msgid "Certificate is valid"
|
msgid "Certificate is valid"
|
||||||
msgstr "Certificate is valid"
|
msgstr "Certificate is valid"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:35
|
#: src/views/cert/Cert.vue:34 src/views/domain/cert/Cert.vue:35
|
||||||
msgid "Certificate Status"
|
msgid "Certificate Status"
|
||||||
msgstr "Certificate Status"
|
msgstr "Certificate Status"
|
||||||
|
|
||||||
|
@ -176,10 +180,15 @@ msgstr ""
|
||||||
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
||||||
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:180
|
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:181
|
||||||
msgid "Comments"
|
msgid "Comments"
|
||||||
msgstr "Comments"
|
msgstr "Comments"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:32
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Config Name"
|
||||||
|
msgstr "Configuration Name"
|
||||||
|
|
||||||
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "Config Templates"
|
msgid "Config Templates"
|
||||||
|
@ -258,7 +267,13 @@ msgstr "Dashboard"
|
||||||
msgid "Database (Optional, default: database)"
|
msgid "Database (Optional, default: database)"
|
||||||
msgstr "Database (Optional, default: database)"
|
msgstr "Database (Optional, default: database)"
|
||||||
|
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:528
|
#: src/components/StdDataDisplay/StdTable.vue:31
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:32
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:37
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:50
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:52
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:53
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:57
|
||||||
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:20
|
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:20
|
||||||
#: src/views/domain/DomainList.vue:21 src/views/domain/DomainList.vue:28
|
#: src/views/domain/DomainList.vue:21 src/views/domain/DomainList.vue:28
|
||||||
#: src/views/domain/DomainList.vue:32
|
#: src/views/domain/DomainList.vue:32
|
||||||
|
@ -269,7 +284,7 @@ msgstr ""
|
||||||
msgid "Delete ID: %{id}"
|
msgid "Delete ID: %{id}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:81
|
#: src/views/domain/DomainList.vue:82
|
||||||
msgid "Delete site: %{site_name}"
|
msgid "Delete site: %{site_name}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -304,15 +319,15 @@ msgstr "Directives"
|
||||||
msgid "Disable auto-renewal failed for %{name}"
|
msgid "Disable auto-renewal failed for %{name}"
|
||||||
msgstr "Disable auto-renewal failed for %{name}"
|
msgstr "Disable auto-renewal failed for %{name}"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:51 src/views/domain/cert/ChangeCert.vue:45
|
#: src/views/cert/Cert.vue:47 src/views/domain/cert/ChangeCert.vue:45
|
||||||
#: src/views/domain/DomainEdit.vue:10 src/views/domain/DomainEdit.vue:9
|
#: src/views/domain/DomainEdit.vue:10 src/views/domain/DomainEdit.vue:9
|
||||||
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:34
|
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:35
|
||||||
#: src/views/domain/DomainList.vue:7 src/views/domain/DomainList.vue:8
|
#: src/views/domain/DomainList.vue:7 src/views/domain/DomainList.vue:8
|
||||||
#: src/views/domain/DomainList.vue:9
|
#: src/views/domain/DomainList.vue:9
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "Disabled"
|
msgstr "Disabled"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:146 src/views/domain/DomainList.vue:69
|
#: src/views/domain/DomainEdit.vue:146 src/views/domain/DomainList.vue:70
|
||||||
msgid "Disabled successfully"
|
msgid "Disabled successfully"
|
||||||
msgstr "Disabled successfully"
|
msgstr "Disabled successfully"
|
||||||
|
|
||||||
|
@ -320,14 +335,14 @@ msgstr "Disabled successfully"
|
||||||
msgid "Disk IO"
|
msgid "Disk IO"
|
||||||
msgstr "Disk IO"
|
msgstr "Disk IO"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:32
|
|
||||||
msgid "Domain"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:58
|
#: src/views/domain/DomainAdd.vue:58
|
||||||
msgid "Domain Config Created Successfully"
|
msgid "Domain Config Created Successfully"
|
||||||
msgstr "Domain Config Created Successfully"
|
msgstr "Domain Config Created Successfully"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:21
|
||||||
|
msgid "Domains list is empty, try to reopen auto-cert for %{config}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/language/constants.ts:26
|
#: src/language/constants.ts:26
|
||||||
msgid "Download latest release error"
|
msgid "Download latest release error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -338,9 +353,15 @@ msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:14 src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:14 src/views/domain/DomainList.vue:15
|
||||||
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:23
|
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:23
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:2
|
||||||
msgid "Duplicate"
|
msgid "Duplicate"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:43
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Duplicated successfully"
|
||||||
|
msgstr "Saved successfully"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:4 src/views/domain/DomainEdit.vue:5
|
#: src/views/domain/DomainEdit.vue:4 src/views/domain/DomainEdit.vue:5
|
||||||
msgid "Edit %{n}"
|
msgid "Edit %{n}"
|
||||||
msgstr "Edit %{n}"
|
msgstr "Edit %{n}"
|
||||||
|
@ -369,16 +390,16 @@ msgstr "Enable failed"
|
||||||
msgid "Enable TLS"
|
msgid "Enable TLS"
|
||||||
msgstr "Enable TLS"
|
msgstr "Enable TLS"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:48 src/views/domain/cert/ChangeCert.vue:42
|
#: src/views/cert/Cert.vue:44 src/views/domain/cert/ChangeCert.vue:42
|
||||||
#: src/views/domain/DomainEdit.vue:43 src/views/domain/DomainEdit.vue:6
|
#: src/views/domain/DomainEdit.vue:43 src/views/domain/DomainEdit.vue:6
|
||||||
#: src/views/domain/DomainEdit.vue:7 src/views/domain/DomainList.vue:10
|
#: src/views/domain/DomainEdit.vue:7 src/views/domain/DomainList.vue:10
|
||||||
#: src/views/domain/DomainList.vue:11 src/views/domain/DomainList.vue:12
|
#: src/views/domain/DomainList.vue:11 src/views/domain/DomainList.vue:12
|
||||||
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:31
|
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:32
|
||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "Enabled"
|
msgstr "Enabled"
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:47 src/views/domain/DomainEdit.vue:137
|
#: src/views/domain/DomainAdd.vue:47 src/views/domain/DomainEdit.vue:137
|
||||||
#: src/views/domain/DomainList.vue:59
|
#: src/views/domain/DomainList.vue:60
|
||||||
msgid "Enabled successfully"
|
msgid "Enabled successfully"
|
||||||
msgstr "Enabled successfully"
|
msgstr "Enabled successfully"
|
||||||
|
|
||||||
|
@ -410,11 +431,11 @@ msgstr "Expiration Date: %{date}"
|
||||||
msgid "Export"
|
msgid "Export"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:149 src/views/domain/DomainList.vue:73
|
#: src/views/domain/DomainEdit.vue:149 src/views/domain/DomainList.vue:74
|
||||||
msgid "Failed to disable %{msg}"
|
msgid "Failed to disable %{msg}"
|
||||||
msgstr "Failed to disable %{msg}"
|
msgstr "Failed to disable %{msg}"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:140 src/views/domain/DomainList.vue:63
|
#: src/views/domain/DomainEdit.vue:140 src/views/domain/DomainList.vue:64
|
||||||
msgid "Failed to enable %{msg}"
|
msgid "Failed to enable %{msg}"
|
||||||
msgstr "Failed to enable %{msg}"
|
msgstr "Failed to enable %{msg}"
|
||||||
|
|
||||||
|
@ -609,7 +630,7 @@ msgstr "Single Directive"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:16 src/views/config/config.ts:9
|
#: src/views/cert/Cert.vue:16 src/views/config/config.ts:9
|
||||||
#: src/views/domain/cert/ChangeCert.vue:19 src/views/domain/DomainEdit.vue:46
|
#: src/views/domain/cert/ChangeCert.vue:19 src/views/domain/DomainEdit.vue:46
|
||||||
#: src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:16 src/views/domain/SiteDuplicate.vue:5
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "Name"
|
msgstr "Name"
|
||||||
|
|
||||||
|
@ -736,6 +757,12 @@ msgstr ""
|
||||||
msgid "Performing core upgrade"
|
msgid "Performing core upgrade"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:28
|
||||||
|
msgid ""
|
||||||
|
"Please input name, this will be used as the filename of the new "
|
||||||
|
"configuration!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/other/Install.vue:36
|
#: src/views/other/Install.vue:36
|
||||||
msgid "Please input your E-mail!"
|
msgid "Please input your E-mail!"
|
||||||
msgstr "Please input your E-mail!"
|
msgstr "Please input your E-mail!"
|
||||||
|
@ -885,9 +912,8 @@ msgstr "Send"
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:168
|
#: src/components/StdDataDisplay/StdTable.vue:168
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:343
|
#: src/components/StdDataDisplay/StdTable.vue:343
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:463
|
#: src/components/StdDataDisplay/StdTable.vue:463
|
||||||
#: src/views/config/ConfigEdit.vue:32 src/views/domain/DomainEdit.vue:87
|
#: src/views/config/ConfigEdit.vue:32 src/views/domain/DomainList.vue:84
|
||||||
#: src/views/domain/DomainList.vue:83 src/views/other/Install.vue:71
|
#: src/views/other/Install.vue:71 src/views/preference/Preference.vue:41
|
||||||
#: src/views/preference/Preference.vue:41
|
|
||||||
msgid "Server error"
|
msgid "Server error"
|
||||||
msgstr "Server error"
|
msgstr "Server error"
|
||||||
|
|
||||||
|
@ -917,27 +943,27 @@ msgstr "Sites List"
|
||||||
msgid "Sites List"
|
msgid "Sites List"
|
||||||
msgstr "Sites List"
|
msgstr "Sites List"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:65
|
#: src/views/cert/Cert.vue:61
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "SSL Certificate Key Path"
|
msgid "SSL Certificate Key Path"
|
||||||
msgstr "Certificate Status"
|
msgstr "Certificate Status"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:58
|
#: src/views/cert/Cert.vue:54
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "SSL Certificate Path"
|
msgid "SSL Certificate Path"
|
||||||
msgstr "Certificate Status"
|
msgstr "Certificate Status"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:19
|
#: src/views/cert/Cert.vue:41
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "SSL Certification Content"
|
msgid "SSL Certification Content"
|
||||||
msgstr "Certificate Status"
|
msgstr "Certificate Status"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:22
|
#: src/views/cert/Cert.vue:44
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "SSL Certification Key Content"
|
msgid "SSL Certification Key Content"
|
||||||
msgstr "Certificate Status"
|
msgstr "Certificate Status"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:24
|
#: src/views/domain/DomainList.vue:25
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
msgstr "Status"
|
msgstr "Status"
|
||||||
|
|
||||||
|
@ -1003,12 +1029,16 @@ msgstr ""
|
||||||
msgid "Theme"
|
msgid "Theme"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:15
|
||||||
|
msgid "This auto-cert item is invalid, please remove it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/config/config.ts:14
|
#: src/views/config/config.ts:14
|
||||||
msgid "Type"
|
msgid "Type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:72 src/views/config/config.ts:29
|
#: src/views/cert/Cert.vue:68 src/views/config/config.ts:29
|
||||||
#: src/views/domain/DomainList.vue:41 src/views/user/User.vue:37
|
#: src/views/domain/DomainList.vue:42 src/views/user/User.vue:37
|
||||||
msgid "Updated at"
|
msgid "Updated at"
|
||||||
msgstr "Updated at"
|
msgstr "Updated at"
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,9 @@ msgstr ""
|
||||||
msgid "Access Logs"
|
msgid "Access Logs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:78
|
#: src/views/cert/Cert.vue:74
|
||||||
#: src/views/config/config.ts:36
|
#: src/views/config/config.ts:36
|
||||||
#: src/views/domain/DomainList.vue:47
|
#: src/views/domain/DomainList.vue:48
|
||||||
#: src/views/user/User.vue:43
|
#: src/views/user/User.vue:43
|
||||||
msgid "Action"
|
msgid "Action"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -83,12 +83,12 @@ msgstr ""
|
||||||
msgid "Auto"
|
msgid "Auto"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:41
|
#: src/views/cert/Cert.vue:37
|
||||||
#: src/views/domain/cert/ChangeCert.vue:35
|
#: src/views/domain/cert/ChangeCert.vue:35
|
||||||
msgid "Auto Cert"
|
msgid "Auto Cert"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:8
|
#: src/views/cert/Cert.vue:9
|
||||||
msgid "Auto cert is enabled, please do not modify this certification."
|
msgid "Auto cert is enabled, please do not modify this certification."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -96,6 +96,10 @@ msgstr ""
|
||||||
msgid "Auto Refresh"
|
msgid "Auto Refresh"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:27
|
||||||
|
msgid "Auto-Cert Log"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/cert/IssueCert.vue:71
|
#: src/views/domain/cert/IssueCert.vue:71
|
||||||
msgid "Auto-renewal disabled for %{name}"
|
msgid "Auto-renewal disabled for %{name}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -153,7 +157,7 @@ msgstr ""
|
||||||
msgid "Certificate is valid"
|
msgid "Certificate is valid"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:12
|
#: src/views/cert/Cert.vue:34
|
||||||
#: src/views/domain/cert/Cert.vue:35
|
#: src/views/domain/cert/Cert.vue:35
|
||||||
msgid "Certificate Status"
|
msgid "Certificate Status"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -179,10 +183,14 @@ msgstr ""
|
||||||
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
||||||
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:180
|
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:181
|
||||||
msgid "Comments"
|
msgid "Comments"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:32
|
||||||
|
msgid "Config Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
||||||
msgid "Config Templates"
|
msgid "Config Templates"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -263,7 +271,13 @@ msgstr ""
|
||||||
msgid "Database (Optional, default: database)"
|
msgid "Database (Optional, default: database)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:528
|
#: src/components/StdDataDisplay/StdTable.vue:31
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:32
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:37
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:50
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:52
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:53
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:57
|
||||||
#: src/views/domain/DomainList.vue:19
|
#: src/views/domain/DomainList.vue:19
|
||||||
#: src/views/domain/DomainList.vue:20
|
#: src/views/domain/DomainList.vue:20
|
||||||
#: src/views/domain/DomainList.vue:21
|
#: src/views/domain/DomainList.vue:21
|
||||||
|
@ -276,7 +290,7 @@ msgstr ""
|
||||||
msgid "Delete ID: %{id}"
|
msgid "Delete ID: %{id}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:81
|
#: src/views/domain/DomainList.vue:82
|
||||||
msgid "Delete site: %{site_name}"
|
msgid "Delete site: %{site_name}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -312,12 +326,12 @@ msgstr ""
|
||||||
msgid "Disable auto-renewal failed for %{name}"
|
msgid "Disable auto-renewal failed for %{name}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:51
|
#: src/views/cert/Cert.vue:47
|
||||||
#: src/views/domain/cert/ChangeCert.vue:45
|
#: src/views/domain/cert/ChangeCert.vue:45
|
||||||
#: src/views/domain/DomainEdit.vue:10
|
#: src/views/domain/DomainEdit.vue:10
|
||||||
#: src/views/domain/DomainEdit.vue:9
|
#: src/views/domain/DomainEdit.vue:9
|
||||||
#: src/views/domain/DomainList.vue:16
|
#: src/views/domain/DomainList.vue:16
|
||||||
#: src/views/domain/DomainList.vue:34
|
#: src/views/domain/DomainList.vue:35
|
||||||
#: src/views/domain/DomainList.vue:7
|
#: src/views/domain/DomainList.vue:7
|
||||||
#: src/views/domain/DomainList.vue:8
|
#: src/views/domain/DomainList.vue:8
|
||||||
#: src/views/domain/DomainList.vue:9
|
#: src/views/domain/DomainList.vue:9
|
||||||
|
@ -325,7 +339,7 @@ msgid "Disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:146
|
#: src/views/domain/DomainEdit.vue:146
|
||||||
#: src/views/domain/DomainList.vue:69
|
#: src/views/domain/DomainList.vue:70
|
||||||
msgid "Disabled successfully"
|
msgid "Disabled successfully"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -333,14 +347,14 @@ msgstr ""
|
||||||
msgid "Disk IO"
|
msgid "Disk IO"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:32
|
|
||||||
msgid "Domain"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:58
|
#: src/views/domain/DomainAdd.vue:58
|
||||||
msgid "Domain Config Created Successfully"
|
msgid "Domain Config Created Successfully"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:21
|
||||||
|
msgid "Domains list is empty, try to reopen auto-cert for %{config}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/language/constants.ts:26
|
#: src/language/constants.ts:26
|
||||||
msgid "Download latest release error"
|
msgid "Download latest release error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -353,9 +367,14 @@ msgstr ""
|
||||||
#: src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:15
|
||||||
#: src/views/domain/DomainList.vue:16
|
#: src/views/domain/DomainList.vue:16
|
||||||
#: src/views/domain/DomainList.vue:23
|
#: src/views/domain/DomainList.vue:23
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:2
|
||||||
msgid "Duplicate"
|
msgid "Duplicate"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:43
|
||||||
|
msgid "Duplicated successfully"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:4
|
#: src/views/domain/DomainEdit.vue:4
|
||||||
#: src/views/domain/DomainEdit.vue:5
|
#: src/views/domain/DomainEdit.vue:5
|
||||||
msgid "Edit %{n}"
|
msgid "Edit %{n}"
|
||||||
|
@ -386,7 +405,7 @@ msgstr ""
|
||||||
msgid "Enable TLS"
|
msgid "Enable TLS"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:48
|
#: src/views/cert/Cert.vue:44
|
||||||
#: src/views/domain/cert/ChangeCert.vue:42
|
#: src/views/domain/cert/ChangeCert.vue:42
|
||||||
#: src/views/domain/DomainEdit.vue:43
|
#: src/views/domain/DomainEdit.vue:43
|
||||||
#: src/views/domain/DomainEdit.vue:6
|
#: src/views/domain/DomainEdit.vue:6
|
||||||
|
@ -395,13 +414,13 @@ msgstr ""
|
||||||
#: src/views/domain/DomainList.vue:11
|
#: src/views/domain/DomainList.vue:11
|
||||||
#: src/views/domain/DomainList.vue:12
|
#: src/views/domain/DomainList.vue:12
|
||||||
#: src/views/domain/DomainList.vue:19
|
#: src/views/domain/DomainList.vue:19
|
||||||
#: src/views/domain/DomainList.vue:31
|
#: src/views/domain/DomainList.vue:32
|
||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:47
|
#: src/views/domain/DomainAdd.vue:47
|
||||||
#: src/views/domain/DomainEdit.vue:137
|
#: src/views/domain/DomainEdit.vue:137
|
||||||
#: src/views/domain/DomainList.vue:59
|
#: src/views/domain/DomainList.vue:60
|
||||||
msgid "Enabled successfully"
|
msgid "Enabled successfully"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -437,12 +456,12 @@ msgid "Export"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:149
|
#: src/views/domain/DomainEdit.vue:149
|
||||||
#: src/views/domain/DomainList.vue:73
|
#: src/views/domain/DomainList.vue:74
|
||||||
msgid "Failed to disable %{msg}"
|
msgid "Failed to disable %{msg}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:140
|
#: src/views/domain/DomainEdit.vue:140
|
||||||
#: src/views/domain/DomainList.vue:63
|
#: src/views/domain/DomainList.vue:64
|
||||||
msgid "Failed to enable %{msg}"
|
msgid "Failed to enable %{msg}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -636,7 +655,8 @@ msgstr ""
|
||||||
#: src/views/config/config.ts:9
|
#: src/views/config/config.ts:9
|
||||||
#: src/views/domain/cert/ChangeCert.vue:19
|
#: src/views/domain/cert/ChangeCert.vue:19
|
||||||
#: src/views/domain/DomainEdit.vue:46
|
#: src/views/domain/DomainEdit.vue:46
|
||||||
#: src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:16
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:5
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -765,6 +785,10 @@ msgstr ""
|
||||||
msgid "Performing core upgrade"
|
msgid "Performing core upgrade"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:28
|
||||||
|
msgid "Please input name, this will be used as the filename of the new configuration!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/other/Install.vue:36
|
#: src/views/other/Install.vue:36
|
||||||
msgid "Please input your E-mail!"
|
msgid "Please input your E-mail!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -924,8 +948,7 @@ msgstr ""
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:343
|
#: src/components/StdDataDisplay/StdTable.vue:343
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:463
|
#: src/components/StdDataDisplay/StdTable.vue:463
|
||||||
#: src/views/config/ConfigEdit.vue:32
|
#: src/views/config/ConfigEdit.vue:32
|
||||||
#: src/views/domain/DomainEdit.vue:87
|
#: src/views/domain/DomainList.vue:84
|
||||||
#: src/views/domain/DomainList.vue:83
|
|
||||||
#: src/views/other/Install.vue:71
|
#: src/views/other/Install.vue:71
|
||||||
#: src/views/preference/Preference.vue:41
|
#: src/views/preference/Preference.vue:41
|
||||||
msgid "Server error"
|
msgid "Server error"
|
||||||
|
@ -957,23 +980,23 @@ msgstr ""
|
||||||
msgid "Sites List"
|
msgid "Sites List"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:65
|
#: src/views/cert/Cert.vue:61
|
||||||
msgid "SSL Certificate Key Path"
|
msgid "SSL Certificate Key Path"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:58
|
#: src/views/cert/Cert.vue:54
|
||||||
msgid "SSL Certificate Path"
|
msgid "SSL Certificate Path"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:19
|
#: src/views/cert/Cert.vue:41
|
||||||
msgid "SSL Certification Content"
|
msgid "SSL Certification Content"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:22
|
#: src/views/cert/Cert.vue:44
|
||||||
msgid "SSL Certification Key Content"
|
msgid "SSL Certification Key Content"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:24
|
#: src/views/domain/DomainList.vue:25
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -1030,13 +1053,17 @@ msgstr ""
|
||||||
msgid "Theme"
|
msgid "Theme"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:15
|
||||||
|
msgid "This auto-cert item is invalid, please remove it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/config/config.ts:14
|
#: src/views/config/config.ts:14
|
||||||
msgid "Type"
|
msgid "Type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:72
|
#: src/views/cert/Cert.vue:68
|
||||||
#: src/views/config/config.ts:29
|
#: src/views/config/config.ts:29
|
||||||
#: src/views/domain/DomainList.vue:41
|
#: src/views/domain/DomainList.vue:42
|
||||||
#: src/views/user/User.vue:37
|
#: src/views/user/User.vue:37
|
||||||
msgid "Updated at"
|
msgid "Updated at"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
File diff suppressed because one or more lines are too long
Binary file not shown.
|
@ -20,8 +20,8 @@ msgstr "关于"
|
||||||
msgid "Access Logs"
|
msgid "Access Logs"
|
||||||
msgstr "访问日志"
|
msgstr "访问日志"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:78 src/views/config/config.ts:36
|
#: src/views/cert/Cert.vue:74 src/views/config/config.ts:36
|
||||||
#: src/views/domain/DomainList.vue:47 src/views/user/User.vue:43
|
#: src/views/domain/DomainList.vue:48 src/views/user/User.vue:43
|
||||||
msgid "Action"
|
msgid "Action"
|
||||||
msgstr "操作"
|
msgstr "操作"
|
||||||
|
|
||||||
|
@ -86,11 +86,11 @@ msgstr "作者"
|
||||||
msgid "Auto"
|
msgid "Auto"
|
||||||
msgstr "自动"
|
msgstr "自动"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:41 src/views/domain/cert/ChangeCert.vue:35
|
#: src/views/cert/Cert.vue:37 src/views/domain/cert/ChangeCert.vue:35
|
||||||
msgid "Auto Cert"
|
msgid "Auto Cert"
|
||||||
msgstr "自动更新"
|
msgstr "自动更新"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:8
|
#: src/views/cert/Cert.vue:9
|
||||||
msgid "Auto cert is enabled, please do not modify this certification."
|
msgid "Auto cert is enabled, please do not modify this certification."
|
||||||
msgstr "自动更新已启用,请勿修改此证书配置。"
|
msgstr "自动更新已启用,请勿修改此证书配置。"
|
||||||
|
|
||||||
|
@ -98,6 +98,10 @@ msgstr "自动更新已启用,请勿修改此证书配置。"
|
||||||
msgid "Auto Refresh"
|
msgid "Auto Refresh"
|
||||||
msgstr "自动刷新"
|
msgstr "自动刷新"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:27
|
||||||
|
msgid "Auto-Cert Log"
|
||||||
|
msgstr "证书自动续期日志"
|
||||||
|
|
||||||
#: src/views/domain/cert/IssueCert.vue:71
|
#: src/views/domain/cert/IssueCert.vue:71
|
||||||
msgid "Auto-renewal disabled for %{name}"
|
msgid "Auto-renewal disabled for %{name}"
|
||||||
msgstr "成功关闭 %{name} 自动续签"
|
msgstr "成功关闭 %{name} 自动续签"
|
||||||
|
@ -151,7 +155,7 @@ msgstr "此证书已过期"
|
||||||
msgid "Certificate is valid"
|
msgid "Certificate is valid"
|
||||||
msgstr "此证书有效"
|
msgstr "此证书有效"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:35
|
#: src/views/cert/Cert.vue:34 src/views/domain/cert/Cert.vue:35
|
||||||
msgid "Certificate Status"
|
msgid "Certificate Status"
|
||||||
msgstr "证书状态"
|
msgstr "证书状态"
|
||||||
|
|
||||||
|
@ -173,10 +177,14 @@ msgstr "重新检查"
|
||||||
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
||||||
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:180
|
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:181
|
||||||
msgid "Comments"
|
msgid "Comments"
|
||||||
msgstr "注释"
|
msgstr "注释"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:32
|
||||||
|
msgid "Config Name"
|
||||||
|
msgstr "配置文件名称"
|
||||||
|
|
||||||
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
||||||
msgid "Config Templates"
|
msgid "Config Templates"
|
||||||
msgstr "配置"
|
msgstr "配置"
|
||||||
|
@ -254,7 +262,13 @@ msgstr "仪表盘"
|
||||||
msgid "Database (Optional, default: database)"
|
msgid "Database (Optional, default: database)"
|
||||||
msgstr "数据库 (可选,默认: database)"
|
msgstr "数据库 (可选,默认: database)"
|
||||||
|
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:528
|
#: src/components/StdDataDisplay/StdTable.vue:31
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:32
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:37
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:50
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:52
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:53
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:57
|
||||||
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:20
|
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:20
|
||||||
#: src/views/domain/DomainList.vue:21 src/views/domain/DomainList.vue:28
|
#: src/views/domain/DomainList.vue:21 src/views/domain/DomainList.vue:28
|
||||||
#: src/views/domain/DomainList.vue:32
|
#: src/views/domain/DomainList.vue:32
|
||||||
|
@ -265,7 +279,7 @@ msgstr "删除"
|
||||||
msgid "Delete ID: %{id}"
|
msgid "Delete ID: %{id}"
|
||||||
msgstr "删除 ID: %{id}"
|
msgstr "删除 ID: %{id}"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:81
|
#: src/views/domain/DomainList.vue:82
|
||||||
msgid "Delete site: %{site_name}"
|
msgid "Delete site: %{site_name}"
|
||||||
msgstr "删除站点: %{site_name}"
|
msgstr "删除站点: %{site_name}"
|
||||||
|
|
||||||
|
@ -300,15 +314,15 @@ msgstr "指令"
|
||||||
msgid "Disable auto-renewal failed for %{name}"
|
msgid "Disable auto-renewal failed for %{name}"
|
||||||
msgstr "关闭 %{name} 自动续签失败"
|
msgstr "关闭 %{name} 自动续签失败"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:51 src/views/domain/cert/ChangeCert.vue:45
|
#: src/views/cert/Cert.vue:47 src/views/domain/cert/ChangeCert.vue:45
|
||||||
#: src/views/domain/DomainEdit.vue:10 src/views/domain/DomainEdit.vue:9
|
#: src/views/domain/DomainEdit.vue:10 src/views/domain/DomainEdit.vue:9
|
||||||
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:34
|
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:35
|
||||||
#: src/views/domain/DomainList.vue:7 src/views/domain/DomainList.vue:8
|
#: src/views/domain/DomainList.vue:7 src/views/domain/DomainList.vue:8
|
||||||
#: src/views/domain/DomainList.vue:9
|
#: src/views/domain/DomainList.vue:9
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "禁用"
|
msgstr "禁用"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:146 src/views/domain/DomainList.vue:69
|
#: src/views/domain/DomainEdit.vue:146 src/views/domain/DomainList.vue:70
|
||||||
msgid "Disabled successfully"
|
msgid "Disabled successfully"
|
||||||
msgstr "禁用成功"
|
msgstr "禁用成功"
|
||||||
|
|
||||||
|
@ -316,14 +330,14 @@ msgstr "禁用成功"
|
||||||
msgid "Disk IO"
|
msgid "Disk IO"
|
||||||
msgstr "磁盘 IO"
|
msgstr "磁盘 IO"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:32
|
|
||||||
msgid "Domain"
|
|
||||||
msgstr "域名"
|
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:58
|
#: src/views/domain/DomainAdd.vue:58
|
||||||
msgid "Domain Config Created Successfully"
|
msgid "Domain Config Created Successfully"
|
||||||
msgstr "域名配置文件创建成功"
|
msgstr "域名配置文件创建成功"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:21
|
||||||
|
msgid "Domains list is empty, try to reopen auto-cert for %{config}"
|
||||||
|
msgstr "域名列表为空,请尝试为%{config}重新打开证书自动续期。"
|
||||||
|
|
||||||
#: src/language/constants.ts:26
|
#: src/language/constants.ts:26
|
||||||
msgid "Download latest release error"
|
msgid "Download latest release error"
|
||||||
msgstr "下载最新版本错误"
|
msgstr "下载最新版本错误"
|
||||||
|
@ -334,9 +348,14 @@ msgstr "下载最新版本"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:14 src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:14 src/views/domain/DomainList.vue:15
|
||||||
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:23
|
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:23
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:2
|
||||||
msgid "Duplicate"
|
msgid "Duplicate"
|
||||||
msgstr "复制"
|
msgstr "复制"
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:43
|
||||||
|
msgid "Duplicated successfully"
|
||||||
|
msgstr "复制成功"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:4 src/views/domain/DomainEdit.vue:5
|
#: src/views/domain/DomainEdit.vue:4 src/views/domain/DomainEdit.vue:5
|
||||||
msgid "Edit %{n}"
|
msgid "Edit %{n}"
|
||||||
msgstr "编辑 %{n}"
|
msgstr "编辑 %{n}"
|
||||||
|
@ -365,16 +384,16 @@ msgstr "启用失败"
|
||||||
msgid "Enable TLS"
|
msgid "Enable TLS"
|
||||||
msgstr "启用 TLS"
|
msgstr "启用 TLS"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:48 src/views/domain/cert/ChangeCert.vue:42
|
#: src/views/cert/Cert.vue:44 src/views/domain/cert/ChangeCert.vue:42
|
||||||
#: src/views/domain/DomainEdit.vue:43 src/views/domain/DomainEdit.vue:6
|
#: src/views/domain/DomainEdit.vue:43 src/views/domain/DomainEdit.vue:6
|
||||||
#: src/views/domain/DomainEdit.vue:7 src/views/domain/DomainList.vue:10
|
#: src/views/domain/DomainEdit.vue:7 src/views/domain/DomainList.vue:10
|
||||||
#: src/views/domain/DomainList.vue:11 src/views/domain/DomainList.vue:12
|
#: src/views/domain/DomainList.vue:11 src/views/domain/DomainList.vue:12
|
||||||
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:31
|
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:32
|
||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "启用"
|
msgstr "启用"
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:47 src/views/domain/DomainEdit.vue:137
|
#: src/views/domain/DomainAdd.vue:47 src/views/domain/DomainEdit.vue:137
|
||||||
#: src/views/domain/DomainList.vue:59
|
#: src/views/domain/DomainList.vue:60
|
||||||
msgid "Enabled successfully"
|
msgid "Enabled successfully"
|
||||||
msgstr "启用成功"
|
msgstr "启用成功"
|
||||||
|
|
||||||
|
@ -406,11 +425,11 @@ msgstr "过期时间: %{date}"
|
||||||
msgid "Export"
|
msgid "Export"
|
||||||
msgstr "导出"
|
msgstr "导出"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:149 src/views/domain/DomainList.vue:73
|
#: src/views/domain/DomainEdit.vue:149 src/views/domain/DomainList.vue:74
|
||||||
msgid "Failed to disable %{msg}"
|
msgid "Failed to disable %{msg}"
|
||||||
msgstr "禁用失败 %{msg}"
|
msgstr "禁用失败 %{msg}"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:140 src/views/domain/DomainList.vue:63
|
#: src/views/domain/DomainEdit.vue:140 src/views/domain/DomainList.vue:64
|
||||||
msgid "Failed to enable %{msg}"
|
msgid "Failed to enable %{msg}"
|
||||||
msgstr "启用失败 %{msg}"
|
msgstr "启用失败 %{msg}"
|
||||||
|
|
||||||
|
@ -598,7 +617,7 @@ msgstr "单行指令"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:16 src/views/config/config.ts:9
|
#: src/views/cert/Cert.vue:16 src/views/config/config.ts:9
|
||||||
#: src/views/domain/cert/ChangeCert.vue:19 src/views/domain/DomainEdit.vue:46
|
#: src/views/domain/cert/ChangeCert.vue:19 src/views/domain/DomainEdit.vue:46
|
||||||
#: src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:16 src/views/domain/SiteDuplicate.vue:5
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "名称"
|
msgstr "名称"
|
||||||
|
|
||||||
|
@ -721,6 +740,12 @@ msgstr "执行核心升级错误"
|
||||||
msgid "Performing core upgrade"
|
msgid "Performing core upgrade"
|
||||||
msgstr "正在进行核心升级"
|
msgstr "正在进行核心升级"
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:28
|
||||||
|
msgid ""
|
||||||
|
"Please input name, this will be used as the filename of the new "
|
||||||
|
"configuration!"
|
||||||
|
msgstr "请输入名称,这将被用作新配置的文件名。"
|
||||||
|
|
||||||
#: src/views/other/Install.vue:36
|
#: src/views/other/Install.vue:36
|
||||||
msgid "Please input your E-mail!"
|
msgid "Please input your E-mail!"
|
||||||
msgstr "请输入您的邮箱!"
|
msgstr "请输入您的邮箱!"
|
||||||
|
@ -865,9 +890,8 @@ msgstr "上传"
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:168
|
#: src/components/StdDataDisplay/StdTable.vue:168
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:343
|
#: src/components/StdDataDisplay/StdTable.vue:343
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:463
|
#: src/components/StdDataDisplay/StdTable.vue:463
|
||||||
#: src/views/config/ConfigEdit.vue:32 src/views/domain/DomainEdit.vue:87
|
#: src/views/config/ConfigEdit.vue:32 src/views/domain/DomainList.vue:84
|
||||||
#: src/views/domain/DomainList.vue:83 src/views/other/Install.vue:71
|
#: src/views/other/Install.vue:71 src/views/preference/Preference.vue:41
|
||||||
#: src/views/preference/Preference.vue:41
|
|
||||||
msgid "Server error"
|
msgid "Server error"
|
||||||
msgstr "服务器错误"
|
msgstr "服务器错误"
|
||||||
|
|
||||||
|
@ -896,23 +920,23 @@ msgstr "站点列表"
|
||||||
msgid "Sites List"
|
msgid "Sites List"
|
||||||
msgstr "站点列表"
|
msgstr "站点列表"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:65
|
#: src/views/cert/Cert.vue:61
|
||||||
msgid "SSL Certificate Key Path"
|
msgid "SSL Certificate Key Path"
|
||||||
msgstr "SSL证书密钥路径"
|
msgstr "SSL证书密钥路径"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:58
|
#: src/views/cert/Cert.vue:54
|
||||||
msgid "SSL Certificate Path"
|
msgid "SSL Certificate Path"
|
||||||
msgstr "SSL证书路径"
|
msgstr "SSL证书路径"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:19
|
#: src/views/cert/Cert.vue:41
|
||||||
msgid "SSL Certification Content"
|
msgid "SSL Certification Content"
|
||||||
msgstr "SSL证书内容"
|
msgstr "SSL证书内容"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:22
|
#: src/views/cert/Cert.vue:44
|
||||||
msgid "SSL Certification Key Content"
|
msgid "SSL Certification Key Content"
|
||||||
msgstr "SSL证书密钥内容"
|
msgstr "SSL证书密钥内容"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:24
|
#: src/views/domain/DomainList.vue:25
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
msgstr "状态"
|
msgstr "状态"
|
||||||
|
|
||||||
|
@ -973,12 +997,16 @@ msgstr "用户名或密码错误"
|
||||||
msgid "Theme"
|
msgid "Theme"
|
||||||
msgstr "主题"
|
msgstr "主题"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:15
|
||||||
|
msgid "This auto-cert item is invalid, please remove it."
|
||||||
|
msgstr "这个证书自动续期项目是无效的,请删除。"
|
||||||
|
|
||||||
#: src/views/config/config.ts:14
|
#: src/views/config/config.ts:14
|
||||||
msgid "Type"
|
msgid "Type"
|
||||||
msgstr "类型"
|
msgstr "类型"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:72 src/views/config/config.ts:29
|
#: src/views/cert/Cert.vue:68 src/views/config/config.ts:29
|
||||||
#: src/views/domain/DomainList.vue:41 src/views/user/User.vue:37
|
#: src/views/domain/DomainList.vue:42 src/views/user/User.vue:37
|
||||||
msgid "Updated at"
|
msgid "Updated at"
|
||||||
msgstr "修改时间"
|
msgstr "修改时间"
|
||||||
|
|
||||||
|
@ -1061,6 +1089,9 @@ msgctxt "Project"
|
||||||
msgid "License"
|
msgid "License"
|
||||||
msgstr "开源许可"
|
msgstr "开源许可"
|
||||||
|
|
||||||
|
#~ msgid "Domain"
|
||||||
|
#~ msgstr "域名"
|
||||||
|
|
||||||
#~ msgid "Do you want to reload Nginx?"
|
#~ msgid "Do you want to reload Nginx?"
|
||||||
#~ msgstr "你需要重载 Nginx 吗?"
|
#~ msgstr "你需要重载 Nginx 吗?"
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -21,8 +21,8 @@ msgstr "關於"
|
||||||
msgid "Access Logs"
|
msgid "Access Logs"
|
||||||
msgstr "訪問日誌"
|
msgstr "訪問日誌"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:78 src/views/config/config.ts:36
|
#: src/views/cert/Cert.vue:74 src/views/config/config.ts:36
|
||||||
#: src/views/domain/DomainList.vue:47 src/views/user/User.vue:43
|
#: src/views/domain/DomainList.vue:48 src/views/user/User.vue:43
|
||||||
msgid "Action"
|
msgid "Action"
|
||||||
msgstr "操作"
|
msgstr "操作"
|
||||||
|
|
||||||
|
@ -87,11 +87,11 @@ msgstr "作者"
|
||||||
msgid "Auto"
|
msgid "Auto"
|
||||||
msgstr "自動"
|
msgstr "自動"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:41 src/views/domain/cert/ChangeCert.vue:35
|
#: src/views/cert/Cert.vue:37 src/views/domain/cert/ChangeCert.vue:35
|
||||||
msgid "Auto Cert"
|
msgid "Auto Cert"
|
||||||
msgstr "自動更新"
|
msgstr "自動更新"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:8
|
#: src/views/cert/Cert.vue:9
|
||||||
msgid "Auto cert is enabled, please do not modify this certification."
|
msgid "Auto cert is enabled, please do not modify this certification."
|
||||||
msgstr "自動證書已啟用,請不要修改此證書。"
|
msgstr "自動證書已啟用,請不要修改此證書。"
|
||||||
|
|
||||||
|
@ -99,6 +99,10 @@ msgstr "自動證書已啟用,請不要修改此證書。"
|
||||||
msgid "Auto Refresh"
|
msgid "Auto Refresh"
|
||||||
msgstr "自動刷新"
|
msgstr "自動刷新"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:27
|
||||||
|
msgid "Auto-Cert Log"
|
||||||
|
msgstr "自動證書日誌"
|
||||||
|
|
||||||
#: src/views/domain/cert/IssueCert.vue:71
|
#: src/views/domain/cert/IssueCert.vue:71
|
||||||
msgid "Auto-renewal disabled for %{name}"
|
msgid "Auto-renewal disabled for %{name}"
|
||||||
msgstr "已關閉 %{name} 自動續簽"
|
msgstr "已關閉 %{name} 自動續簽"
|
||||||
|
@ -152,7 +156,7 @@ msgstr "此憑證已過期"
|
||||||
msgid "Certificate is valid"
|
msgid "Certificate is valid"
|
||||||
msgstr "此憑證有效"
|
msgstr "此憑證有效"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:35
|
#: src/views/cert/Cert.vue:34 src/views/domain/cert/Cert.vue:35
|
||||||
msgid "Certificate Status"
|
msgid "Certificate Status"
|
||||||
msgstr "憑證狀態"
|
msgstr "憑證狀態"
|
||||||
|
|
||||||
|
@ -174,10 +178,14 @@ msgstr "再次檢查"
|
||||||
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
#: src/views/domain/ngx_conf/LocationEditor.vue:35
|
||||||
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
#: src/views/domain/ngx_conf/LocationEditor.vue:52
|
||||||
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:180
|
#: src/views/domain/ngx_conf/NgxConfigEditor.vue:181
|
||||||
msgid "Comments"
|
msgid "Comments"
|
||||||
msgstr "註釋"
|
msgstr "註釋"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:32
|
||||||
|
msgid "Config Name"
|
||||||
|
msgstr "配置名稱"
|
||||||
|
|
||||||
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
#: src/views/domain/ngx_conf/ConfigTemplate.vue:61
|
||||||
msgid "Config Templates"
|
msgid "Config Templates"
|
||||||
msgstr "配置模板"
|
msgstr "配置模板"
|
||||||
|
@ -255,7 +263,13 @@ msgstr "儀表盤"
|
||||||
msgid "Database (Optional, default: database)"
|
msgid "Database (Optional, default: database)"
|
||||||
msgstr "資料庫 (可選,預設: database)"
|
msgstr "資料庫 (可選,預設: database)"
|
||||||
|
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:528
|
#: src/components/StdDataDisplay/StdTable.vue:31
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:32
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:37
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:50
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:52
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:53
|
||||||
|
#: src/components/StdDataDisplay/StdTable.vue:57
|
||||||
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:20
|
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:20
|
||||||
#: src/views/domain/DomainList.vue:21 src/views/domain/DomainList.vue:28
|
#: src/views/domain/DomainList.vue:21 src/views/domain/DomainList.vue:28
|
||||||
#: src/views/domain/DomainList.vue:32
|
#: src/views/domain/DomainList.vue:32
|
||||||
|
@ -266,7 +280,7 @@ msgstr "刪除"
|
||||||
msgid "Delete ID: %{id}"
|
msgid "Delete ID: %{id}"
|
||||||
msgstr "刪除 ID: %{id}"
|
msgstr "刪除 ID: %{id}"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:81
|
#: src/views/domain/DomainList.vue:82
|
||||||
msgid "Delete site: %{site_name}"
|
msgid "Delete site: %{site_name}"
|
||||||
msgstr "刪除站點:%{site_name}"
|
msgstr "刪除站點:%{site_name}"
|
||||||
|
|
||||||
|
@ -301,15 +315,15 @@ msgstr "指令"
|
||||||
msgid "Disable auto-renewal failed for %{name}"
|
msgid "Disable auto-renewal failed for %{name}"
|
||||||
msgstr "關閉 %{name} 自動續簽失敗"
|
msgstr "關閉 %{name} 自動續簽失敗"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:51 src/views/domain/cert/ChangeCert.vue:45
|
#: src/views/cert/Cert.vue:47 src/views/domain/cert/ChangeCert.vue:45
|
||||||
#: src/views/domain/DomainEdit.vue:10 src/views/domain/DomainEdit.vue:9
|
#: src/views/domain/DomainEdit.vue:10 src/views/domain/DomainEdit.vue:9
|
||||||
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:34
|
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:35
|
||||||
#: src/views/domain/DomainList.vue:7 src/views/domain/DomainList.vue:8
|
#: src/views/domain/DomainList.vue:7 src/views/domain/DomainList.vue:8
|
||||||
#: src/views/domain/DomainList.vue:9
|
#: src/views/domain/DomainList.vue:9
|
||||||
msgid "Disabled"
|
msgid "Disabled"
|
||||||
msgstr "禁用"
|
msgstr "禁用"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:146 src/views/domain/DomainList.vue:69
|
#: src/views/domain/DomainEdit.vue:146 src/views/domain/DomainList.vue:70
|
||||||
msgid "Disabled successfully"
|
msgid "Disabled successfully"
|
||||||
msgstr "禁用成功"
|
msgstr "禁用成功"
|
||||||
|
|
||||||
|
@ -317,14 +331,14 @@ msgstr "禁用成功"
|
||||||
msgid "Disk IO"
|
msgid "Disk IO"
|
||||||
msgstr "磁碟 IO"
|
msgstr "磁碟 IO"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:32
|
|
||||||
msgid "Domain"
|
|
||||||
msgstr "網域"
|
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:58
|
#: src/views/domain/DomainAdd.vue:58
|
||||||
msgid "Domain Config Created Successfully"
|
msgid "Domain Config Created Successfully"
|
||||||
msgstr "域名配置文件創建成功"
|
msgstr "域名配置文件創建成功"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:21
|
||||||
|
msgid "Domains list is empty, try to reopen auto-cert for %{config}"
|
||||||
|
msgstr "域列表為空,請嘗試重新打開 %{config} 的自動證書"
|
||||||
|
|
||||||
#: src/language/constants.ts:26
|
#: src/language/constants.ts:26
|
||||||
msgid "Download latest release error"
|
msgid "Download latest release error"
|
||||||
msgstr "下載最新版本錯誤"
|
msgstr "下載最新版本錯誤"
|
||||||
|
@ -335,9 +349,14 @@ msgstr "正在下載最新版本"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:14 src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:14 src/views/domain/DomainList.vue:15
|
||||||
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:23
|
#: src/views/domain/DomainList.vue:16 src/views/domain/DomainList.vue:23
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:2
|
||||||
msgid "Duplicate"
|
msgid "Duplicate"
|
||||||
msgstr "複製"
|
msgstr "複製"
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:43
|
||||||
|
msgid "Duplicated successfully"
|
||||||
|
msgstr "複製成功"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:4 src/views/domain/DomainEdit.vue:5
|
#: src/views/domain/DomainEdit.vue:4 src/views/domain/DomainEdit.vue:5
|
||||||
msgid "Edit %{n}"
|
msgid "Edit %{n}"
|
||||||
msgstr "編輯 %{n}"
|
msgstr "編輯 %{n}"
|
||||||
|
@ -366,16 +385,16 @@ msgstr "啟用失敗"
|
||||||
msgid "Enable TLS"
|
msgid "Enable TLS"
|
||||||
msgstr "啟用 TLS"
|
msgstr "啟用 TLS"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:48 src/views/domain/cert/ChangeCert.vue:42
|
#: src/views/cert/Cert.vue:44 src/views/domain/cert/ChangeCert.vue:42
|
||||||
#: src/views/domain/DomainEdit.vue:43 src/views/domain/DomainEdit.vue:6
|
#: src/views/domain/DomainEdit.vue:43 src/views/domain/DomainEdit.vue:6
|
||||||
#: src/views/domain/DomainEdit.vue:7 src/views/domain/DomainList.vue:10
|
#: src/views/domain/DomainEdit.vue:7 src/views/domain/DomainList.vue:10
|
||||||
#: src/views/domain/DomainList.vue:11 src/views/domain/DomainList.vue:12
|
#: src/views/domain/DomainList.vue:11 src/views/domain/DomainList.vue:12
|
||||||
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:31
|
#: src/views/domain/DomainList.vue:19 src/views/domain/DomainList.vue:32
|
||||||
msgid "Enabled"
|
msgid "Enabled"
|
||||||
msgstr "啟用"
|
msgstr "啟用"
|
||||||
|
|
||||||
#: src/views/domain/DomainAdd.vue:47 src/views/domain/DomainEdit.vue:137
|
#: src/views/domain/DomainAdd.vue:47 src/views/domain/DomainEdit.vue:137
|
||||||
#: src/views/domain/DomainList.vue:59
|
#: src/views/domain/DomainList.vue:60
|
||||||
msgid "Enabled successfully"
|
msgid "Enabled successfully"
|
||||||
msgstr "啟用成功"
|
msgstr "啟用成功"
|
||||||
|
|
||||||
|
@ -407,11 +426,11 @@ msgstr "過期時間: %{date}"
|
||||||
msgid "Export"
|
msgid "Export"
|
||||||
msgstr "導出"
|
msgstr "導出"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:149 src/views/domain/DomainList.vue:73
|
#: src/views/domain/DomainEdit.vue:149 src/views/domain/DomainList.vue:74
|
||||||
msgid "Failed to disable %{msg}"
|
msgid "Failed to disable %{msg}"
|
||||||
msgstr "禁用失敗 %{msg}"
|
msgstr "禁用失敗 %{msg}"
|
||||||
|
|
||||||
#: src/views/domain/DomainEdit.vue:140 src/views/domain/DomainList.vue:63
|
#: src/views/domain/DomainEdit.vue:140 src/views/domain/DomainList.vue:64
|
||||||
msgid "Failed to enable %{msg}"
|
msgid "Failed to enable %{msg}"
|
||||||
msgstr "啟用失敗 %{msg}"
|
msgstr "啟用失敗 %{msg}"
|
||||||
|
|
||||||
|
@ -599,7 +618,7 @@ msgstr "多行指令"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:16 src/views/config/config.ts:9
|
#: src/views/cert/Cert.vue:16 src/views/config/config.ts:9
|
||||||
#: src/views/domain/cert/ChangeCert.vue:19 src/views/domain/DomainEdit.vue:46
|
#: src/views/domain/cert/ChangeCert.vue:19 src/views/domain/DomainEdit.vue:46
|
||||||
#: src/views/domain/DomainList.vue:15
|
#: src/views/domain/DomainList.vue:16 src/views/domain/SiteDuplicate.vue:5
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "名稱"
|
msgstr "名稱"
|
||||||
|
|
||||||
|
@ -722,6 +741,12 @@ msgstr "執行核心升級錯誤"
|
||||||
msgid "Performing core upgrade"
|
msgid "Performing core upgrade"
|
||||||
msgstr "正在執行核心升級"
|
msgstr "正在執行核心升級"
|
||||||
|
|
||||||
|
#: src/views/domain/SiteDuplicate.vue:28
|
||||||
|
msgid ""
|
||||||
|
"Please input name, this will be used as the filename of the new "
|
||||||
|
"configuration!"
|
||||||
|
msgstr "請輸入名稱,這將作為新配置的文件名!"
|
||||||
|
|
||||||
#: src/views/other/Install.vue:36
|
#: src/views/other/Install.vue:36
|
||||||
msgid "Please input your E-mail!"
|
msgid "Please input your E-mail!"
|
||||||
msgstr "請輸入您的郵箱!"
|
msgstr "請輸入您的郵箱!"
|
||||||
|
@ -866,9 +891,8 @@ msgstr "上傳"
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:168
|
#: src/components/StdDataDisplay/StdTable.vue:168
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:343
|
#: src/components/StdDataDisplay/StdTable.vue:343
|
||||||
#: src/components/StdDataDisplay/StdTable.vue:463
|
#: src/components/StdDataDisplay/StdTable.vue:463
|
||||||
#: src/views/config/ConfigEdit.vue:32 src/views/domain/DomainEdit.vue:87
|
#: src/views/config/ConfigEdit.vue:32 src/views/domain/DomainList.vue:84
|
||||||
#: src/views/domain/DomainList.vue:83 src/views/other/Install.vue:71
|
#: src/views/other/Install.vue:71 src/views/preference/Preference.vue:41
|
||||||
#: src/views/preference/Preference.vue:41
|
|
||||||
msgid "Server error"
|
msgid "Server error"
|
||||||
msgstr "伺服器錯誤"
|
msgstr "伺服器錯誤"
|
||||||
|
|
||||||
|
@ -897,23 +921,23 @@ msgstr "網站日誌"
|
||||||
msgid "Sites List"
|
msgid "Sites List"
|
||||||
msgstr "站點列表"
|
msgstr "站點列表"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:65
|
#: src/views/cert/Cert.vue:61
|
||||||
msgid "SSL Certificate Key Path"
|
msgid "SSL Certificate Key Path"
|
||||||
msgstr "SSL 證書密鑰路徑"
|
msgstr "SSL 證書密鑰路徑"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:58
|
#: src/views/cert/Cert.vue:54
|
||||||
msgid "SSL Certificate Path"
|
msgid "SSL Certificate Path"
|
||||||
msgstr "SSL證書路徑"
|
msgstr "SSL證書路徑"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:19
|
#: src/views/cert/Cert.vue:41
|
||||||
msgid "SSL Certification Content"
|
msgid "SSL Certification Content"
|
||||||
msgstr "SSL認證內容"
|
msgstr "SSL認證內容"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:22
|
#: src/views/cert/Cert.vue:44
|
||||||
msgid "SSL Certification Key Content"
|
msgid "SSL Certification Key Content"
|
||||||
msgstr "SSL 證書密鑰內容"
|
msgstr "SSL 證書密鑰內容"
|
||||||
|
|
||||||
#: src/views/domain/DomainList.vue:24
|
#: src/views/domain/DomainList.vue:25
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
msgstr "狀態"
|
msgstr "狀態"
|
||||||
|
|
||||||
|
@ -975,12 +999,16 @@ msgstr "用戶名或密碼不正確"
|
||||||
msgid "Theme"
|
msgid "Theme"
|
||||||
msgstr "外觀樣式"
|
msgstr "外觀樣式"
|
||||||
|
|
||||||
|
#: src/views/cert/Cert.vue:15
|
||||||
|
msgid "This auto-cert item is invalid, please remove it."
|
||||||
|
msgstr "此自動證書項無效,請將其刪除。"
|
||||||
|
|
||||||
#: src/views/config/config.ts:14
|
#: src/views/config/config.ts:14
|
||||||
msgid "Type"
|
msgid "Type"
|
||||||
msgstr "類型"
|
msgstr "類型"
|
||||||
|
|
||||||
#: src/views/cert/Cert.vue:72 src/views/config/config.ts:29
|
#: src/views/cert/Cert.vue:68 src/views/config/config.ts:29
|
||||||
#: src/views/domain/DomainList.vue:41 src/views/user/User.vue:37
|
#: src/views/domain/DomainList.vue:42 src/views/user/User.vue:37
|
||||||
msgid "Updated at"
|
msgid "Updated at"
|
||||||
msgstr "修改時間"
|
msgstr "修改時間"
|
||||||
|
|
||||||
|
@ -1063,6 +1091,9 @@ msgctxt "Project"
|
||||||
msgid "License"
|
msgid "License"
|
||||||
msgstr "開源軟體授權條款"
|
msgstr "開源軟體授權條款"
|
||||||
|
|
||||||
|
#~ msgid "Domain"
|
||||||
|
#~ msgstr "網域"
|
||||||
|
|
||||||
#~ msgid "Do you want to reload Nginx?"
|
#~ msgid "Do you want to reload Nginx?"
|
||||||
#~ msgstr "你想重載 Nginx 嗎?"
|
#~ msgstr "你想重載 Nginx 嗎?"
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"version":"1.7.5","build_id":81,"total_build":151}
|
{"version":"1.7.6","build_id":82,"total_build":152}
|
|
@ -1 +1 @@
|
||||||
{"version":"1.7.5","build_id":81,"total_build":151}
|
{"version":"1.7.6","build_id":82,"total_build":152}
|
|
@ -1,157 +1,157 @@
|
||||||
package cert
|
package cert
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"crypto"
|
"crypto"
|
||||||
"crypto/ecdsa"
|
"crypto/ecdsa"
|
||||||
"crypto/elliptic"
|
"crypto/elliptic"
|
||||||
"crypto/rand"
|
"crypto/rand"
|
||||||
"crypto/tls"
|
"crypto/tls"
|
||||||
"github.com/0xJacky/Nginx-UI/server/pkg/nginx"
|
"github.com/0xJacky/Nginx-UI/server/pkg/nginx"
|
||||||
"github.com/0xJacky/Nginx-UI/server/settings"
|
"github.com/0xJacky/Nginx-UI/server/settings"
|
||||||
"github.com/go-acme/lego/v4/certcrypto"
|
"github.com/go-acme/lego/v4/certcrypto"
|
||||||
"github.com/go-acme/lego/v4/certificate"
|
"github.com/go-acme/lego/v4/certificate"
|
||||||
"github.com/go-acme/lego/v4/challenge/http01"
|
"github.com/go-acme/lego/v4/challenge/http01"
|
||||||
"github.com/go-acme/lego/v4/lego"
|
"github.com/go-acme/lego/v4/lego"
|
||||||
"github.com/go-acme/lego/v4/registration"
|
"github.com/go-acme/lego/v4/registration"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"log"
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
// MyUser You'll need a user or account type that implements acme.User
|
// MyUser You'll need a user or account type that implements acme.User
|
||||||
type MyUser struct {
|
type MyUser struct {
|
||||||
Email string
|
Email string
|
||||||
Registration *registration.Resource
|
Registration *registration.Resource
|
||||||
key crypto.PrivateKey
|
key crypto.PrivateKey
|
||||||
}
|
}
|
||||||
|
|
||||||
func (u *MyUser) GetEmail() string {
|
func (u *MyUser) GetEmail() string {
|
||||||
return u.Email
|
return u.Email
|
||||||
}
|
}
|
||||||
func (u *MyUser) GetRegistration() *registration.Resource {
|
func (u *MyUser) GetRegistration() *registration.Resource {
|
||||||
return u.Registration
|
return u.Registration
|
||||||
}
|
}
|
||||||
func (u *MyUser) GetPrivateKey() crypto.PrivateKey {
|
func (u *MyUser) GetPrivateKey() crypto.PrivateKey {
|
||||||
return u.key
|
return u.key
|
||||||
}
|
}
|
||||||
|
|
||||||
func IssueCert(domain []string, logChan chan string, errChan chan error) {
|
func IssueCert(domain []string, logChan chan string, errChan chan error) {
|
||||||
defer func() {
|
defer func() {
|
||||||
if err := recover(); err != nil {
|
if err := recover(); err != nil {
|
||||||
log.Println("Issue Cert recover", err)
|
log.Println("Issue Cert recover", err)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
// Create a user. New accounts need an email and private key to start.
|
// Create a user. New accounts need an email and private key to start.
|
||||||
logChan <- "Generating private key for registering account"
|
logChan <- "Generating private key for registering account"
|
||||||
privateKey, err := ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
|
privateKey, err := ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "issue cert generate key error")
|
errChan <- errors.Wrap(err, "issue cert generate key error")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
logChan <- "Preparing lego configurations"
|
logChan <- "Preparing lego configurations"
|
||||||
myUser := MyUser{
|
myUser := MyUser{
|
||||||
Email: settings.ServerSettings.Email,
|
Email: settings.ServerSettings.Email,
|
||||||
key: privateKey,
|
key: privateKey,
|
||||||
}
|
}
|
||||||
|
|
||||||
config := lego.NewConfig(&myUser)
|
config := lego.NewConfig(&myUser)
|
||||||
|
|
||||||
if settings.ServerSettings.Demo {
|
if settings.ServerSettings.Demo {
|
||||||
config.CADirURL = "https://acme-staging-v02.api.letsencrypt.org/directory"
|
config.CADirURL = "https://acme-staging-v02.api.letsencrypt.org/directory"
|
||||||
}
|
}
|
||||||
|
|
||||||
if settings.ServerSettings.CADir != "" {
|
if settings.ServerSettings.CADir != "" {
|
||||||
config.CADirURL = settings.ServerSettings.CADir
|
config.CADirURL = settings.ServerSettings.CADir
|
||||||
if config.HTTPClient != nil {
|
if config.HTTPClient != nil {
|
||||||
config.HTTPClient.Transport = &http.Transport{
|
config.HTTPClient.Transport = &http.Transport{
|
||||||
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
config.Certificate.KeyType = certcrypto.RSA2048
|
config.Certificate.KeyType = certcrypto.RSA2048
|
||||||
|
|
||||||
logChan <- "Creating client facilitates communication with the CA server"
|
logChan <- "Creating client facilitates communication with the CA server"
|
||||||
// A client facilitates communication with the CA server.
|
// A client facilitates communication with the CA server.
|
||||||
client, err := lego.NewClient(config)
|
client, err := lego.NewClient(config)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "issue cert new client error")
|
errChan <- errors.Wrap(err, "issue cert new client error")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
logChan <- "Using HTTP01 challenge provider"
|
logChan <- "Using HTTP01 challenge provider"
|
||||||
err = client.Challenge.SetHTTP01Provider(
|
err = client.Challenge.SetHTTP01Provider(
|
||||||
http01.NewProviderServer("",
|
http01.NewProviderServer("",
|
||||||
settings.ServerSettings.HTTPChallengePort,
|
settings.ServerSettings.HTTPChallengePort,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "fail to challenge")
|
errChan <- errors.Wrap(err, "fail to challenge")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// New users will need to register
|
// New users will need to register
|
||||||
logChan <- "Registering user"
|
logChan <- "Registering user"
|
||||||
reg, err := client.Registration.Register(registration.RegisterOptions{TermsOfServiceAgreed: true})
|
reg, err := client.Registration.Register(registration.RegisterOptions{TermsOfServiceAgreed: true})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "fail to register")
|
errChan <- errors.Wrap(err, "fail to register")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
myUser.Registration = reg
|
myUser.Registration = reg
|
||||||
|
|
||||||
request := certificate.ObtainRequest{
|
request := certificate.ObtainRequest{
|
||||||
Domains: domain,
|
Domains: domain,
|
||||||
Bundle: true,
|
Bundle: true,
|
||||||
}
|
}
|
||||||
|
|
||||||
logChan <- "Obtaining certificate"
|
logChan <- "Obtaining certificate"
|
||||||
certificates, err := client.Certificate.Obtain(request)
|
certificates, err := client.Certificate.Obtain(request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "fail to obtain")
|
errChan <- errors.Wrap(err, "fail to obtain")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
name := strings.Join(domain, "_")
|
name := strings.Join(domain, "_")
|
||||||
saveDir := nginx.GetConfPath("ssl/" + name)
|
saveDir := nginx.GetConfPath("ssl/" + name)
|
||||||
if _, err = os.Stat(saveDir); os.IsNotExist(err) {
|
if _, err = os.Stat(saveDir); os.IsNotExist(err) {
|
||||||
err = os.MkdirAll(saveDir, 0755)
|
err = os.MkdirAll(saveDir, 0755)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "fail to mkdir")
|
errChan <- errors.Wrap(err, "fail to mkdir")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Each certificate comes back with the cert bytes, the bytes of the client's
|
// Each certificate comes back with the cert bytes, the bytes of the client's
|
||||||
// private key, and a certificate URL. SAVE THESE TO DISK.
|
// private key, and a certificate URL. SAVE THESE TO DISK.
|
||||||
logChan <- "Writing certificate to disk"
|
logChan <- "Writing certificate to disk"
|
||||||
err = os.WriteFile(filepath.Join(saveDir, "fullchain.cer"),
|
err = os.WriteFile(filepath.Join(saveDir, "fullchain.cer"),
|
||||||
certificates.Certificate, 0644)
|
certificates.Certificate, 0644)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "error issue cert write fullchain.cer")
|
errChan <- errors.Wrap(err, "error issue cert write fullchain.cer")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
logChan <- "Writing certificate private key to disk"
|
logChan <- "Writing certificate private key to disk"
|
||||||
err = os.WriteFile(filepath.Join(saveDir, "private.key"),
|
err = os.WriteFile(filepath.Join(saveDir, "private.key"),
|
||||||
certificates.PrivateKey, 0644)
|
certificates.PrivateKey, 0644)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errChan <- errors.Wrap(err, "fail to write key")
|
errChan <- errors.Wrap(err, "fail to write key")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
close(errChan)
|
close(errChan)
|
||||||
logChan <- "Reloading nginx"
|
logChan <- "Reloading nginx"
|
||||||
|
|
||||||
nginx.Reload()
|
nginx.Reload()
|
||||||
|
|
||||||
logChan <- "Finished"
|
logChan <- "Finished"
|
||||||
|
|
||||||
close(logChan)
|
close(logChan)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue