From 90cf1f1702020933ed902103604ef6df377329e4 Mon Sep 17 00:00:00 2001 From: chenxudong2020 <872603935@qq.com> Date: Thu, 18 May 2023 11:23:42 +0800 Subject: [PATCH] =?UTF-8?q?add=201.=E5=A4=8D=E5=88=B6=E8=AF=81=E4=B9=A6ful?= =?UTF-8?q?lchain=E6=94=B9=E5=90=8D=20=E5=9F=9F=E5=90=8D.crt=202.renew?= =?UTF-8?q?=E5=9F=9F=E5=90=8D=E8=AF=81=E4=B9=A6=E6=88=90=E5=8A=9F=20?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E4=B8=BB=E7=9B=AE=E5=BD=95=E4=B8=8B=E7=9A=84?= =?UTF-8?q?reload.sh=E8=87=AA=E5=AE=9A=E4=B9=89shell=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/adminPage/CertController.java | 4 +++ .../controller/adminPage/ConfController.java | 34 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/src/main/java/com/cym/controller/adminPage/CertController.java b/src/main/java/com/cym/controller/adminPage/CertController.java index 0e81f952..ab37d975 100644 --- a/src/main/java/com/cym/controller/adminPage/CertController.java +++ b/src/main/java/com/cym/controller/adminPage/CertController.java @@ -221,10 +221,14 @@ public class CertController extends BaseController { cert.setMakeTime(System.currentTimeMillis()); sqlHelper.updateById(cert); + //复制fullchain.cer改为域名.crt 如果存在强制覆盖 + confController.cpCert(certDir,domain); // 续签,重载nginx使证书生效 if (type.equals("renew")) { confController.reload(null, null, null); + //证书续签成功执行目录下reload.sh脚本 + confController.reloadSH(certDir,domain); } isInApply = false; diff --git a/src/main/java/com/cym/controller/adminPage/ConfController.java b/src/main/java/com/cym/controller/adminPage/ConfController.java index fb1510c9..153ee658 100644 --- a/src/main/java/com/cym/controller/adminPage/ConfController.java +++ b/src/main/java/com/cym/controller/adminPage/ConfController.java @@ -276,6 +276,40 @@ public class ConfController extends BaseController { return renderSuccess(); } + + + @Mapping(value = "cpCert") + public synchronized void cpCert(String certDir,String domain) { + try { + String cer=certDir + "fullchain.cer"; + String cpCmd="cp -rf "+cer+" "+certDir+domain+ ".crt"; + String cp = RuntimeUtil.execForStr(cpCmd); + + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + + } + + @Mapping(value = "reloadSH") + public synchronized void reloadSH(String certDir,String domain) { + logger.info("start running reload.sh"); + try { + String reload=homeConfig.home+"reload.sh"; + File reloadFile=new File(reload); + if(reloadFile.exists()){ + cpCert(certDir,domain); + String cmd="sh "+reload; + String rs = RuntimeUtil.execForStr(cmd); + logger.info(rs); + } + + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + + } + @Mapping(value = "reload") public synchronized JsonResult reload(String nginxPath, String nginxExe, String nginxDir) { if (nginxPath == null) { -- Gitee