From 196f7d9dc23d7dd96b663c686542e85270b81aef Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Thu, 28 Nov 2024 16:05:52 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=E4=B8=83=E7=89=9B?= =?UTF-8?q?=E4=BA=91cdn=E9=83=A8=E7=BD=B2=EF=BC=8C=E4=BF=9D=E6=8C=81http2?= =?UTF-8?q?=E5=92=8CforceHttp=E8=AE=BE=E7=BD=AE=EF=BC=8C=E5=BD=93=E6=9C=AA?= =?UTF-8?q?=E5=BC=80=E5=90=AFhttps=E6=97=B6=EF=BC=8C=E4=B8=BB=E5=8A=A8?= =?UTF-8?q?=E5=BC=80=E5=90=AFhttps?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/deploy-to-cdn/index.ts | 33 ++++++++++++++----- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/packages/ui/certd-server/src/plugins/plugin-qiniu/plugin/deploy-to-cdn/index.ts b/packages/ui/certd-server/src/plugins/plugin-qiniu/plugin/deploy-to-cdn/index.ts index 97f655aac..e16a8f221 100644 --- a/packages/ui/certd-server/src/plugins/plugin-qiniu/plugin/deploy-to-cdn/index.ts +++ b/packages/ui/certd-server/src/plugins/plugin-qiniu/plugin/deploy-to-cdn/index.ts @@ -72,14 +72,31 @@ export class QiniuDeployCertToCDN extends AbstractTaskPlugin { const domains: string[] = typeof this.domainName === 'string' ? [this.domainName] : this.domainName; for (const domain of domains) { - //开始修改证书 - this.logger.info(`开始修改证书,certId:${certId},domain:${domain}`); - const body = { - certID: certId, - }; - const url = `https://api.qiniu.com/domain/${domain}/httpsconf`; - await qiniuClient.doRequest(url, 'put', body); - this.logger.info(`修改证书成功,certId:${certId},domain:${domain}`); + //获取域名详情 + const getUrl = `https://api.qiniu.com/domain/${domain}`; + const res = await qiniuClient.doRequest(getUrl, 'get'); + this.logger.info(`域名https详情:${JSON.stringify(res.https)}`); + if (!res.https.certId) { + this.logger.info('未开启https,即将开启https,并设置证书'); + //未开启https + const body = { + certId: certId, + }; + const url = `https://api.qiniu.com/domain/${domain}/sslize`; + await qiniuClient.doRequest(url, 'put', body); + this.logger.info(`开启https并设置证书成功,certId:${certId},domain:${domain}`); + } else { + //开始修改证书 + this.logger.info(`开始修改证书,certId:${certId},domain:${domain}`); + const body = { + certID: certId, + forceHttps: res.https.forceHttps, + http2Enable: res.https.http2Enable, + }; + const url = `https://api.qiniu.com/domain/${domain}/httpsconf`; + await qiniuClient.doRequest(url, 'put', body); + this.logger.info(`修改证书成功,certId:${certId},domain:${domain}`); + } } this.logger.info('部署完成');