From 35d8c2a6f3c1fac971ae27fbc6970c95ee853bdc Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Thu, 14 Jul 2022 09:48:13 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9B=86=E7=BE=A4DNS=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=85=81=E8=AE=B8=E9=80=9A=E8=BF=87CNAME?= =?UTF-8?q?=E8=AE=BF=E9=97=AE=E7=BD=91=E7=AB=99=E6=9C=8D=E5=8A=A1=E9=80=89?= =?UTF-8?q?=E9=A1=B9/=E9=9B=86=E7=BE=A4DNS=E8=AE=BE=E7=BD=AE=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E8=AE=BE=E7=BD=AE=E4=B8=8D=E4=BD=BF=E7=94=A8=E4=B8=BB?= =?UTF-8?q?=E5=9F=9F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../clusters/cluster/settings/dns/index.go | 19 +++++++++++++------ .../clusters/cluster/settings/dns/index.html | 14 ++++++++++++++ .../clusters/cluster/settings/dns/index.js | 1 + 3 files changed, 28 insertions(+), 6 deletions(-) diff --git a/internal/web/actions/default/clusters/cluster/settings/dns/index.go b/internal/web/actions/default/clusters/cluster/settings/dns/index.go index 951eeac9..a4e84c94 100644 --- a/internal/web/actions/default/clusters/cluster/settings/dns/index.go +++ b/internal/web/actions/default/clusters/cluster/settings/dns/index.go @@ -52,6 +52,7 @@ func (this *IndexAction) RunGet(params struct { this.Data["cnameRecords"] = dnsInfoResp.CnameRecords } this.Data["ttl"] = dnsInfoResp.Ttl + this.Data["cnameAsDomain"] = dnsInfoResp.CnameAsDomain this.Show() } @@ -65,6 +66,9 @@ func (this *IndexAction) RunPost(params struct { ServersAutoSync bool CnameRecords []string Ttl int32 + CnameAsDomain bool + + ConfirmResetDomain bool // 是否确认重置域名 Must *actions.Must CSRF *actionutils.CSRF @@ -72,13 +76,15 @@ func (this *IndexAction) RunPost(params struct { // 创建日志 defer this.CreateLog(oplogs.LevelInfo, "修改集群 %d DNS设置", params.ClusterId) - if params.DnsDomainId <= 0 { - this.Fail("请选择集群的主域名") - } + if !params.ConfirmResetDomain { + if params.DnsDomainId <= 0 { + this.Fail("请选择集群的主域名") + } - params.Must. - Field("dnsName", params.DnsName). - Require("请输入DNS子域名") + params.Must. + Field("dnsName", params.DnsName). + Require("请输入DNS子域名") + } // 检查DNS名称 if len(params.DnsName) > 0 { @@ -108,6 +114,7 @@ func (this *IndexAction) RunPost(params struct { ServersAutoSync: params.ServersAutoSync, CnameRecords: params.CnameRecords, Ttl: params.Ttl, + CnameAsDomain: params.CnameAsDomain, }) if err != nil { this.ErrorPage(err) diff --git a/web/views/@default/clusters/cluster/settings/dns/index.html b/web/views/@default/clusters/cluster/settings/dns/index.html index bfa6d297..52182a18 100644 --- a/web/views/@default/clusters/cluster/settings/dns/index.html +++ b/web/views/@default/clusters/cluster/settings/dns/index.html @@ -16,6 +16,13 @@

用于生成集群节点和网站服务的DNS解析记录,修改后将自动删除旧域名中的相关记录

+ + 不使用主域名 + + +

选中后,表示确认当前集群不使用主域名;否则必须选择一个主域名。

+ + DNS子域名 * @@ -47,6 +54,13 @@

每个DNS服务商或者账号的TTL限制各有不同,请注意取值范围。0表示使用默认。

+ + + 允许通过CNAME访问网站服务 + + +

选中后,表示允许使用CNAME直接访问网站服务;如果取消选中,则表示CNAME只作为DNS解析记录使用。

+ 是否同步节点DNS状态 diff --git a/web/views/@default/clusters/cluster/settings/dns/index.js b/web/views/@default/clusters/cluster/settings/dns/index.js index 3efea6fa..d0166817 100644 --- a/web/views/@default/clusters/cluster/settings/dns/index.js +++ b/web/views/@default/clusters/cluster/settings/dns/index.js @@ -2,6 +2,7 @@ Tea.context(function () { this.success = NotifyReloadSuccess("保存成功") this.domain = {id: this.domainId, name: this.domainName} + this.oldDomain = {id: this.domainId, name: this.domainName} this.changeDomain = function (domain) { this.domain.id = domain.id this.domain.name = domain.name