From 46716c0374b0ca3324d53bb0d4ed2a468533ccbf Mon Sep 17 00:00:00 2001 From: midoks Date: Sat, 2 Mar 2019 23:32:11 +0800 Subject: [PATCH] =?UTF-8?q?ssl=E5=8A=9F=E8=83=BD90%?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- class/core/site_api.py | 39 ++++++++++++++++++++++++++++++++++----- route/static/app/site.js | 8 ++++---- 2 files changed, 38 insertions(+), 9 deletions(-) diff --git a/class/core/site_api.py b/class/core/site_api.py index 87310e679..cf4e24fab 100755 --- a/class/core/site_api.py +++ b/class/core/site_api.py @@ -403,9 +403,9 @@ class site_api: 'rm -rf /etc/letsencrypt/archive/' + siteName + '-00*') public.execShell( 'rm -f /etc/letsencrypt/renewal/' + siteName + '.conf') - public.execShell('rm -f /etc/letsencrypt/renewal/' + + public.execShell('rm -rf /etc/letsencrypt/renewal/' + siteName + '-00*.conf') - public.execShell('rm -f ' + path + '/README') + public.execShell('rm -rf ' + path + '/README') public.execShell('mkdir -p ' + path) public.writeFile(keypath, key) @@ -424,9 +424,38 @@ class site_api: return public.returnJson(False, 'ERROR:
' + isError.replace("\n", '
') + '
') public.restartWeb() - public.writeLog('TYPE_SITE', '证书已保存!') + public.writeLog('网站管理', '证书已保存!') return public.returnJson(True, '证书已保存!') + def setCertToSiteApi(self): + certName = request.form.get('certName', '').encode('utf-8') + siteName = request.form.get('siteName', '').encode('utf-8') + try: + path = self.sslDir + siteName + if not os.path.exists(path): + return public.returnJson(False, '证书不存在!') + + result = self.setSslConf(siteName) + if not result['status']: + return public.getJson(result) + + public.restartWeb() + public.writeLog('网站管理', '证书已部署!') + return public.returnJson(True, '证书已部署!') + except Exception as ex: + return public.returnJson(False, '设置错误,' + str(ex)) + + def removeCertApi(self): + certName = request.form.get('certName', '').encode('utf-8') + try: + path = self.sslDir + certName + if not os.path.exists(path): + return public.returnJson(False, '证书已不存在!') + os.system("rm -rf " + path) + return public.returnJson(True, '证书已删除!') + except: + return public.returnJson(False, '删除失败!') + def closeSslConfApi(self): siteName = request.form.get('siteName', '').encode('utf-8') @@ -633,11 +662,11 @@ class site_api: if conf.find('ssl_certificate') == -1: return public.returnJson(False, '当前未开启SSL') to = """#error_page 404/404.html; - #HTTP_TO_HTTPS_START + # HTTP_TO_HTTPS_START if ($server_port !~ 443){ rewrite ^(/.*)$ https://$host$1 permanent; } - #HTTP_TO_HTTPS_END""" + # HTTP_TO_HTTPS_END""" conf = conf.replace('#error_page 404/404.html;', to) public.writeFile(file, conf) diff --git a/route/static/app/site.js b/route/static/app/site.js index 2cc22b214..089c9a173 100755 --- a/route/static/app/site.js +++ b/route/static/app/site.js @@ -1497,21 +1497,21 @@ function sslAdmin(siteName){ function removeSsl(certName){ safeMessage('删除证书','您真的要从证书夹删除证书吗?',function(){ var loadT = layer.msg(lan.site.the_msg,{icon:16,time:0,shade: [0.3, '#000']}); - $.post('/ssl?action=RemoveCert',{certName:certName},function(rdata){ + $.post('/site/remove_cert',{certName:certName},function(rdata){ layer.close(loadT); layer.msg(rdata.msg,{icon:rdata.status?1:2}); $("#ssl_admin").click(); - }); + },'json'); }); } //从证书夹部署 function setCertSsl(certName,siteName){ var loadT = layer.msg('正在部署证书...',{icon:16,time:0,shade: [0.3, '#000']}); - $.post('/ssl?action=SetCertToSite',{certName:certName,siteName:siteName},function(rdata){ + $.post('/site/set_cert_to_site',{certName:certName,siteName:siteName},function(rdata){ layer.close(loadT); layer.msg(rdata.msg,{icon:rdata.status?1:2}); - }); + },'json'); } //ssl