mdserver-web/setting.py

96 lines
2.8 KiB
Python
Raw Normal View History

2018-12-20 08:45:09 -05:00
# coding:utf-8
2022-11-14 03:36:39 -05:00
# ---------------------------------------------------------------------------------
# MW-Linux面板
# ---------------------------------------------------------------------------------
# copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
# ---------------------------------------------------------------------------------
# Author: midoks <midoks@163.com>
# ---------------------------------------------------------------------------------
# ---------------------------------------------------------------------------------
# 配置文件
# ---------------------------------------------------------------------------------
2019-02-18 07:05:30 -05:00
2018-12-12 05:06:02 -05:00
import time
import sys
2022-10-01 04:41:55 -04:00
import random
2019-02-18 07:05:30 -05:00
import os
2022-10-01 04:41:55 -04:00
2022-11-14 08:21:54 -05:00
pwd = os.getcwd()
sys.path.append(pwd + '/class/core')
2021-09-11 00:12:54 -04:00
2020-07-10 03:57:25 -04:00
import mw
2021-09-11 00:12:54 -04:00
2022-06-10 12:21:20 -04:00
# cmd = 'ls /usr/local/lib/ | grep python | cut -d \\ -f 1 | awk \'END {print}\''
# info = mw.execShell(cmd)
# p = "/usr/local/lib/" + info[0].strip() + "/site-packages"
# p_debain = "/usr/local/lib/" + info[0].strip() + "/dist-packages"
2022-06-10 12:14:36 -04:00
2022-06-10 12:21:20 -04:00
# sys.path.append(p)
# sys.path.append(p_debain)
2021-09-11 00:12:54 -04:00
2018-12-12 12:09:38 -05:00
import system_api
2019-07-31 09:42:29 -04:00
cpu_info = system_api.system_api().getCpuInfo()
workers = cpu_info[1]
2019-02-18 11:01:30 -05:00
2018-12-12 12:09:38 -05:00
2022-10-01 04:56:18 -04:00
log_dir = os.getcwd() + '/logs'
if not os.path.exists(log_dir):
os.mkdir(log_dir)
2018-12-12 05:06:02 -05:00
2022-06-13 04:33:33 -04:00
# default port
2022-06-13 06:10:16 -04:00
mw_port = "7200"
2022-06-13 04:33:33 -04:00
if os.path.exists("data/port.pl"):
mw_port = mw.readFile('data/port.pl')
2019-02-19 01:10:06 -05:00
mw_port.strip()
2022-06-13 05:16:21 -04:00
else:
2022-10-01 04:41:55 -04:00
import firewall_api
2022-10-01 05:58:51 -04:00
import common
common.initDB()
2022-10-01 04:41:55 -04:00
mw_port = str(random.randint(10000, 65530))
2022-10-01 05:58:51 -04:00
firewall_api.firewall_api().addAcceptPortArgs(mw_port, 'WEB面板', 'port')
2022-06-13 05:16:21 -04:00
mw.writeFile('data/port.pl', mw_port)
2022-06-13 04:33:33 -04:00
2019-02-19 01:10:06 -05:00
bind = []
if os.path.exists('data/ipv6.pl'):
bind.append('[0:0:0:0:0:0:0:0]:%s' % mw_port)
else:
bind.append('0.0.0.0:%s' % mw_port)
2019-02-18 11:01:30 -05:00
2024-05-26 01:52:07 -04:00
ssl_choose_file = 'ssl/choose.pl'
if os.path.exists(ssl_choose_file):
ssl_choose = mw.readFile(ssl_choose_file).strip()
if mw.inArray(['local','nginx'],ssl_choose):
2024-05-27 02:57:55 -04:00
tmp_cert = 'ssl/'+ssl_choose+'/cert.pem'
tmp_private = 'ssl/'+ssl_choose+'/private.pem'
if os.path.exists(tmp_cert) and os.path.exists(tmp_private):
certfile = tmp_cert
keyfile = tmp_private
ciphers = 'TLSv1 TLSv1.1 TLSv1.2 TLSv1.3'
ssl_version = 2
2022-11-04 09:02:47 -04:00
# 初始安装时,自动生成安全路径
if not os.path.exists('data/admin_path.pl'):
admin_path = mw.getRandomString(8)
2022-11-04 12:36:39 -04:00
mw.writeFile('data/admin_path.pl', '/' + admin_path.lower())
2022-11-04 09:02:47 -04:00
2019-07-31 09:42:29 -04:00
if workers > 2:
2022-11-14 06:30:48 -05:00
workers = 1
2019-07-31 09:42:29 -04:00
2019-07-31 09:42:52 -04:00
threads = workers * 1
2018-12-12 05:06:02 -05:00
backlog = 512
2019-02-18 11:01:30 -05:00
reload = False
2018-12-12 12:14:25 -05:00
daemon = True
2021-11-08 05:31:00 -05:00
worker_class = 'geventwebsocket.gunicorn.workers.GeventWebSocketWorker'
2018-12-12 05:06:02 -05:00
timeout = 7200
2019-02-18 11:01:30 -05:00
keepalive = 60
preload_app = True
2018-12-12 05:45:33 -05:00
capture_output = True
access_log_format = '%(t)s %(p)s %(h)s "%(r)s" %(s)s %(L)s %(b)s %(f)s" "%(a)s"'
loglevel = 'info'
2022-10-01 04:56:18 -04:00
errorlog = log_dir + '/error.log'
accesslog = log_dir + '/access.log'
pidfile = log_dir + '/mw.pid'