From d1f8cf9a8e68e4dd2767a7d6708b0f6ce3ff1fb3 Mon Sep 17 00:00:00 2001 From: Mr Chen Date: Sun, 24 Nov 2024 17:42:40 +0800 Subject: [PATCH] update --- web/admin/site/proxy.py | 10 ++++++++++ web/utils/site.py | 17 ++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/web/admin/site/proxy.py b/web/admin/site/proxy.py index 55e267693..b4de66b52 100644 --- a/web/admin/site/proxy.py +++ b/web/admin/site/proxy.py @@ -47,6 +47,16 @@ def set_proxy(): pid = request.form.get('id', '') return MwSites.instance().setProxy(site_name,site_from,to,host,name,open_proxy, open_cache,cache_time, pid) +# 获取代理状态 +@blueprint.route('/set_proxy_status', endpoint='set_proxy_status', methods=['POST']) +@panel_login_required +def set_proxy_status(): + site_name = request.form.get("siteName", '') + status = request.form.get("status", '') + proxy_id = request.form.get("id", '') + return MwSites.instance().setProxyStatus(site_name,proxy_id,status) + + # 获取代理配置 @blueprint.route('/get_proxy_conf', endpoint='get_proxy_conf', methods=['POST']) @panel_login_required diff --git a/web/utils/site.py b/web/utils/site.py index 9efb8d2fb..e7c0f8e36 100644 --- a/web/utils/site.py +++ b/web/utils/site.py @@ -1291,7 +1291,7 @@ class sites(object): mw.writeFile(vhost_file, content) # 设置 网站 反向代理列表 - def setProxy(self, site_name, site_from, to, host, name, open_proxy, open_cache, cache_time, pid): + def setProxy(self, site_name, site_from, to, host, name, open_proxy, open_cache, cache_time, site_id): from urllib.parse import urlparse if site_name == "" or site_from == "" or to == "" or host == "" or name == "": return mw.returnData(False, "必填项不能为空") @@ -1433,6 +1433,21 @@ location ^~ {from} {\n\ mw.restartWeb() return mw.returnData(True, "ok", {"hash": pid}) + def setProxyStatus(self, site_name, proxy_id, status): + if status == '' or site_name == '' or proxy_id == '': + return mw.returnData(False, "必填项不能为空!") + + conf_file = "{}/{}/{}.conf".format(self.proxyPath, site_name, proxy_id) + conf_txt = "{}/{}/{}.conf.txt".format(self.proxyPath, site_name, proxy_id) + + if _status == '1': + mw.execShell('mv ' + conf_txt + ' ' + conf_file) + else: + mw.execShell('mv ' + conf_file + ' ' + conf_txt) + + mw.restartWeb() + return mw.returnData(True, "OK") + def getProxyConf(self, site_name, pid): if pid == '' or site_name == '': return mw.returnData(False, "必填项不能为空!")