diff --git a/backend/i18n/lang/en.yaml b/backend/i18n/lang/en.yaml
index f3e3774dc..f6f3d5306 100644
--- a/backend/i18n/lang/en.yaml
+++ b/backend/i18n/lang/en.yaml
@@ -16,7 +16,7 @@ ErrApiConfigDisable: "This interface prohibits the use of API Interface calls: {
#common
ErrNameIsExist: "Name is already exist"
ErrDemoEnvironment: "Demo server, prohibit this operation!"
-ErrCmdTimeout: "Command execution timed out!"
+ErrCmdTimeout: "Command execution timed out!"
ErrCmdIllegal: "The command contains illegal characters. Please modify and try again!"
ErrPortExist: '{{ .port }} port is already occupied by {{ .type }} [{{ .name }}]'
TYPE_APP: "Application"
@@ -34,13 +34,13 @@ ErrAppLimit: "App exceeds install limit"
ErrAppRequired: "{{ .detail }} app is required"
ErrNotInstall: "App not installed"
ErrPortInOtherApp: "{{ .port }} port already in use by app {{ .apps }}"
-ErrDbUserNotValid: "Stock database, username and password do not match!"
+ErrDbUserNotValid: "Stock database, username and password do not match!"
ErrDockerComposeNotValid: "docker-compose file format error!"
ErrUpdateBuWebsite: 'The application was updated successfully, but the modification of the website configuration file failed, please check the configuration!'
Err1PanelNetworkFailed: 'Default container network creation failed! {{ .detail }}'
ErrFileParse: 'Application docker-compose file parsing failed!'
ErrInstallDirNotFound: 'installation directory does not exist'
-AppStoreIsUpToDate: 'The app store is already up to date!'
+AppStoreIsUpToDate: 'Up to date'
LocalAppVersionNull: 'The {{.name}} app is not synced to version! Could not add to application list'
LocalAppVersionErr: '{{.name}} failed to sync version {{.version}}! {{.err}}'
ErrFileNotFound: '{{.name}} file does not exist'
@@ -95,7 +95,7 @@ ErrAppDelete: 'Other Website use this App'
ErrGroupIsUsed: 'The group is in use and cannot be deleted'
ErrBackupMatch: 'the backup file does not match the current partial data of the website: {{ .detail}}'
ErrBackupExist: 'the backup file corresponds to a portion of the original data that does not exist: {{ .detail}}'
-ErrPHPResource: 'The local runtime does not support switching!'
+ErrPHPResource: 'The local runtime does not support switching!'
ErrPathPermission: 'A folder with non-1000:1000 permissions was detected in the index directory, which may cause an Access denied error when accessing the website. Please click the save button above'
ErrDomainIsUsed: "Domain is already used by website {{ .name }}"
ErrDomainFormat: "{{ .name }} domain format error"
@@ -105,7 +105,7 @@ ErrImageNotExist: "Running environment {{.name}} image does not exist, please re
#ssl
ErrSSLCannotDelete: "The certificate {{ .name }} is being used by the website and cannot be removed"
ErrAccountCannotDelete: "The certificate associated with the account cannot be deleted"
-ErrSSLApply: "The certificate continues to be signed successfully, but openresty reload fails, please check the configuration!"
+ErrSSLApply: "The certificate continues to be signed successfully, but openresty reload fails, please check the configuration!"
ErrEmailIsExist: 'Email is already exist'
ErrSSLKeyNotFound: 'The private key file does not exist'
ErrSSLCertificateNotFound: 'The certificate file does not exist'
@@ -147,10 +147,10 @@ ErrPortRules: "The number of ports does not match, please re-enter!"
ErrPgImagePull: "Image pull timeout. Please configure image acceleration or manually pull the postgres:16.0-alpine image and try again"
#runtime
-ErrDirNotFound: "The build folder does not exist! Please check file integrity!"
-ErrFileNotExist: "{{ .detail }} file does not exist! Please check source file integrity!"
+ErrDirNotFound: "The build folder does not exist! Please check file integrity!"
+ErrFileNotExist: "{{ .detail }} file does not exist! Please check source file integrity!"
ErrImageBuildErr: "Image build failed"
-ErrImageExist: "Image is already exist!"
+ErrImageExist: "Image is already exist!"
ErrDelWithWebsite: "The operating environment has been associated with a website and cannot be deleted"
ErrRuntimeStart: "Failed to start"
ErrPackageJsonNotFound: "package.json file does not exist"
diff --git a/frontend/src/components/app-status/index.vue b/frontend/src/components/app-status/index.vue
index ae7c6bc68..c40f4c4b3 100644
--- a/frontend/src/components/app-status/index.vue
+++ b/frontend/src/components/app-status/index.vue
@@ -189,15 +189,11 @@ const clear = () => {
const onOperate = async (operation: string) => {
em('update:maskShow', false);
operateReq.operate = operation;
- ElMessageBox.confirm(
- i18n.global.t('app.operatorHelper', [i18n.global.t('app.' + operation)]),
- i18n.global.t('app.' + operation),
- {
- confirmButtonText: i18n.global.t('commons.button.confirm'),
- cancelButtonText: i18n.global.t('commons.button.cancel'),
- type: 'info',
- },
- )
+ ElMessageBox.confirm(i18n.global.t(`app.${operation}OperatorHelper`), i18n.global.t('app.' + operation), {
+ confirmButtonText: i18n.global.t('commons.button.confirm'),
+ cancelButtonText: i18n.global.t('commons.button.cancel'),
+ type: 'info',
+ })
.then(() => {
em('update:maskShow', true);
em('update:loading', true);
diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts
index e3193eaa7..3d5c961bd 100644
--- a/frontend/src/lang/modules/en.ts
+++ b/frontend/src/lang/modules/en.ts
@@ -10,7 +10,7 @@ const message = {
commons: {
true: 'true',
false: 'false',
- example: 'e.g.:',
+ example: 'For example, ',
fit2cloud: 'FIT2CLOUD',
button: {
create: 'Create ',
@@ -70,7 +70,7 @@ const message = {
createNewFolder: 'Create new folder',
createNewFile: 'Create new file',
helpDoc: 'Help Document',
- unbind: 'UnBind',
+ unbind: 'Unbind',
},
search: {
timeStart: 'Time start',
@@ -120,22 +120,22 @@ const message = {
delete: 'This operation delete cannot be rolled back. Do you want to continue?',
clean: 'This operation clean cannot be rolled back. Do you want to continue?',
deleteTitle: 'Delete',
- deleteSuccess: 'Delete Success',
- loginSuccess: 'Login Success',
- operationSuccess: 'Successful operation',
- copySuccess: 'Copy Successful',
- notSupportOperation: 'This operation is not supported',
+ deleteSuccess: 'Deleted successfully',
+ loginSuccess: 'Logged in successfully',
+ operationSuccess: 'Done successfully',
+ copySuccess: 'Copied successfully',
+ notSupportOperation: `This operation isn't supported`,
requestTimeout: 'The request timed out, please try again later',
infoTitle: 'Hint',
notRecords: 'No execution record is generated for the current task',
sureLogOut: 'Are you sure you want to log out?',
- createSuccess: 'Create Success',
- updateSuccess: 'Update Success',
- uploadSuccess: 'Update Success',
+ createSuccess: 'Created successfully',
+ updateSuccess: 'Updated successfully',
+ uploadSuccess: 'Uploaded successfully',
operate: 'Operate',
operateConfirm: 'If you are sure about the operation, please input it manually',
inputOrSelect: 'Please select or enter',
- copyFailed: 'Copy failed',
+ copyFailed: 'Failed to copy',
operatorHelper: 'Would you like to continue performing {1} operation on {0}?',
notFound: 'Sorry, the page you requested does not exist.',
unSupportType: 'Current file type is not supported!',
@@ -183,7 +183,7 @@ const message = {
username: 'Please enter a username',
password: 'Please enter a password',
rePassword: 'The passwords are inconsistent. Please check and re-enter the password',
- requiredInput: 'Please enter the required fields',
+ requiredInput: 'This field is required.',
requiredSelect: 'Please select the required fields',
illegalInput: 'There are illegal characters in the input box.',
commonName:
@@ -198,7 +198,7 @@ const message = {
complexityPassword:
'Please enter a password combination with a length of 8-30 characters, including letters, numbers, and at least two special characters.',
commonPassword: 'Please enter a password with more than 6 characters',
- linuxName: 'Length 1-128, the name cannot contain symbols such as {0}',
+ linuxName: `The field length must be between 1 and 128. The field mustn't contain these special characters: "{0}".`,
email: 'Email format error',
number: 'Please enter the correct number',
integer: 'Please enter the correct positive integer',
@@ -207,7 +207,7 @@ const message = {
hostHelper: 'Support input of IP address or domain',
port: 'Please enter the correct port',
selectHelper: 'Please select the correct {0} file',
- domain: 'domain name format error',
+ domain: 'Primary domain should be like: example.com or example.com:8080.',
databaseName: 'Support English, numbers, _, length 1-30',
ipErr: 'IP [{0}] format error, please check',
numberRange: 'Number range: {0} - {1}',
@@ -236,7 +236,7 @@ const message = {
commonError: 'The request failed',
},
service: {
- serviceNotStarted: 'The {0} service is not currently started',
+ serviceNotStarted: `The {0} service isn't started`,
},
status: {
running: 'Running',
@@ -683,9 +683,9 @@ const message = {
cmdHelper: 'e.g. nginx -g "daemon off;"',
entrypointHelper: 'e.g. docker-entrypoint.sh',
autoRemove: 'Auto remove',
- cpuQuota: 'NacosCPU',
+ cpuQuota: 'Number of CPU cores',
memoryLimit: 'Memory',
- limitHelper: 'If you limit it to 0, then the limitation is turned off, and the maximum available is {0}.',
+ limitHelper: `If set to 0, it means that there is no limitation. The maximum value is {0}.`,
mount: 'Mount',
volumeOption: 'Volume',
hostOption: 'Host',
@@ -732,7 +732,7 @@ const message = {
tag: 'Tag',
tagHelper: 'one in a row, for example, \nkey1=value1\nkey2=value2',
imageNameHelper: 'Image name and Tag, for example: nginx:latest',
- cleanBuildCache: 'Clean Build Cache',
+ cleanBuildCache: 'Clean build cache',
delBuildCacheHelper:
'Cleaning the build cache will delete all cached artifacts generated during builds. This action cannot be undone. Continue?',
urlWarning: 'The URL prefix does not need to include http:// or https://. Please modify.',
@@ -1537,7 +1537,7 @@ const message = {
'Please enter a secure login entry point of 5-116 characters, only numbers or letters are supported.',
entranceInputHelper: 'When the security entry is set to blank, the security entry is cancelled.',
randomGenerate: 'Random',
- expirationTime: 'Expiry Date',
+ expirationTime: 'Expiration Date',
unSetting: 'Unset',
noneSetting:
'Set the expiration time for the panel password. After the expiration, you need to reset the password',
@@ -1698,7 +1698,7 @@ const message = {
trialInfo: 'Version',
authorizationId: 'Subscription Authorization ID',
authorizedUser: 'Authorized User',
- expiresAt: 'Expiry Date',
+ expiresAt: 'Expiration Date',
productName: 'Product Name',
productStatus: 'Product Status',
Lost: 'Lost',
@@ -1793,7 +1793,7 @@ const message = {
buildCache: 'Container Build Cache',
},
app: {
- app: 'Application',
+ app: 'Applications',
installName: 'Name',
installed: 'Installed',
all: 'All',
@@ -1814,14 +1814,18 @@ const message = {
description: 'Description',
deleteWarn:
'The delete operation will delete all data and backups together. This operation cannot be rolled back. Do you want to continue? ',
- syncSuccess: 'Sync successfully',
- canUpgrade: 'Upgrade',
+ syncSuccess: 'Synchronized successfully',
+ canUpgrade: 'Updates',
backupName: 'File Name',
backupPath: 'File Path',
backupdate: 'Backup time',
update: 'update',
versionSelect: 'Please select a version',
- operatorHelper: 'Operation {0} will be performed on the selected application, Do you want to continue? ',
+ operatorHelper: 'Operation {0} will be performed on the selected application. Do you want to continue?',
+ startOperatorHelper: 'The application will be started. Do you want to continue?',
+ stopOperatorHelper: 'The application will be stopped. Do you want to continue?',
+ restartOperatorHelper: 'The application will be restarted. Do you want to continue?',
+ reloadOperatorHelper: 'The application will be reloaded. Do you want to continue?',
checkInstalledWarn: '{0} is not detected, please enter the app store and click to install!',
gotoInstalled: 'Go to install',
search: 'Search',
@@ -1848,20 +1852,19 @@ const message = {
appOfficeWebsite: 'Office website',
github: 'Github',
document: 'Document',
- updatePrompt: 'The current application is the latest version',
+ updatePrompt: 'No updates available',
installPrompt: 'No apps installed yet',
updateHelper: 'Updating parameters may cause the application to fail to start, please operate with caution',
updateWarn: 'Update parameters need to rebuild the application, Do you want to continue? ',
busPort: 'Service Port',
syncStart: 'Start syncing! Please refresh the app store later',
advanced: 'Advanced Settings',
- cpuCore: 'Number of cores',
+ cpuCore: 'core(s)',
containerName: 'Container Name',
- containerNameHelper: 'can be empty, it will be automatically generated',
+ containerNameHelper: 'The container name will be automatically generated when not set',
allowPort: 'Port external access',
allowPortHelper: 'Allowing external port access will release the firewall port',
- appInstallWarn:
- 'The application does not release the external access port by default, you can choose to release it in the advanced settings',
+ appInstallWarn: `The application dosn't expose the external access port by default. Click "Advanced Settings" to expose it.`,
upgradeStart: 'Start upgrading! Please refresh the page later',
toFolder: 'Open the installation directory',
editCompose: 'Edit compose file',
@@ -1869,15 +1872,19 @@ const message = {
composeNullErr: 'compose cannot be empty',
takeDown: 'TakeDown',
allReadyInstalled: 'Installed',
- installHelper: 'Configuring image acceleration can solve the problem of image pull failure',
+ // installHelper: 'Configuring image acceleration can solve the problem of image pull failure',
+ installHelper: 'Configure image acceleration if you have image pull issues.',
+ // upgradeHelper:
+ // 'Abnormal applications need to be synchronized to normal status first. If the upgrade fails, please check the failure reason in the log audit-system log',
upgradeHelper:
- 'Abnormal applications need to be synchronized to normal status first. If the upgrade fails, please check the failure reason in the log audit-system log',
+ 'Bring abnormal applications back to normal status before upgrading. If the upgrade fails, go to "Log" > "System Logs" to check the failure reason.',
installWarn:
'Currently, if the port external access is not checked, it will not be able to access through the external network IP: port. Do you want to continue?',
- showIgnore: 'View ignore application',
+ showIgnore: 'View ignored applications',
cancelIgnore: 'Cancel ignore',
- ignoreList: 'ignore list',
- appHelper: 'Please view the installation instructions of some applications on the application details page',
+ ignoreList: 'Ignored applications',
+ // appHelper: 'Please view the installation instructions of some applications on the application details page',
+ appHelper: 'Go to application details page to learn installation instruction for some special applications.',
backupApp: 'Backup application before upgrade',
backupAppHelper:
'If the upgrade fails, the backup will be automatically rolled back. Please check the failure reason in the log audit-system log. The backup will retain the latest 3 copies by default',
@@ -1887,7 +1894,7 @@ const message = {
downloadLogHelper1: 'All logs of {0} application are about to be downloaded. Do you want to continue? ',
downloadLogHelper2:
'The latest {1} logs of {0} application are about to be downloaded. Do you want to continue? ',
- syncAllAppHelper: 'All applications are about to be synchronized. Do you want to continue? ',
+ syncAllAppHelper: 'All applications will be synchronized. Do you want to continue? ',
hostModeHelper:
'The current application network mode is host mode. If you need to open the port, please open it manually on the firewall page.',
showLocal: 'Show Local Application',
@@ -1910,8 +1917,8 @@ const message = {
},
website: {
website: 'Website',
- primaryDomain: 'Primary Domain',
- otherDomains: 'Other Domains',
+ primaryDomain: 'Primary domain',
+ otherDomains: 'Other domains',
static: 'Static',
deployment: 'Deployment',
supportUpType: 'Only .tar.gz files are supported',
@@ -1921,21 +1928,24 @@ const message = {
enableFtp: 'FTP',
ftpUser: 'FTP Account',
ftpPassword: 'FTP Password',
+ // ftpHelper:
+ // "When creating a site, simultaneously create a corresponding FTP account for the site, with the FTP directory pointing to the site's directory.",
ftpHelper:
- "When creating a site, simultaneously create a corresponding FTP account for the site, with the FTP directory pointing to the site's directory.",
+ 'After creating a website, a corresponding FTP account will be created and the FTP directory will link to the website directory.',
remark: 'Remark',
group: 'Group',
groupSetting: 'Group Management',
- createGroup: 'Create Group',
+ createGroup: 'Create group',
app: 'Application',
appNew: 'New Application',
- appInstalled: 'Installed Application',
+ appInstalled: 'Installed application',
create: 'Create',
delete: 'Delete Website',
deleteApp: 'Delete Application',
deleteBackup: 'Delete Backup',
domain: 'Domain',
- domainHelper: 'One domain per line, support * and IP address, support domain name: port',
+ // domainHelper: 'One domain per line, support * and IP address, support domain name:port',
+ domainHelper: 'One domain per line.\nSupport wildcard "*" and IP address.\nSupport adding port.',
addDomain: 'Add',
domainConfig: 'Domains',
defaultDoc: 'Document',
@@ -1948,32 +1958,32 @@ const message = {
limitHelper: 'Enable flow control',
other: 'Other',
currentSSL: 'Current Certificate',
- dnsAccount: 'DNS Account',
+ dnsAccount: 'DNS account',
applySSL: 'Certificate Application',
SSLList: 'Certificate List',
- createDnsAccount: 'DNS Account',
+ createDnsAccount: 'DNS account',
aliyun: 'Aliyun',
volcengine: 'Volcengine',
manual: 'Manual parsing',
key: 'Key',
check: 'View',
- acmeAccountManage: 'Acme Account',
+ acmeAccountManage: 'View ACME accounts',
email: 'Email',
- acmeAccount: 'Acme Account',
- provider: 'Verification Method',
+ acmeAccount: 'ACME account',
+ provider: 'Verification method',
dnsManual: 'Manual Resolution',
expireDate: 'Expiry Date',
brand: 'Organization',
deploySSL: 'Deployment',
deploySSLHelper: 'Are you sure to deploy the certificate? ',
ssl: 'Certificate',
- dnsAccountManage: 'DNS Account',
+ dnsAccountManage: 'View DNS provider accounts',
renewSSL: 'Renew',
renewHelper: 'Are you sure to renew the certificate? ',
renewSuccess: 'Renew Certificate',
config: 'Configuration',
enableHTTPS: 'Enable',
- aliasHelper: 'Alias is the folder name of the website directory',
+ aliasHelper: 'Alias is the directory name of the website',
lastBackupAt: 'last backup time',
null: 'none',
nginxConfig: 'Nginx configuration',
@@ -2004,9 +2014,8 @@ const message = {
'Forced deletion will ignore errors generated during the deletion process and eventually delete metadata',
deleteAppHelper: 'Delete associated applications and application backups at the same time',
deleteBackupHelper: 'Also delete website backup',
- deleteConfirmHelper:
- 'The delete operation cannot be rolled back, please enter "{0}" to delete',
- staticPath: 'Corresponding main directory:',
+ deleteConfirmHelper: `The delete operation can't be undone, please enter "{0}" to delete`,
+ staticPath: 'The corresponding main directory is ',
limit: 'Scheme',
blog: 'Forum/Blog',
imageSite: 'Picture Site',
@@ -2060,16 +2069,16 @@ const message = {
ever: 'permanent',
nextYear: 'One year later',
noLog: 'There are currently no logs...',
- defaultServer: 'Default Site',
+ defaultServer: 'Default site',
noDefaultServer: 'Not set',
defaultServerHelper:
'After setting the default site, all unbound domain names and IPs are directed to the default site\n which can effectively prevent malicious analysis',
restoreHelper: 'Are you sure to restore using this backup?',
- websiteDeploymentHelper: 'Create a website using an application deployed from 1Panel',
- websiteStatictHelper: 'Create a website directory on the host',
+ websiteDeploymentHelper: 'Use an installed application or create a new application to create a website.',
+ websiteStatictHelper: 'Create a website directory on the host.',
websiteProxyHelper:
- 'Proxying Existing Service: For example, if there is a Halo service installed and running on the local machine using port 8080, then the proxy address would be http://127.0.0.1:8080',
- runtimeProxyHelper: 'Use runtime created from 1Panel',
+ 'Use reverse proxy to proxy existing service. For example, if a service is installed and running on port 8080, the proxy address will be "http://127.0.0.1:8080".',
+ runtimeProxyHelper: 'Use a website runtime to create a website.',
runtime: 'Runtime',
deleteRuntimeHelper:
'The Runtime application needs to be deleted together with the website, please handle it with caution',
@@ -2126,7 +2135,7 @@ const message = {
disable: 'not enabled',
disableLeechHelper: 'Whether to disable the anti-leech',
disableLeech: 'Disable anti-leech',
- ipv6: 'Listen IPV6',
+ ipv6: 'Listen IPv6',
leechReturnError: 'Please fill in the HTTP status code',
selectAcme: 'Select Acme account',
imported: 'Manually Created',
@@ -2154,9 +2163,9 @@ const message = {
runDirHelper2: 'Please ensure that the secondary running directory is under the index directory',
openrestyHelper:
'OpenResty default HTTP port: {0} HTTPS port: {1}, which may affect website domain name access and HTTPS forced redirect',
- primaryDomainHelper: 'Support domain name: port',
+ primaryDomainHelper: 'Exmaple: example.com or example.com:8080',
acmeAccountType: 'Account Type',
- keyType: 'Key Algorithm',
+ keyType: 'Key algorithm',
tencentCloud: 'Tencent Cloud',
containWarn: 'The domain name contains the main domain, please re-enter',
rewriteHelper2:
@@ -2171,7 +2180,7 @@ const message = {
indexHtml: 'Static website default page',
stopHtml: 'Website stop page',
indexPHP: 'PHP website default page',
- sslExpireDate: 'Certificate Expiry Date',
+ sslExpireDate: 'Certificate Expiration Date',
website404Helper: 'Website 404 error page only supports PHP runtime environment websites and static websites',
sni: 'Origin SNI',
sniHelper:
@@ -2223,10 +2232,10 @@ const message = {
saveAndReload: 'Save and Reload',
clearProxyCache: 'Clear reverse proxy cache',
clearProxyCacheWarn:
- 'Clearing the reverse proxy cache will affect all websites configured with cache and requires restarting OpenResty. Do you want to continue? ',
+ 'All websites that have configured with cache will be affected and "OpenResty" will be restarted. Do you want to continue?',
},
ssl: {
- create: 'Apply',
+ create: 'Request',
provider: 'Type',
manualCreate: 'Manually Created',
acmeAccount: 'Acme Account',
@@ -2241,7 +2250,7 @@ const message = {
startDate: 'Effective Time',
organization: 'issuing organization',
renewConfirm: 'Are you sure you want to apply for a certificate for domain name {0}? ',
- autoRenew: 'Automatic Renewal',
+ autoRenew: 'Automatic renewal',
autoRenewHelper: 'Automatically renew 30 days before expiration',
renewSuccess: 'Renewal successful',
renewWebsite:
@@ -2253,7 +2262,7 @@ const message = {
apply: 'Apply',
applyStart: 'Certificate application starts',
getDnsResolve: 'Getting DNS resolution value, please wait...',
- selfSigned: 'Self-signed certificate',
+ selfSigned: 'View Self-signed certificates',
ca: 'Certification Authority',
commonName: 'Certificate subject name (CN)',
caName: 'Institution name',
@@ -2267,11 +2276,11 @@ const message = {
days: 'validity period',
domainHelper: 'One domain name per line, supports * and IP address',
pushDir: 'Push the certificate to the local directory',
- dir: 'directory',
+ dir: 'Directory',
pushDirHelper:
- 'Two files will be generated in this directory, the certificate file: fullchain.pem and the key file: privkey.pem',
+ 'Certificate file "fullchain.pem" and key file "privkey.pem" will be generated in this directory.',
organizationDetail: 'Organization Details',
- fromWebsite: 'From Websites',
+ fromWebsite: 'From websites',
dnsMauanlHelper:
'In manual resolution mode, you need to click the apply button after creation to obtain the DNS resolution value',
httpHelper: 'HTTP mode requires OpenResty to be installed',
@@ -2280,20 +2289,20 @@ const message = {
googleCloudHelper: 'Google Cloud API is not accessible in most parts of mainland China',
httpHelper2: 'Unable to apply for a generic domain name certificate in HTTP mode',
skipDNSCheck: 'Skip DNS check',
- skipDNSCheckHelper: 'If there is an application timeout problem, please check here, otherwise do not check it',
+ skipDNSCheckHelper: 'Check here only if you encounter a timeout issue during certification request.',
cfHelper: 'Do not use Global API Key',
deprecated: 'will be deprecated',
deprecatedHelper:
'Maintenance has been stopped and may be abandoned in a future version. Please use Tencent Cloud method for analysis',
disableCNAME: 'Disable CNAME',
- disableCNAMEHelper: 'Domain name with CNAME configuration, if the application fails, you can check here',
+ disableCNAMEHelper: 'Check here if the domain name has a CNAME record and the request fails.',
nameserver: 'DNS server',
- nameserverHelper: 'Use a custom DNS server to verify domain names',
+ nameserverHelper: 'Use a custom DNS server to verify domain names.',
edit: 'Edit certificate',
- execShell: 'Execute the script after applying for the certificate',
+ execShell: 'Execute the script after certification request.',
shell: 'Script content',
shellHelper:
- 'The default execution directory of the script is the 1Panel installation directory. If a certificate is pushed, the execution directory is the certificate push directory. The default timeout is 30 minutes',
+ 'The default execution directory of the script is the 1Panel installation directory. If a certificate is pushed into local directory, the execution directory will be the certificate push directory. The default execution timeout is 30 minutes.',
},
firewall: {
create: 'Create Rule',
@@ -2313,7 +2322,7 @@ const message = {
firewall: 'Firewall',
dockerHelper:
'Linux firewall {0} cannot disable Docker port mapping, the application can edit the parameters on the [Installed] page to control whether the port is released',
- quickJump: 'Quick jump',
+ quickJump: 'Go to now',
used: 'Used',
unUsed: 'Unused',
firewallHelper: '{0} System firewall',
diff --git a/frontend/src/lang/modules/tw.ts b/frontend/src/lang/modules/tw.ts
index b0726afbe..db94cf225 100644
--- a/frontend/src/lang/modules/tw.ts
+++ b/frontend/src/lang/modules/tw.ts
@@ -9,8 +9,8 @@ const message = {
commons: {
true: '是',
false: '否',
- example: '例:',
- fit2cloud: '飛致雲',
+ example: '例如:',
+ fit2cloud: '飞致云',
button: {
create: '創建',
add: '添加',
diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts
index 2eeda99ac..041ec8ac2 100644
--- a/frontend/src/lang/modules/zh.ts
+++ b/frontend/src/lang/modules/zh.ts
@@ -1792,7 +1792,7 @@ const message = {
deleteApp: '删除应用',
deleteBackup: '删除备份',
domain: '域名',
- domainHelper: '一行一个域名,支持*和IP地址,支持域名:端口',
+ domainHelper: '一行一个域名,支持*和IP地址,支持"域名:端口"',
addDomain: '新增域名',
domainConfig: '域名设置',
defaultDoc: '默认文档',
@@ -1916,7 +1916,7 @@ const message = {
websiteDeploymentHelper: '使用从 1Panel 部署的应用创建网站',
websiteStatictHelper: '在主机上创建网站目录',
websiteProxyHelper:
- '代理已有服务,例如本机已安装使用 8080 端口的 halo 服务,那么代理地址为 http://127.0.0.1:8080',
+ '代理已有服务。例如本机已安装使用 8080 端口的 halo 服务,那么代理地址为 http://127.0.0.1:8080',
restoreHelper: '确认使用此备份恢复?',
wafValueHelper: '值',
wafRemarkHelper: '描述',
diff --git a/frontend/src/views/app-store/detail/install/index.vue b/frontend/src/views/app-store/detail/install/index.vue
index 847b2bef2..e3f7d3f7c 100644
--- a/frontend/src/views/app-store/detail/install/index.vue
+++ b/frontend/src/views/app-store/detail/install/index.vue
@@ -16,7 +16,7 @@
:title="$t('app.appInstallWarn')"
class="common-prompt"
:closable="false"
- type="error"
+ type="warning"
v-if="!isHostMode"
/>
{{ $t('app.cpuCore') }}
- {{ $t('container.limitHelper') }}
+ {{ $t('container.limitHelper', [99999]) }}
@@ -265,7 +265,7 @@
- {{ $t('container.limitHelper') }}
+ {{ $t('container.limitHelper', ['9999999999']) }}