├── .github
├── FUNDING.yml
├── ISSUE_TEMPLATE
│ ├── ISSUE_TEMPLATE_1.md
│ ├── ISSUE_TEMPLATE_2.md
│ ├── bug_report.yml
│ ├── config.yaml
│ ├── documentation.yml
│ └── feature_request.yml
├── pull_request_template.md
└── workflows
│ ├── python-app-mysql55.yml
│ ├── python-app-mysql56.yml
│ ├── python-app-mysql57.yml
│ ├── python-app-mysql80.yml
│ ├── python-app-op.yml
│ ├── python-app-php.yml
│ └── sync2gitee.yml
├── .gitignore
├── LICENSE
├── README.md
├── clear.sh
├── cli.sh
├── cmd.md
├── compatibility.md
├── data
└── README.md
├── docker
├── Dockerfile
├── start.service
└── start.sh
├── logs
└── README.md
├── panel_task.py
├── panel_tools.py
├── plugins
├── acme_pandominassl_apply
│ ├── conf
│ │ └── acme.sql
│ ├── hooks
│ │ ├── goedge.py
│ │ └── init.py
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── common.js
│ └── tool_cron.py
├── alist
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── alist.service.tpl
│ │ └── alist.tpl
│ ├── install.sh
│ └── js
│ │ └── alist.js
├── backup_ftp
│ ├── class
│ │ └── ftp_client.py
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── js
│ │ └── backup_ftp.js
├── clean
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── tool_task.py
├── cloudreve
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── cloudreve.service.tpl
│ │ └── cloudreve.tpl
│ ├── install.sh
│ └── js
│ │ └── cloudreve.js
├── cryptocurrency_trade
│ ├── README.md
│ ├── ccxt
│ │ ├── public_data
│ │ │ ├── data.py
│ │ │ ├── data.sh
│ │ │ └── demo.py
│ │ ├── strategy
│ │ │ ├── abs.py
│ │ │ ├── common.py
│ │ │ ├── func_test.py
│ │ │ ├── gate_100.py
│ │ │ ├── hammer_robot.py
│ │ │ ├── info.json
│ │ │ ├── macd_kdj.py
│ │ │ ├── momentun_trade.py
│ │ │ ├── notify_demo.py
│ │ │ ├── on_g_test.py
│ │ │ ├── online_macd_trade.py
│ │ │ ├── online_test.py
│ │ │ ├── rsi_robot.py
│ │ │ └── vega_trade.py
│ │ └── test
│ │ │ ├── p1.py
│ │ │ ├── p2.py
│ │ │ └── p_test.py
│ ├── conf
│ │ ├── create.sql
│ │ ├── order.sql
│ │ ├── sup_strategy.tpl
│ │ └── sup_task.tpl
│ ├── cryptocurrency_trade.py
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── static
│ │ ├── css
│ │ ├── cryptocurrency_trade.css
│ │ └── ico.css
│ │ ├── html
│ │ └── index.html
│ │ └── js
│ │ └── cryptocurrency_trade.js
├── data_query
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── nosql_memcached.py
│ ├── nosql_mongodb.py
│ ├── nosql_redis.py
│ ├── sql_mysql.py
│ └── static
│ │ ├── css
│ │ ├── data.css
│ │ └── ico.css
│ │ ├── html
│ │ └── index.html
│ │ └── js
│ │ └── app.js
├── docker
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── js
│ │ └── docker.js
├── dynamic-tracking
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── shell
│ │ ├── simple_macosx_trace.sh
│ │ └── simple_trace.sh
│ ├── static
│ │ ├── css
│ │ │ ├── dynamic-tracking.css
│ │ │ └── ico.css
│ │ ├── html
│ │ │ └── index.html
│ │ └── js
│ │ │ └── dynamic-tracking.js
│ ├── toolkit
│ │ └── readme.md
│ └── versions
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── macos.sh
│ │ └── ubuntu.sh
├── dztasks
│ ├── LICENSE
│ ├── README.md
│ ├── config
│ │ └── dztasks.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── dztasks.service.tpl
│ │ └── dztasks.tpl
│ ├── install.sh
│ └── js
│ │ └── dztasks.js
├── fail2ban
│ ├── conf
│ │ └── fail2ban.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ └── fail2ban.service.tpl
│ ├── install.sh
│ ├── js
│ │ └── fail2ban.js
│ └── tpl
│ │ ├── fail2ban.conf
│ │ ├── fail2ban.d
│ │ └── default.conf
│ │ ├── fail2ban.note.conf
│ │ └── jail.d
│ │ ├── default.conf
│ │ └── sshd.conf
├── gdrive
│ ├── class
│ │ └── gdriveclient.py
│ ├── credentials.json
│ ├── credentials_bak.json
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── gdrive.js
│ └── t
│ │ └── test.py
├── gitea
│ ├── hook
│ │ ├── commit.tpl
│ │ ├── commit.tpl.ssh
│ │ ├── post-receive.tpl
│ │ └── self_hook.tpl
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── gitea.service.tpl
│ │ └── gitea.tpl
│ ├── install.sh
│ └── js
│ │ └── gitea.js
├── gogs
│ ├── conf
│ │ └── app.ini
│ ├── hook
│ │ ├── commit.tpl
│ │ ├── commit.tpl.ssh
│ │ ├── post-receive.tpl
│ │ └── self_hook.tpl
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── gogs.service.bak.tpl
│ │ ├── gogs.service.tpl
│ │ └── gogs.tpl
│ ├── install.sh
│ └── js
│ │ └── gogs.js
├── gorse
│ ├── LICENSE
│ ├── README.md
│ ├── config
│ │ └── gorse.toml
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── gorse.service.tpl
│ │ └── gorse.tpl
│ ├── install.sh
│ ├── js
│ │ └── gorse.js
│ └── tpl
│ │ └── gorse.toml
├── haproxy
│ ├── conf
│ │ └── haproxy.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── haproxy.service.tpl
│ │ └── haproxy.tpl
│ ├── install.sh
│ ├── js
│ │ └── haproxy.js
│ ├── tpl
│ │ └── default.tpl
│ └── versions
│ │ └── 2.6
│ │ └── install.sh
├── imail
│ ├── LICENSE
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── imail.service.tpl
│ │ └── imail.tpl
│ ├── install.sh
│ ├── js
│ │ └── imail.js
│ └── versions
│ │ └── 0.0.19
│ │ └── install.sh
├── keepalived
│ ├── config
│ │ └── keepalived.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── keepalived.service.tpl
│ │ └── keepalived.tpl
│ ├── install.sh
│ ├── js
│ │ └── keepalived.js
│ ├── scripts
│ │ ├── chk.sh
│ │ └── chk_mysql.sh
│ └── tpl
│ │ ├── keepalived.lvs.nat.master.conf
│ │ ├── keepalived.mysql.backup.conf
│ │ ├── keepalived.mysql.master.conf
│ │ └── keepalived.mysql.note.conf
├── lam
│ ├── conf
│ │ ├── config.cfg
│ │ └── lam.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── js
│ │ └── lam.js
├── ldap
│ ├── config
│ │ └── ldap.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── install_debian.sh
│ └── js
│ │ └── ldap.js
├── lvs
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── lvs.js
│ └── readme.md
├── mariadb
│ ├── conf
│ │ ├── classic.cnf
│ │ ├── gtid.cnf
│ │ ├── mariadb.sql
│ │ └── my.cnf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── index_mariadb.py
│ ├── info.json
│ ├── init.d
│ │ ├── mariadb.service.tpl
│ │ └── mariadb.tpl
│ ├── install.sh
│ ├── js
│ │ └── mariadb.js
│ ├── scripts
│ │ ├── backup.py
│ │ ├── test.py
│ │ └── tools.py
│ └── versions
│ │ ├── 10.11
│ │ └── install.sh
│ │ ├── 10.6
│ │ └── install.sh
│ │ ├── 10.7
│ │ └── install.sh
│ │ ├── 10.8
│ │ └── install.sh
│ │ ├── 10.9
│ │ └── install.sh
│ │ ├── 11.0
│ │ └── install.sh
│ │ ├── 11.1
│ │ └── install.sh
│ │ ├── 11.2
│ │ └── install.sh
│ │ ├── 11.3
│ │ └── install.sh
│ │ ├── 11.4
│ │ └── install.sh
│ │ ├── 11.5
│ │ └── install.sh
│ │ ├── 11.6
│ │ └── install.sh
│ │ └── 11.7
│ │ └── install.sh
├── memcached
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── memcached.service.tpl
│ │ └── memcached.tpl
│ ├── install.sh
│ └── js
│ │ └── mem.js
├── migration_api
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── js
│ │ └── app.js
├── mongodb
│ ├── config
│ │ ├── mongodb.bak.conf
│ │ ├── mongodb.conf
│ │ └── mongodb.sql
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── mongodb.service.tpl
│ │ └── mongodb.tpl
│ ├── install.bk1.sh
│ ├── install.bk2.sh
│ ├── install.sh
│ ├── js
│ │ └── mongodb.js
│ ├── scripts
│ │ └── backup.py
│ └── versions
│ │ ├── 4.4
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── macos.sh
│ │ ├── opensuse.sh
│ │ ├── rhel.sh
│ │ └── ubuntu.sh
│ │ ├── 5.0
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── macos.sh
│ │ ├── opensuse.sh
│ │ └── ubuntu.sh
│ │ ├── 6.0
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── macos.sh
│ │ ├── opensuse.sh
│ │ └── ubuntu.sh
│ │ ├── 7.0
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── euler.sh
│ │ ├── macos.sh
│ │ ├── opensuse.sh
│ │ └── ubuntu.sh
│ │ └── 8.0
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── euler.sh
│ │ ├── macos.sh
│ │ ├── opensuse.sh
│ │ └── ubuntu.sh
├── mosquitto
│ ├── config
│ │ └── mosquitto.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── mosquitto.service.tpl
│ │ └── mosquitto.tpl
│ ├── install.sh
│ └── js
│ │ └── mosquitto.js
├── msonedrive
│ ├── class
│ │ └── msodclient.py
│ ├── credentials.json
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── msonedrive.js
│ └── t
│ │ └── test.py
├── mtproxy
│ ├── conf
│ │ └── mt.toml
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ └── mtproxy.service.tpl
│ ├── install.sh
│ └── js
│ │ └── mtproxy.js
├── mysql-community
│ ├── conf
│ │ ├── classic.cnf
│ │ ├── gtid.cnf
│ │ ├── my5.7.cnf
│ │ ├── my8.0.cnf
│ │ ├── my8.2.cnf
│ │ ├── my8.3.cnf
│ │ ├── my8.4.cnf
│ │ ├── my9.0.cnf
│ │ ├── my9.1.cnf
│ │ ├── my9.2.cnf
│ │ └── mysql.sql
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── index_mysql_community.py
│ ├── info.json
│ ├── init.d
│ │ ├── mysql5.7.service.tpl
│ │ ├── mysql8.0.service.tpl
│ │ ├── mysql8.1.service.tpl
│ │ ├── mysql8.2.service.tpl
│ │ ├── mysql8.3.service.tpl
│ │ ├── mysql8.4.service.tpl
│ │ ├── mysql9.0.service.tpl
│ │ ├── mysql9.1.service.tpl
│ │ └── mysql9.2.service.tpl
│ ├── install.sh
│ ├── js
│ │ └── mysql-community.js
│ ├── scripts
│ │ └── backup.py
│ └── versions
│ │ ├── 5.7
│ │ └── install_generic.sh
│ │ ├── 8.0
│ │ └── install_generic.sh
│ │ ├── 8.2
│ │ └── install_generic.sh
│ │ ├── 8.3
│ │ └── install_generic.sh
│ │ ├── 8.4
│ │ └── install_generic.sh
│ │ ├── 9.0
│ │ └── install_generic.sh
│ │ ├── 9.1
│ │ └── install_generic.sh
│ │ └── 9.2
│ │ └── install_generic.sh
├── mysql
│ ├── README.md
│ ├── bak
│ │ └── orm.py
│ ├── conf
│ │ ├── classic.cnf
│ │ ├── gtid.cnf
│ │ ├── my5.5.cnf
│ │ ├── my5.6.cnf
│ │ ├── my5.7.cnf
│ │ ├── my8.0.cnf
│ │ ├── my8.2.cnf
│ │ ├── my8.3.cnf
│ │ ├── my8.4.cnf
│ │ ├── my9.0.cnf
│ │ ├── my9.1.cnf
│ │ ├── my9.2.cnf
│ │ └── mysql.sql
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── index_mysql.py
│ ├── info.json
│ ├── init.d
│ │ ├── mysql.service.tpl
│ │ ├── mysql.tpl
│ │ └── mysql8.0.tpl
│ ├── install.sh
│ ├── js
│ │ └── mysql.js
│ ├── lib
│ │ └── rpcgen.sh
│ ├── patch
│ │ └── mysql-5.5-fix-arm-client_plugin.patch
│ ├── scripts
│ │ └── tools.py
│ └── versions
│ │ ├── 5.5
│ │ └── install.sh
│ │ ├── 5.6
│ │ └── install.sh
│ │ ├── 5.7
│ │ └── install.sh
│ │ ├── 8.0
│ │ └── install.sh
│ │ ├── 8.2
│ │ └── install.sh
│ │ ├── 8.3
│ │ └── install.sh
│ │ ├── 8.4
│ │ └── install.sh
│ │ ├── 9.0
│ │ └── install.sh
│ │ ├── 9.1
│ │ └── install.sh
│ │ └── 9.2
│ │ └── install.sh
├── nezha
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── nezha-agent.service.tpl
│ │ ├── nezha-agent.tpl
│ │ ├── nezha.service.tpl
│ │ └── nezha.tpl
│ ├── install.sh
│ ├── js
│ │ └── nezha.js
│ └── versions
│ │ └── 0.15.2
│ │ └── install.sh
├── op_load_balance
│ ├── conf
│ │ ├── load_balance.conf
│ │ ├── rewrite.tpl.conf
│ │ └── upstream.tpl.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── app.js
│ └── lua
│ │ └── health_check.lua.tpl
├── op_waf
│ ├── class
│ │ └── luamaker.py
│ ├── conf
│ │ ├── init.sql
│ │ └── luawaf.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.old.sh
│ ├── install.sh
│ ├── js
│ │ └── op_waf.js
│ ├── shell
│ │ ├── cpu_usage.sh
│ │ └── cpu_usage_file.sh
│ ├── t
│ │ ├── bench
│ │ │ ├── bench.sh
│ │ │ ├── simple.lua
│ │ │ ├── test_ffi_time.lua
│ │ │ ├── test_find_server_name.lua
│ │ │ ├── test_get_cpu.lua
│ │ │ ├── test_gsub.lua
│ │ │ └── test_rand.lua
│ │ ├── index.py
│ │ ├── ngx_debug.sh
│ │ ├── ngx_demo.sh
│ │ ├── readme.md
│ │ └── test.sh
│ ├── tool_task.py
│ └── waf
│ │ ├── area_limit.json
│ │ ├── conf
│ │ └── readme.md
│ │ ├── config.json
│ │ ├── domains.json
│ │ ├── html
│ │ ├── cookie.html
│ │ ├── get.html
│ │ ├── other.html
│ │ ├── post.html
│ │ ├── safe_js.html
│ │ └── user_agent.html
│ │ ├── lua
│ │ ├── init.lua
│ │ ├── init_preload.lua
│ │ ├── init_worker.lua
│ │ ├── waf_common.lua
│ │ └── waf_maxminddb.lua
│ │ ├── rule
│ │ ├── args.json
│ │ ├── cookie.json
│ │ ├── ip_black.json
│ │ ├── ip_white.json
│ │ ├── ipv6_black.json
│ │ ├── post.json
│ │ ├── scan_black.json
│ │ ├── url.json
│ │ ├── url_white.json
│ │ └── user_agent.json
│ │ ├── site.json
│ │ └── total.json
├── openresty
│ ├── conf
│ │ ├── lua.conf
│ │ ├── nginx.conf
│ │ └── vhost
│ │ │ ├── 0.nginx_status.conf
│ │ │ └── 0.websocket.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── nginx.tpl
│ │ └── openresty.service.tpl
│ ├── install.sh
│ ├── js
│ │ └── openresty.js
│ └── versions
│ │ ├── 1.17.8
│ │ └── install.sh
│ │ ├── 1.19.3
│ │ └── install.sh
│ │ ├── 1.21.4
│ │ └── install.sh
│ │ ├── 1.25.3
│ │ └── install.sh
│ │ ├── 1.27.1
│ │ └── install.sh
│ │ └── rtmp
│ │ └── install.sh
├── pgadmin
│ ├── conf
│ │ ├── config_local.py
│ │ └── pgadmin.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ └── pgadmin.service.tpl
│ ├── install.sh
│ ├── js
│ │ └── pgadmin.js
│ └── pg_init.sh
├── php-apt
│ ├── conf
│ │ ├── app_start.php
│ │ ├── enable-php.conf
│ │ ├── pathinfo.conf
│ │ ├── php-fpm.conf
│ │ ├── phpinfo.conf
│ │ └── www.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── index_php_apt.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── php.js
│ └── versions
│ │ ├── 56
│ │ └── install.sh
│ │ ├── 70
│ │ └── install.sh
│ │ ├── 71
│ │ └── install.sh
│ │ ├── 72
│ │ └── install.sh
│ │ ├── 73
│ │ └── install.sh
│ │ ├── 74
│ │ └── install.sh
│ │ ├── 80
│ │ └── install.sh
│ │ ├── 81
│ │ └── install.sh
│ │ ├── 82
│ │ └── install.sh
│ │ ├── 83
│ │ └── install.sh
│ │ ├── 84
│ │ └── install.sh
│ │ ├── all_test.sh
│ │ ├── common.sh
│ │ ├── common
│ │ ├── brotli.sh
│ │ ├── ioncube.sh
│ │ ├── opcache.sh
│ │ ├── phalcon.sh
│ │ ├── seaslog.sh
│ │ ├── sg11.sh
│ │ ├── swoole.sh
│ │ ├── yaf.sh
│ │ └── yar.sh
│ │ ├── lib.sh
│ │ └── phplib.conf
├── php-guard
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ └── install.sh
├── php-yum
│ ├── all_test.sh
│ ├── conf
│ │ ├── app_start.php
│ │ ├── enable-php.conf
│ │ ├── pathinfo.conf
│ │ ├── php-fpm.conf
│ │ ├── phpinfo.conf
│ │ └── www.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── index_php_yum.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── php.js
│ └── versions
│ │ ├── 74
│ │ └── install.sh
│ │ ├── 80
│ │ └── install.sh
│ │ ├── 81
│ │ └── install.sh
│ │ ├── 82
│ │ └── install.sh
│ │ ├── 83
│ │ └── install.sh
│ │ ├── 84
│ │ └── install.sh
│ │ ├── common.sh
│ │ ├── common
│ │ ├── bak_brotli.sh
│ │ ├── ioncube.sh
│ │ ├── opcache.sh
│ │ └── sg11.sh
│ │ ├── lib.sh
│ │ └── phplib.conf
├── php
│ ├── conf
│ │ ├── app_start.php
│ │ ├── backup.conf
│ │ ├── enable-php-upstream.conf
│ │ ├── enable-php.bak.conf
│ │ ├── enable-php.conf
│ │ ├── pathinfo.conf
│ │ ├── php-fpm-52.conf
│ │ ├── php-fpm.conf
│ │ ├── php5.ini
│ │ ├── php7.ini
│ │ ├── php8.ini
│ │ ├── phpfpm_status.conf
│ │ ├── phpinfo.conf
│ │ └── www.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── index_php.py
│ ├── info.json
│ ├── init.d
│ │ ├── php.service.52.tpl
│ │ ├── php.service.tpl
│ │ ├── php.tpl
│ │ └── php52.tpl
│ ├── install.sh
│ ├── js
│ │ └── php.js
│ ├── lib
│ │ ├── freetype_new.sh
│ │ ├── freetype_old.sh
│ │ ├── icu.sh
│ │ ├── imagemagick.sh
│ │ ├── libedit.sh
│ │ ├── libiconv.sh
│ │ ├── libmcrypt.sh
│ │ ├── libmemcached.sh
│ │ ├── libsodium.sh
│ │ ├── libzip.sh
│ │ ├── oniguruma.sh
│ │ ├── openssl.sh
│ │ ├── openssl_10.sh
│ │ ├── openssl_11.sh
│ │ ├── openssl_30.sh
│ │ ├── pcre.sh
│ │ └── zlib.sh
│ └── versions
│ │ ├── 52
│ │ ├── eaccelerator.sh
│ │ ├── gd.sh
│ │ ├── install.sh
│ │ ├── intl.sh
│ │ ├── memcache.sh
│ │ └── zendoptimizer.sh
│ │ ├── 53
│ │ ├── apc.sh
│ │ ├── eaccelerator.sh
│ │ ├── install.sh
│ │ ├── intl.sh
│ │ ├── opcache.sh
│ │ └── zendguardloader.sh
│ │ ├── 54
│ │ ├── apc.sh
│ │ ├── install.sh
│ │ ├── opcache.sh
│ │ ├── src
│ │ │ ├── ext
│ │ │ │ └── pcre
│ │ │ │ │ └── sljitConfigInternal.h
│ │ │ └── reentrancy.c
│ │ └── zendguardloader.sh
│ │ ├── 55
│ │ ├── install.sh
│ │ └── src
│ │ │ ├── ext
│ │ │ └── pcre
│ │ │ │ └── sljitConfigInternal.h
│ │ │ ├── reentrancy.c
│ │ │ └── zend_multiply.h
│ │ ├── 56
│ │ ├── install.sh
│ │ ├── src
│ │ │ ├── ext
│ │ │ │ └── pcre
│ │ │ │ │ └── sljitConfigInternal.h
│ │ │ ├── mkstemp.c
│ │ │ ├── reentrancy.c
│ │ │ └── zend_multiply.h
│ │ └── zendguardloader.sh
│ │ ├── 70
│ │ ├── install.sh
│ │ └── src
│ │ │ ├── ext
│ │ │ └── pcre
│ │ │ │ └── sljitConfigInternal.h
│ │ │ ├── mkstemp.c
│ │ │ ├── reentrancy.c
│ │ │ └── zend_multiply.h
│ │ ├── 71
│ │ ├── install.sh
│ │ ├── mcrypt.sh
│ │ └── src
│ │ │ ├── ext
│ │ │ └── pcre
│ │ │ │ └── sljitConfigInternal.h
│ │ │ ├── mkstemp.c
│ │ │ ├── reentrancy.c
│ │ │ └── zend_multiply.h
│ │ ├── 72
│ │ ├── install.sh
│ │ └── src
│ │ │ └── reentrancy.c
│ │ ├── 73
│ │ └── install.sh
│ │ ├── 74
│ │ └── install.sh
│ │ ├── 80
│ │ └── install.sh
│ │ ├── 81
│ │ └── install.sh
│ │ ├── 82
│ │ └── install.sh
│ │ ├── 83
│ │ └── install.sh
│ │ ├── 84
│ │ └── install.sh
│ │ ├── all_mac.sh
│ │ ├── all_test.sh
│ │ ├── common.sh
│ │ ├── common
│ │ ├── apcu.sh
│ │ ├── bcmath.sh
│ │ ├── brotli.sh
│ │ ├── curl.sh
│ │ ├── event.sh
│ │ ├── exif.sh
│ │ ├── fileinfo.sh
│ │ ├── gd.sh
│ │ ├── gd_old.sh
│ │ ├── gettext.sh
│ │ ├── gmp.sh
│ │ ├── iconv.sh
│ │ ├── igbinary.sh
│ │ ├── imagemagick.sh
│ │ ├── intl.sh
│ │ ├── ioncube.sh
│ │ ├── ldap.sh
│ │ ├── lib.md
│ │ ├── mcrypt.sh
│ │ ├── memcache.sh
│ │ ├── memcached.sh
│ │ ├── mongo.sh
│ │ ├── mongodb.sh
│ │ ├── mysql_xdevapi.sh
│ │ ├── opcache.sh
│ │ ├── openssl.sh
│ │ ├── openssl_bak.sh
│ │ ├── openssl_low_version.sh
│ │ ├── pcntl.sh
│ │ ├── phalcon.sh
│ │ ├── readline.sh
│ │ ├── redis.sh
│ │ ├── seaslog.sh
│ │ ├── sg11.sh
│ │ ├── sodium.sh
│ │ ├── solr.sh
│ │ ├── swoole.sh
│ │ ├── xdebug.sh
│ │ ├── xhprof.sh
│ │ ├── yac.sh
│ │ ├── yaf.sh
│ │ ├── yaml.sh
│ │ ├── yar.sh
│ │ ├── zip.sh
│ │ └── zlib.sh
│ │ ├── lib.sh
│ │ └── phplib.conf
├── phpldapadmin
│ ├── conf
│ │ ├── config.php
│ │ └── phpldapadmin.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── js
│ │ └── phpldapadmin.js
├── phpmyadmin
│ ├── conf
│ │ ├── config.inc.php
│ │ └── phpmyadmin.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ └── js
│ │ └── phpmyadmin.js
├── postgresql
│ ├── class
│ │ └── pg.py
│ ├── conf
│ │ ├── pg_hba.conf
│ │ ├── pgsql.sql
│ │ └── postgresql.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── postgresql.service.tpl
│ │ └── postgresql.tpl
│ ├── install.sh
│ ├── js
│ │ └── postgresql.js
│ └── versions
│ │ ├── 14
│ │ └── install.sh
│ │ ├── 15
│ │ └── install.sh
│ │ ├── 16
│ │ └── install.sh
│ │ └── 17
│ │ └── install.sh
├── pureftp
│ ├── conf
│ │ ├── ftps.sql
│ │ └── pure-ftpd.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── pure-config.pl
│ │ ├── pure-ftpd.tpl
│ │ └── pureftp.service.tpl
│ ├── install.sh
│ └── js
│ │ └── ftp.js
├── redis
│ ├── config
│ │ └── redis.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── redis.service.tpl
│ │ └── redis.tpl
│ ├── install.sh
│ ├── js
│ │ └── redis.js
│ └── tpl
│ │ ├── redis_cluster.conf
│ │ ├── redis_simple.conf
│ │ ├── redis_slave.conf
│ │ └── redis_slave_mem.conf
├── rsyncd
│ ├── conf
│ │ ├── config.json
│ │ ├── lsyncd.conf
│ │ └── rsyncd.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── lsyncd.service.tpl
│ │ ├── lsyncd.tpl
│ │ ├── rsyncd.service.tpl
│ │ └── rsyncd.tpl
│ ├── install.sh
│ ├── js
│ │ ├── base64.js
│ │ └── rsyncd.js
│ └── tool_task.py
├── simpleping
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── simpleping.service.tpl
│ │ └── simpleping.tpl
│ ├── install.sh
│ ├── js
│ │ └── simpleping.js
│ └── simpleping_index.py
├── sphinx
│ ├── class
│ │ ├── sphinx_make.py
│ │ └── sphinxapi.py
│ ├── conf
│ │ └── sphinx.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── sphinx.service.tpl
│ │ └── sphinx.tpl
│ ├── install.sh
│ ├── js
│ │ └── sphinx.js
│ ├── tool_cron.py
│ └── tpl
│ │ ├── discuz.conf
│ │ ├── maccms.conf
│ │ ├── none.conf
│ │ ├── qbittorrent.conf
│ │ ├── simdht.conf
│ │ ├── simdht_delta.conf
│ │ └── video.conf
├── supervisor
│ ├── conf
│ │ └── supervisor.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ └── supervisor.service
│ ├── install.sh
│ └── js
│ │ └── supervisor.js
├── swap
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── swap.service.tpl
│ │ └── swap.tpl
│ ├── install.sh
│ └── js
│ │ └── swap.js
├── sys-opt
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── sys-opt.js
│ └── tpl
│ │ ├── linux.conf
│ │ └── linux_notes.conf
├── system_safe
│ ├── LICENSE
│ ├── conf
│ │ └── config.json
│ ├── ico.png
│ ├── index.html
│ ├── info.json
│ ├── init.d
│ │ ├── system_safe.service.tpl
│ │ └── system_safe.tpl
│ ├── install.sh
│ ├── js
│ │ └── app.js
│ └── system_safe.py
├── tamper_proof_py
│ ├── conf
│ │ └── config.json
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── tamper_proof_py.service.tpl
│ │ └── tamper_proof_py.tpl
│ ├── install.sh
│ └── tamper_proof_service.py
├── task_manager
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── task_manager.js
│ ├── process_network_total.py
│ └── task_manager_index.py
├── tgbot
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── tgbot.service.tpl
│ │ └── tgbot.tpl
│ ├── install.sh
│ ├── js
│ │ └── tgbot.js
│ ├── startup
│ │ ├── extend
│ │ │ ├── init_cmd.py
│ │ │ ├── push_ad.py
│ │ │ ├── push_bbs_ntid.py
│ │ │ ├── push_notice_msg.py
│ │ │ ├── readme.md
│ │ │ ├── receive_faq.py
│ │ │ └── receive_music163_search.py
│ │ ├── tgbot.py
│ │ └── tgpush.py
│ └── static
│ │ └── image
│ │ └── ad.png
├── tgclient
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── tgclient.service.tpl
│ │ └── tgclient.tpl
│ ├── install.sh
│ ├── js
│ │ └── tgclient.js
│ └── startup
│ │ ├── extend
│ │ ├── client_ad.py
│ │ ├── client_check_member.py
│ │ ├── client_holding.py
│ │ ├── client_temp.py
│ │ └── readme.md
│ │ └── tgclient.py
├── valkey
│ ├── config
│ │ └── valkey.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── init.d
│ │ ├── valkey.service.tpl
│ │ └── valkey.tpl
│ ├── install.sh
│ ├── js
│ │ └── valkey.js
│ └── tpl
│ │ ├── valkey_cluster.conf
│ │ ├── valkey_simple.conf
│ │ ├── valkey_slave.conf
│ │ └── valkey_slave_mem.conf
├── varnish
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── varnish.js
│ └── tpl
│ │ ├── default.vcl
│ │ └── default_note.vcl
├── webhook
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── webhook.js
│ ├── tpl
│ │ └── git.tpl
│ └── webhook_index.py
├── webssh
│ ├── ico.png
│ ├── img
│ │ └── ico-cmd.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── webssh.js
│ └── menu
│ │ ├── ico.css
│ │ ├── index.css
│ │ └── index.html
├── webstats
│ ├── class
│ │ └── LuaMaker.py
│ ├── conf
│ │ ├── config.json
│ │ ├── init.sql
│ │ └── webstats.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.old.sh
│ ├── install.sh
│ ├── js
│ │ ├── setting.js
│ │ └── stats.js
│ ├── lua
│ │ ├── webstats_common.lua
│ │ └── webstats_log.lua
│ ├── t
│ │ ├── bench
│ │ │ ├── bench.sh
│ │ │ ├── simple.lua
│ │ │ ├── test_match_spider.lua
│ │ │ ├── test_ngx_find.lua
│ │ │ ├── test_time.lua
│ │ │ └── test_today.lua
│ │ ├── index.py
│ │ └── test.sh
│ ├── tool_migrate.py
│ ├── tool_task.py
│ └── webstats_index.py
├── xhprof
│ ├── conf
│ │ └── xhprof.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── xhprof.js
│ └── lib
│ │ ├── xhprof_html
│ │ ├── callgraph.php
│ │ ├── css
│ │ │ └── xhprof.css
│ │ ├── index.php
│ │ ├── jquery
│ │ │ ├── indicator.gif
│ │ │ ├── jquery-1.2.6.js
│ │ │ ├── jquery.autocomplete.css
│ │ │ ├── jquery.autocomplete.js
│ │ │ ├── jquery.tooltip.css
│ │ │ └── jquery.tooltip.js
│ │ ├── js
│ │ │ └── xhprof_report.js
│ │ └── typeahead.php
│ │ └── xhprof_lib
│ │ ├── display
│ │ ├── typeahead_common.php
│ │ └── xhprof.php
│ │ └── utils
│ │ ├── callgraph_utils.php
│ │ ├── xhprof_lib.php
│ │ └── xhprof_runs.php
├── xui
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── install_xui.sh
│ └── js
│ │ └── xui.js
├── zabbix
│ ├── conf
│ │ ├── zabbix.conf.php
│ │ ├── zabbix.nginx.conf
│ │ ├── zabbix_agentd.conf
│ │ ├── zabbix_server.conf
│ │ ├── zabbix_server.conf.6.bak
│ │ ├── zabbix_server.conf.bak
│ │ └── zabbix_server6.conf
│ ├── data
│ │ ├── server6.0.sql.gz
│ │ └── server7.0.sql.gz
│ ├── ico.png
│ ├── ico.svg
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ │ └── zabbix.js
│ └── versions
│ │ ├── 6.0
│ │ ├── alma.sh
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── opensuse.sh
│ │ ├── rocky.sh
│ │ └── ubuntu.sh
│ │ └── 7.0
│ │ ├── alma.sh
│ │ ├── centos.sh
│ │ ├── debian.sh
│ │ ├── opensuse.sh
│ │ ├── rocky.sh
│ │ └── ubuntu.sh
└── zabbix_agent
│ ├── conf
│ ├── zabbix_agentd.conf
│ ├── zabbix_agentd.conf.bak
│ └── zabbix_agentd
│ │ ├── userparameter_examples.conf
│ │ └── userparameter_mysql.conf
│ ├── ico.png
│ ├── index.html
│ ├── index.py
│ ├── info.json
│ ├── install.sh
│ ├── js
│ └── zabbix.js
│ └── versions
│ ├── 6.0
│ └── debian.sh
│ └── 7.0
│ ├── alma.sh
│ ├── centos.sh
│ ├── debian.sh
│ ├── opensuse.sh
│ ├── rocky.sh
│ └── ubuntu.sh
├── requirements.txt
├── scripts
├── backup.py
├── getos.sh
├── init.d
│ ├── mw-task.service.tpl
│ ├── mw.service.tpl
│ ├── mw.tpl
│ └── service.sh
├── install.sh
├── install
│ ├── alma.sh
│ ├── amazon.sh
│ ├── arch.sh
│ ├── centos.sh
│ ├── debian.sh
│ ├── euler.sh
│ ├── fedora.sh
│ ├── freebsd.sh
│ ├── macos.sh
│ ├── opensuse.sh
│ ├── rhel.sh
│ ├── rocky.sh
│ ├── ubuntu.sh
│ └── unknow.sh
├── install_dev.sh
├── lib.sh
├── logs_backup.py
├── old
│ ├── install.sh
│ └── update.sh
├── pick.sh
├── pick_filter.txt
├── plugin_compress.sh
├── quick
│ ├── app.sh
│ └── debug.sh
├── rememory.sh
├── tools
│ ├── conntrace
│ │ └── script.sh
│ └── trace
│ │ └── trace.sh
├── uninstall.sh
├── update.sh
├── update
│ ├── alma.sh
│ ├── amazon.sh
│ ├── arch.sh
│ ├── centos.sh
│ ├── debian.sh
│ ├── euler.sh
│ ├── fedora.sh
│ ├── freebsd.sh
│ ├── macos.sh
│ ├── opensuse.sh
│ ├── rhel.sh
│ ├── rocky.sh
│ ├── ubuntu.sh
│ └── unknow.sh
└── update_dev.sh
├── ssl
└── README.md
├── version
├── r3.6.txt
└── r3.7.txt
└── web
├── admin
├── __init__.py
├── common.py
├── crontab
│ └── __init__.py
├── dashboard
│ ├── __init__.py
│ ├── dashboard.py
│ └── login.py
├── files
│ ├── __init__.py
│ ├── files.py
│ └── recycle.py
├── firewall
│ └── __init__.py
├── logs
│ └── __init__.py
├── monitor
│ └── __init__.py
├── plugins
│ └── __init__.py
├── setting
│ ├── __init__.py
│ ├── app.py
│ ├── notify_email.py
│ ├── notify_tgbot.py
│ ├── panel_bookmark.py
│ ├── panel_ssl.py
│ ├── secondary_verifiy.py
│ ├── setting.py
│ ├── temp_login.py
│ └── timezone.py
├── setup
│ ├── __init__.py
│ ├── init_cmd.py
│ ├── init_cron.py
│ ├── init_db_system.py
│ ├── option.py
│ ├── sql
│ │ ├── default.sql
│ │ └── system.sql
│ └── user.py
├── site
│ ├── __init__.py
│ ├── backup.py
│ ├── dir.py
│ ├── logs.py
│ ├── php.py
│ ├── proxy.py
│ ├── redirect.py
│ ├── site.py
│ ├── site_default.py
│ ├── site_types.py
│ ├── ssl.py
│ ├── ssl_acme.py
│ └── ssl_let.py
├── soft
│ └── __init__.py
├── submodules.py
├── system
│ ├── __init__.py
│ ├── system.py
│ └── upgrade.py
├── task
│ └── __init__.py
└── user_login_check.py
├── app.py
├── branding.py
├── config.py
├── core
├── db.py
├── mw.py
└── orm.py
├── misc
├── nginx
│ ├── rewrite
│ │ ├── EmpireCMS.conf
│ │ ├── cloudfare_real_ip.conf
│ │ ├── dedecms.conf
│ │ ├── discuzx.conf
│ │ ├── discuzx2.conf
│ │ ├── discuzx3.conf
│ │ ├── drupal.conf
│ │ ├── ecshop.conf
│ │ ├── emlog.conf
│ │ ├── fastdfs.conf
│ │ ├── gunicorn.conf
│ │ ├── header_cors.conf
│ │ ├── laravel5.conf
│ │ ├── mvc.conf
│ │ ├── nezha.conf
│ │ ├── phpcms.conf
│ │ ├── phpwind.conf
│ │ ├── proxy.conf
│ │ ├── proxydg.conf
│ │ ├── sablog.conf
│ │ ├── seacms.conf
│ │ ├── shopex.conf
│ │ ├── sub.conf.tpl
│ │ ├── thinkphp.conf
│ │ ├── typecho.conf
│ │ ├── v2ray.conf
│ │ ├── walle.conf
│ │ ├── whmcs.conf
│ │ ├── wmcms.conf
│ │ ├── wordpress.conf
│ │ └── zblog.conf
│ └── tpl
│ │ ├── nginx.conf
│ │ ├── nginx_dirbind.conf
│ │ └── nginx_panel.conf
└── test
│ └── api
│ ├── mw_api.php
│ └── mw_api.py
├── readme.md
├── setting.py
├── static
├── app
│ ├── config.js
│ ├── control.js
│ ├── crontab.js
│ ├── files.js
│ ├── firewall.js
│ ├── index.js
│ ├── logs.js
│ ├── public.js
│ ├── site.js
│ ├── soft.js
│ └── upload.js
├── bootstrap-3.3.5
│ ├── css
│ │ ├── bootstrap-theme.min.css
│ │ ├── bootstrap.min.css
│ │ └── index.html
│ ├── fonts
│ │ ├── glyphicons-halflings-regular.eot
│ │ ├── glyphicons-halflings-regular.svg
│ │ ├── glyphicons-halflings-regular.ttf
│ │ ├── glyphicons-halflings-regular.woff
│ │ ├── glyphicons-halflings-regular.woff2
│ │ └── index.html
│ └── index.html
├── build
│ ├── addons
│ │ ├── attach
│ │ │ ├── attach.js
│ │ │ ├── index.html
│ │ │ └── package.json
│ │ ├── fit
│ │ │ ├── fit.js
│ │ │ └── package.json
│ │ ├── fullscreen
│ │ │ ├── fullscreen.css
│ │ │ ├── fullscreen.js
│ │ │ └── package.json
│ │ ├── search
│ │ │ ├── search.js
│ │ │ └── search.js.map
│ │ ├── terminado
│ │ │ ├── package.json
│ │ │ └── terminado.js
│ │ ├── winptyCompat
│ │ │ ├── winptyCompat.js
│ │ │ └── winptyCompat.js.map
│ │ └── zmodem
│ │ │ ├── demo
│ │ │ ├── app.js
│ │ │ ├── index.html
│ │ │ └── main.js
│ │ │ └── zmodem.js
│ ├── xterm.css
│ ├── xterm.js
│ └── xterm.js.map
├── codemirror
│ ├── addon
│ │ ├── dialog
│ │ │ ├── dialog.css
│ │ │ ├── dialog.js
│ │ │ └── index.html
│ │ ├── display
│ │ │ ├── autorefresh.js
│ │ │ ├── fullscreen.css
│ │ │ ├── fullscreen.js
│ │ │ ├── index.html
│ │ │ ├── panel.js
│ │ │ ├── placeholder.js
│ │ │ └── rulers.js
│ │ ├── edit
│ │ │ ├── closebrackets.js
│ │ │ ├── closetag.js
│ │ │ ├── continuelist.js
│ │ │ ├── editAll.js
│ │ │ ├── index.html
│ │ │ ├── matchbrackets.js
│ │ │ ├── matchtags.js
│ │ │ └── trailingspace.js
│ │ ├── hint
│ │ │ ├── anyword-hint.js
│ │ │ ├── css-hint.js
│ │ │ ├── html-hint.js
│ │ │ ├── index.html
│ │ │ ├── javascript-hint.js
│ │ │ ├── show-hint.css
│ │ │ ├── show-hint.js
│ │ │ ├── sql-hint.js
│ │ │ └── xml-hint.js
│ │ ├── index.html
│ │ ├── scroll
│ │ │ ├── annotatescrollbar.js
│ │ │ ├── index.html
│ │ │ ├── scrollpastend.js
│ │ │ ├── simplescrollbars.css
│ │ │ └── simplescrollbars.js
│ │ └── search
│ │ │ ├── index.html
│ │ │ ├── jump-to-line.js
│ │ │ ├── match-highlighter.js
│ │ │ ├── matchesonscrollbar.css
│ │ │ ├── matchesonscrollbar.js
│ │ │ ├── search.js
│ │ │ └── searchcursor.js
│ ├── index.html
│ ├── lib
│ │ ├── codemirror.css
│ │ ├── codemirror.js
│ │ └── index.html
│ └── mode
│ │ ├── index.html
│ │ └── modeAll.js
├── css
│ ├── ensite.css
│ ├── index.html
│ ├── install.css
│ ├── login.css
│ └── site.css
├── favicon.ico
├── fonts
│ └── 2.ttf
├── images
│ ├── ico-ts-cpu-active.png
│ ├── ico-ts-cpu.png
│ ├── ico-ts-disk-active.png
│ ├── ico-ts-disk.png
│ ├── ico-ts-mem-active.png
│ ├── ico-ts-mem.png
│ ├── ico-ts-refresh.png
│ ├── ico-ts-score.gif
│ ├── ico-ts-score.jpg
│ ├── ico-ts-score1.png
│ ├── ico-ts-score2.png
│ ├── ico-ts-score3.png
│ ├── index.html
│ ├── logo.png
│ ├── move.png
│ ├── right.png
│ └── weixin.png
├── img
│ ├── Detailsbg.png
│ ├── DrawRecordord.png
│ ├── account.png
│ ├── alipay_zz.png
│ ├── ico-close.png
│ ├── ico-computer.png
│ ├── ico-copy.png
│ ├── ico-home.png
│ ├── ico-success.png
│ ├── ico
│ │ ├── ico-access.png
│ │ ├── ico-apk.png
│ │ ├── ico-avi.png
│ │ ├── ico-bmp.png
│ │ ├── ico-bt.png
│ │ ├── ico-c.png
│ │ ├── ico-cdr.png
│ │ ├── ico-cpp.png
│ │ ├── ico-cs.png
│ │ ├── ico-doc.png
│ │ ├── ico-docx.png
│ │ ├── ico-flv.png
│ │ ├── ico-gif.png
│ │ ├── ico-htm.png
│ │ ├── ico-html.png
│ │ ├── ico-java.png
│ │ ├── ico-jpeg.png
│ │ ├── ico-jpg.png
│ │ ├── ico-js.png
│ │ ├── ico-ltr.png
│ │ ├── ico-mht.png
│ │ ├── ico-mkv.png
│ │ ├── ico-mov.png
│ │ ├── ico-mp4.png
│ │ ├── ico-mpeg.png
│ │ ├── ico-mpg.png
│ │ ├── ico-pdf.png
│ │ ├── ico-php.png
│ │ ├── ico-png.png
│ │ ├── ico-pptx.png
│ │ ├── ico-psd.png
│ │ ├── ico-rm.png
│ │ ├── ico-rmvb.png
│ │ ├── ico-rocket.gif
│ │ ├── ico-swf.png
│ │ ├── ico-url.png
│ │ ├── ico-webm.png
│ │ ├── ico-webp.png
│ │ ├── ico-wma.png
│ │ ├── ico-wmv.png
│ │ ├── ico-xls.png
│ │ ├── ico-xlsx.png
│ │ ├── ico-xml.png
│ │ ├── index.html
│ │ ├── menu_icon_control.png
│ │ ├── menu_icon_control_active.gif
│ │ ├── menu_icon_control_active.png
│ │ ├── menu_icon_data.png
│ │ ├── menu_icon_data_active.gif
│ │ ├── menu_icon_data_active.png
│ │ ├── menu_icon_day.png
│ │ ├── menu_icon_day_active.gif
│ │ ├── menu_icon_day_active.png
│ │ ├── menu_icon_exit.png
│ │ ├── menu_icon_exit_active.gif
│ │ ├── menu_icon_exit_active.png
│ │ ├── menu_icon_firewall.png
│ │ ├── menu_icon_firewall_active.gif
│ │ ├── menu_icon_firewall_active.png
│ │ ├── menu_icon_folder.png
│ │ ├── menu_icon_folder_active.gif
│ │ ├── menu_icon_folder_active.png
│ │ ├── menu_icon_ftp.png
│ │ ├── menu_icon_ftp_active.gif
│ │ ├── menu_icon_ftp_active.png
│ │ ├── menu_icon_home.png
│ │ ├── menu_icon_home_active.gif
│ │ ├── menu_icon_home_active.png
│ │ ├── menu_icon_log.png
│ │ ├── menu_icon_log_active.png
│ │ ├── menu_icon_set.png
│ │ ├── menu_icon_set_active.gif
│ │ ├── menu_icon_set_active.png
│ │ ├── menu_icon_soft.png
│ │ ├── menu_icon_soft_active.gif
│ │ ├── menu_icon_soft_active.png
│ │ ├── menu_icon_web.png
│ │ ├── menu_icon_web_active.gif
│ │ ├── menu_icon_web_active.png
│ │ └── rocket_min.png
│ ├── ico_line.png
│ ├── icon-item.png
│ ├── icon3.png
│ ├── icon4.png
│ ├── index.html
│ ├── ing.gif
│ ├── ings.gif
│ ├── label-icon.png
│ ├── loading.gif
│ ├── morebtn.png
│ ├── ns-loading.gif
│ ├── ref-icon.png
│ ├── return-icon.png
│ ├── safety_ico.png
│ ├── ser-icon.png
│ ├── soft_ico
│ │ ├── ico-app.png
│ │ ├── ico-beta.png
│ │ ├── ico-cmd-hover.png
│ │ ├── ico-cmd.png
│ │ ├── ico-deployment.png
│ │ ├── ico-load_leveling.png
│ │ ├── ico-log.png
│ │ ├── ico-logs.png
│ │ ├── ico-mongodb.png
│ │ ├── ico-node.png
│ │ ├── ico-phpsafe.png
│ │ ├── ico-pm2.png
│ │ ├── ico-psync.png
│ │ ├── ico-rsync.png
│ │ ├── ico-safelogin.png
│ │ ├── ico-score.png
│ │ ├── ico-task_manager.png
│ │ ├── ico-test.png
│ │ ├── ico-tomcat.png
│ │ ├── ico-txcos.png
│ │ ├── ico-webhook.png
│ │ └── index.html
│ ├── success-pic.png
│ ├── tip_suu.png
│ └── weixin_zz.jpg
├── index.html
├── js
│ ├── Validform_v5.3.2_min.js
│ ├── bootstrap.min.js
│ ├── clipboard.min.js
│ ├── echarts.min.js
│ ├── jquery-1.10.2.min.js
│ ├── jquery-qrcode-0.18.0.min.js
│ ├── jquery-ui.min.js
│ ├── jquery.contextify.min.js
│ ├── jquery.contextify.min.js.map
│ ├── jquery.cookie-1.4.1.min.js
│ ├── jquery.dragsort-0.5.2.min.js
│ ├── jquery.fly.min.js
│ ├── requestAnimationFrame.js
│ ├── socket.io.min.js
│ ├── socket.io.min.js.map
│ ├── term-websocketio.js
│ ├── term.js
│ └── xm-select.js
├── language
│ ├── Simplified_Chinese
│ │ ├── lan.js
│ │ ├── log.json
│ │ ├── public.json
│ │ └── template.json
│ ├── index.html
│ ├── list.json
│ └── zh-cn.js
├── laydate
│ ├── index.html
│ ├── laydate.js
│ └── theme
│ │ ├── default
│ │ ├── font
│ │ │ ├── iconfont.eot
│ │ │ ├── iconfont.svg
│ │ │ ├── iconfont.ttf
│ │ │ ├── iconfont.woff
│ │ │ └── index.html
│ │ ├── index.html
│ │ └── laydate.css
│ │ └── index.html
├── layer
│ ├── extend
│ │ ├── index.html
│ │ └── layer.ext.js
│ ├── index.html
│ ├── layer.js
│ ├── mobile
│ │ ├── index.html
│ │ ├── layer.js
│ │ └── need
│ │ │ ├── index.html
│ │ │ └── layer.css
│ └── skin
│ │ ├── default
│ │ ├── close.png
│ │ ├── close_hover.png
│ │ ├── icon-ext.png
│ │ ├── icon.png
│ │ ├── index.html
│ │ ├── layer.css
│ │ ├── loading-0.gif
│ │ ├── loading-1.gif
│ │ └── loading-2.gif
│ │ ├── index.html
│ │ ├── layer.css
│ │ └── layer.ext.css
├── logo.png
└── mdw.jpg
├── templates
├── default
│ ├── close.html
│ ├── crontab.html
│ ├── files.html
│ ├── firewall.html
│ ├── index.html
│ ├── layout.html
│ ├── login.html
│ ├── logs.html
│ ├── monitor.html
│ ├── path.html
│ ├── plugin_menu.html
│ ├── setting.html
│ ├── site.html
│ └── soft.html
└── index.html
├── thisdb
├── __init__.py
├── app.py
├── backup.py
├── binding.py
├── crontab.py
├── domain.py
├── firewall.py
├── init.py
├── logs.py
├── option.py
├── site_types.py
├── sites.py
├── tasks.py
├── temp_login.py
└── user.py
├── utils
├── __init__.py
├── adult_log.py
├── cert
│ └── cert.py
├── config.py
├── crontab.py
├── email.py
├── enhanced_log_rotation.py
├── file.py
├── firewall.py
├── page.py
├── php
│ ├── fcgi_client.py
│ └── fpm.py
├── plugin.py
├── setting.py
├── site.py
├── site_reflect.py
├── ssh
│ ├── ssh_local.py
│ └── ssh_terminal.py
├── system
│ ├── __init__.py
│ ├── main.py
│ ├── monitor.py
│ ├── query.py
│ ├── stats.py
│ └── update.py
├── task.py
└── vilidate.py
└── version.py
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: midoks
4 |
5 | custom: https://afdian.net/a/mdserver-web
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/ISSUE_TEMPLATE_1.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: BUG提交
3 | about: 问题描述
4 | ---
5 |
6 | ## 什么系统 ?
7 |
8 | Debian x, Centos x, Centos x stream, Ubuntu x?
9 |
10 | ## 错误信息 ?
11 |
12 | Ex:
13 | ```bash
14 | 一个issue,一个问题。多余问题,视情况而答。
15 | ```
16 |
17 | ## 错误截图 ?
18 |
19 | ...
20 |
21 |
22 | ## 浏览器版本 ?
23 |
24 | ...
25 |
26 |
27 | ## 软件版本(插件/面板) ?
28 |
29 | ...
30 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/ISSUE_TEMPLATE_2.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: 需求提交
3 | about: 需求描述
4 | ---
5 |
6 | ## 需求
7 |
8 | 想开发一个什么插件?
9 | 想有什么功能?
10 |
11 |
12 | ## 提供参考
13 |
14 | 给开发者提供参考!
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.yml:
--------------------------------------------------------------------------------
1 | name: Bug提交
2 | description: 提交错误报告以帮助我们改进
3 | labels: ["\U0001F48A bug"]
4 | body:
5 | - type: markdown
6 | attributes:
7 | value: |
8 | 感谢您花时间填写此错误报告!
9 |
10 | - 如有疑问,请讨论[Discussions](https://github.com/midoks/mdserver-web/discussions).
11 | - 检查以确保尚未有人打开类似的[issue](https://github.com/midoks/mdserver-web/issues).
12 | - type: input
13 | attributes:
14 | label: 操作系统
15 | description: |
16 | 请指定您报告的确切操作系统名称和版本,例如"CentOS 7"、"Ubuntu 20.04"。
17 | validations:
18 | required: true
19 | - type: textarea
20 | attributes:
21 | label: 描述错误
22 | description: 对bug的清晰而简洁的描述。
23 | validations:
24 | required: true
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yaml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: true
2 | contact_links:
3 | - name: 提出问题
4 | url: https://github.com/midoks/mdserver-web/discussions
5 | about: 请在讨论中提出问题。
6 | - name: 提出建议
7 | url: https://github.com/midoks/mdserver-web/discussions/categories/proposal
8 | about: 请在讨论中提出建议。
9 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/documentation.yml:
--------------------------------------------------------------------------------
1 | name: Bug提交
2 | description: 提交错误报告以帮助我们改进
3 | labels: ["\U0001F48A bug"]
4 | body:
5 | - type: markdown
6 | attributes:
7 | value: |
8 | 感谢您花时间填写此错误报告!
9 |
10 | - 如有疑问,请讨论[Discussions](https://github.com/midoks/mdserver-web/discussions).
11 | - 检查以确保尚未有人打开类似的[issue](https://github.com/midoks/mdserver-web/issues).
12 | - type: input
13 | attributes:
14 | label: 操作系统
15 | description: |
16 | 请指定您报告的确切操作系统名称和版本,例如"CentOS 7"、"Ubuntu 20.04"。
17 | validations:
18 | required: true
19 | - type: textarea
20 | attributes:
21 | label: 描述错误
22 | description: 对bug的清晰而简洁的描述。
23 | validations:
24 | required: true
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.yml:
--------------------------------------------------------------------------------
1 | name: Bug提交
2 | description: 提交错误报告以帮助我们改进
3 | labels: ["\U0001F48A bug"]
4 | body:
5 | - type: markdown
6 | attributes:
7 | value: |
8 | 感谢您花时间填写此错误报告!
9 |
10 | - 如有疑问,请讨论[Discussions](https://github.com/midoks/mdserver-web/discussions).
11 | - 检查以确保尚未有人打开类似的[issue](https://github.com/midoks/mdserver-web/issues).
12 | - type: input
13 | attributes:
14 | label: 操作系统
15 | description: |
16 | 请指定您报告的确切操作系统名称和版本,例如"CentOS 7"、"Ubuntu 20.04"。
17 | validations:
18 | required: true
19 | - type: textarea
20 | attributes:
21 | label: 描述错误
22 | description: 对bug的清晰而简洁的描述。
23 | validations:
24 | required: true
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ### 合并描述
2 |
3 | - 我添加了测试用例来覆盖新代码。
4 |
--------------------------------------------------------------------------------
/.github/workflows/sync2gitee.yml:
--------------------------------------------------------------------------------
1 | name: sync2gitee
2 | on: [push]
3 |
4 | jobs:
5 | repo-sync:
6 | runs-on: ubuntu-latest
7 | steps:
8 | - name: Mirror the Github organization repos to Gitee.
9 | uses: Yikun/hub-mirror-action@master
10 | with:
11 | src: 'github/midoks'
12 | dst: 'gitee/midoks'
13 | dst_key: ${{ secrets.GITEE_PRIVATE_KEY }}
14 | dst_token: ${{ secrets.GITEE_TOKEN }}
15 | static_list: "mdserver-web"
16 | force_update: true
--------------------------------------------------------------------------------
/clear.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/usr/local/lib/python2.7/bin
3 |
4 |
5 |
6 | find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch
7 | find . -name .DS_Store | xargs rm -rf
8 | find . -type d -name "*.pyc" | xargs rm -rf
--------------------------------------------------------------------------------
/data/README.md:
--------------------------------------------------------------------------------
1 | # 自动生成
2 |
3 | certificate.pem - 证书信息
4 | privateKey.pem - 私钥
--------------------------------------------------------------------------------
/docker/start.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Customize the script
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/start.sh
7 |
8 | [Install]
9 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/docker/start.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
--------------------------------------------------------------------------------
/logs/README.md:
--------------------------------------------------------------------------------
1 | logs
--------------------------------------------------------------------------------
/plugins/acme_pandominassl_apply/hooks/init.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import sys
4 | import io
5 | import os
6 | import time
7 | import re
8 |
9 | domain = sys.argv[1]
10 | path = sys.argv[2]
11 |
12 | print(domain,path)
--------------------------------------------------------------------------------
/plugins/acme_pandominassl_apply/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/acme_pandominassl_apply/ico.png
--------------------------------------------------------------------------------
/plugins/acme_pandominassl_apply/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "ACME泛域名SSL申请/管理",
4 | "name": "acme_pandominassl_apply",
5 | "title": "ACME泛域名SSL",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "tip": "soft",
9 | "checks": "server/acme_pandominassl_apply",
10 | "path": "server/acme_pandominassl_apply",
11 | "display": 1,
12 | "author": "ACME",
13 | "date": "2024-09-12",
14 | "home": "https://github.com/acmesh-official/acme.sh",
15 | "type": 0,
16 | "pid": "5"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/alist/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/alist/ico.png
--------------------------------------------------------------------------------
/plugins/alist/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "一个支持多种存储的文件列表程序",
4 | "name": "alist",
5 | "title": "Alist",
6 | "shell": "install.sh",
7 | "versions":["3.37.4","3.38.0","3.45.0"],
8 | "tip": "soft",
9 | "checks": "server/alist",
10 | "path": "server/alist",
11 | "display": 1,
12 | "author": "alist",
13 | "date": "2022-10-09",
14 | "home": "https://alist.nn.ci",
15 | "type": 0,
16 | "pid": "5"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/alist/init.d/alist.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=A file list program that supports multiple storage
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | WorkingDirectory={$SERVER_PATH}/alist
8 | ExecStart={$SERVER_PATH}/alist/alist server
9 | ExecReload=/bin/kill -USR2 $MAINPID
10 | Restart=on-failure
11 |
12 | [Install]
13 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/backup_ftp/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/backup_ftp/ico.png
--------------------------------------------------------------------------------
/plugins/backup_ftp/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":6,
3 | "title":"FTP存储空间",
4 | "hook":["backup"],
5 | "tip":"soft",
6 | "name":"backup_ftp",
7 | "type":"运行环境",
8 | "ps":"将网站或数据库打包备份到FTP存储空间",
9 | "versions":["1.0"],
10 | "install_pre_inspection":false,
11 | "shell":"install.sh",
12 | "checks":"server/backup_ftp",
13 | "path": "server/backup_ftp",
14 | "author":"midoks",
15 | "home":"https://github.com/midoks/mdserver-web",
16 | "date":"2022-10-23",
17 | "pid": "5"
18 | }
--------------------------------------------------------------------------------
/plugins/backup_ftp/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | serverPath=$(dirname "$rootPath")
9 |
10 | sys_os=`uname`
11 |
12 |
13 | Install_App()
14 | {
15 | mkdir -p ${serverPath}/backup_ftp
16 | echo "${1}" > ${serverPath}/backup_ftp/version.pl
17 | echo '安装完成'
18 |
19 | }
20 |
21 | Uninstall_App()
22 | {
23 | rm -rf ${serverPath}/backup_ftp
24 | }
25 |
26 | action=$1
27 | if [ "${1}" == 'install' ];then
28 | Install_App $2
29 | else
30 | Uninstall_App $2
31 | fi
32 |
--------------------------------------------------------------------------------
/plugins/clean/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/clean/ico.png
--------------------------------------------------------------------------------
/plugins/clean/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":2,
3 | "title":"日志清理",
4 | "tip":"soft",
5 | "name":"clean",
6 | "type":"运行环境",
7 | "ps":"日志清理",
8 | "versions":"1.0",
9 | "updates":"1.0",
10 | "shell":"install.sh",
11 | "checks":"server/clean",
12 | "path": "server/clean",
13 | "author":"clean",
14 | "home":"https://github.com/midoks",
15 | "date":"2021-11-23",
16 | "pid": "5"
17 | }
--------------------------------------------------------------------------------
/plugins/cloudreve/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/cloudreve/ico.png
--------------------------------------------------------------------------------
/plugins/cloudreve/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "一个支持多种存储的文件列表程序",
4 | "name": "cloudreve",
5 | "title": "cloudreve",
6 | "shell": "install.sh",
7 | "versions":["3.8.3"],
8 | "tip": "soft",
9 | "checks": "server/cloudreve",
10 | "path": "server/cloudreve",
11 | "display": 1,
12 | "author": "cloudreve",
13 | "date": "2024-10-14",
14 | "home": "https://cloudreve.org/",
15 | "type": 0,
16 | "pid": "5"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/cloudreve/init.d/cloudreve.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=A file list program that supports multiple storage
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | WorkingDirectory={$SERVER_PATH}/cloudreve
8 | ExecStart={$SERVER_PATH}/cloudreve/cloudreve
9 | ExecReload=/bin/kill -USR2 $MAINPID
10 | Restart=on-failure
11 |
12 | [Install]
13 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/ccxt/public_data/data.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 | curPath=`pwd`
5 |
6 | # bash plugins/cryptocurrency_trade/ccxt/public_data/data.sh
7 |
8 | if [ -f ${curPath}/bin/activate ];then
9 | source ${curPath}/bin/activate
10 | fi
11 |
12 | python3 plugins/cryptocurrency_trade/ccxt/public_data/data.py long
13 |
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/ccxt/public_data/demo.py:
--------------------------------------------------------------------------------
1 | import time
2 |
3 | from datetime import datetime
4 | china_datetime = datetime.now()
5 | print(china_datetime)
6 |
7 |
8 | # date()
9 | tt = time.time() - 180 * 86400
10 |
11 | # print(date("%Y-%m-%d", time.time()))
12 | # t = datetime.strptime(str(time.time() - 180 * 86400), "%Y-%m-%d")
13 | # print(t)
14 |
15 |
16 | d = datetime.fromtimestamp(tt)
17 | # 精确到毫秒
18 | str1 = d.strftime("%Y-%m-%d")
19 | print(str1)
20 |
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/ccxt/strategy/abs.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/cryptocurrency_trade/ccxt/strategy/abs.py
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/ccxt/strategy/info.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "id":"01",
4 | "name": "MACD-KDJ策略检测|1h",
5 | "file": "macd_kdj.py"
6 | },
7 | {
8 | "id":"02",
9 | "name": "通知测试|60s",
10 | "file": "notify_demo.py"
11 | },
12 | {
13 | "id":"03",
14 | "name": "okex|macd交易策略|15m",
15 | "file": "online_macd_trade.py"
16 | },
17 | {
18 | "id":"04",
19 | "name": "okex|动量交易策略|5m",
20 | "file": "momentun_trade.py"
21 | },
22 | {
23 | "id":"05",
24 | "name": "gate.io|动量交易策略|5m",
25 | "file": "gate_100.py"
26 | },
27 | {
28 | "id":"06",
29 | "name": "仅提醒|Vega交易策略|5m",
30 | "file": "vega_trade.py"
31 | }
32 |
33 | ]
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/conf/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE IF NOT EXISTS `ct_xx1_xx2` (
2 | `addtime` BIGINT(20) not NULL,
3 | `open` float NOT NULL,
4 | `high` float NOT NULL,
5 | `low` float NOT NULL,
6 | `close` float NOT NULL,
7 | `vol` float NOT NULL,
8 | UNIQUE KEY `addtime` (`addtime`)
9 | );
10 |
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/conf/order.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE IF NOT EXISTS `ct_order_list` (
2 | `id` BIGINT(20) not NULL,
3 | 'strategy_name' varchar(50) NULL,
4 | `symbol` varchar(50) NOT NULL,
5 | `fee` float NOT NULL,
6 | `price` float NOT NULL,
7 | `closing_price` float NOT NULL comment '',
8 | `profit` float NOT NULL,
9 | `source` TEXT,
10 | `addtime` BIGINT(20) not NULL
11 | );
12 |
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/conf/sup_strategy.tpl:
--------------------------------------------------------------------------------
1 | [program:{$NAME}]
2 | command=bash -c "cd {$RUN_ROOT} && source bin/activate && python3 {$ABS_FILE} long"
3 | directory={$RUN_ROOT}
4 | autorestart=true
5 | startsecs=3
6 | startretries=3
7 | stdout_logfile={$SUP_ROOT}/log/{$NAME}.out.log
8 | stderr_logfile={$SUP_ROOT}/log/{$NAME}.err.log
9 | stdout_logfile_maxbytes=2MB
10 | stderr_logfile_maxbytes=2MB
11 | user=root
12 | priority=999
13 | numprocs=1
14 | process_name=%(program_name)s
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/conf/sup_task.tpl:
--------------------------------------------------------------------------------
1 | [program:{$NAME}]
2 | command=bash -c "cd {$RUN_ROOT} && source bin/activate && python3 plugins/cryptocurrency_trade/ccxt/public_data/data.py long"
3 | directory={$RUN_ROOT}
4 | autorestart=true
5 | startsecs=3
6 | startretries=3
7 | stdout_logfile={$SUP_ROOT}/log/{$NAME}.out.log
8 | stderr_logfile={$SUP_ROOT}/log/{$NAME}.err.log
9 | stdout_logfile_maxbytes=2MB
10 | stderr_logfile_maxbytes=2MB
11 | user=root
12 | priority=999
13 | numprocs=1
14 | process_name=%(program_name)s
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/cryptocurrency_trade/ico.png
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/static/css/cryptocurrency_trade.css:
--------------------------------------------------------------------------------
1 | .screen-all {
2 | padding: 5px;
3 | }
4 |
5 | .s-right .panel-default{
6 | margin-bottom: 10px;
7 | }
8 |
9 | .s-left .panel-default{
10 | margin-bottom: 10px;
11 | }
12 |
--------------------------------------------------------------------------------
/plugins/cryptocurrency_trade/static/css/ico.css:
--------------------------------------------------------------------------------
1 |
2 | /* menu start */
3 | .menu .current .menu_plugin_cryptocurrency_trade:hover {
4 | background-image: url("/plugins/file?name=cryptocurrency_trade&f=ico.png");
5 | }
6 |
7 | .menu .menu_plugin_cryptocurrency_trade {
8 | background-image: url("/plugins/file?name=cryptocurrency_trade&f=ico.png");
9 | }
10 |
11 | /* menu end */
--------------------------------------------------------------------------------
/plugins/data_query/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/data_query/ico.png
--------------------------------------------------------------------------------
/plugins/data_query/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
3 | export PATH
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | serverPath=$(dirname "$rootPath")
9 |
10 | VERSION=$2
11 |
12 | Install_App()
13 | {
14 | echo '正在安装脚本文件...'
15 | mkdir -p $serverPath/source
16 | mkdir -p $serverPath/data_query
17 | echo "${VERSION}" > $serverPath/data_query/version.pl
18 |
19 | echo '安装完成'
20 | }
21 |
22 | Uninstall_App()
23 | {
24 | rm -rf $serverPath/data_query
25 | echo "卸载成功"
26 | }
27 |
28 | action=$1
29 | if [ "${1}" == 'install' ];then
30 | Install_App
31 | else
32 | Uninstall_App
33 | fi
34 |
--------------------------------------------------------------------------------
/plugins/data_query/static/css/ico.css:
--------------------------------------------------------------------------------
1 |
2 | /* menu start */
3 | .menu .current .menu_plugin_data_query:hover {
4 | background-image: url("/plugins/file?name=data_query&f=ico.png");
5 | }
6 |
7 | .menu .menu_plugin_data_query {
8 | background-image: url("/plugins/file?name=data_query&f=ico.png");
9 | }
10 |
11 | /* menu end */
--------------------------------------------------------------------------------
/plugins/docker/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/docker/ico.png
--------------------------------------------------------------------------------
/plugins/docker/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 1000,
3 | "ps": "Docker是一个开源的应用容器引擎",
4 | "name": "docker",
5 | "title": "Docker",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "checks": "server/docker",
11 | "path": "server/docker",
12 | "display": 1,
13 | "author": "Zend",
14 | "date": "2017-04-01",
15 | "home": "https://docker.io",
16 | "doc1":"https://docker-py.readthedocs.io/",
17 | "type": 0,
18 | "pid": "4"
19 | }
--------------------------------------------------------------------------------
/plugins/dynamic-tracking/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/dynamic-tracking/ico.png
--------------------------------------------------------------------------------
/plugins/dynamic-tracking/index.html:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/plugins/dynamic-tracking/static/css/ico.css:
--------------------------------------------------------------------------------
1 |
2 | /* menu start */
3 | .menu .current .menu_dynamic-tracking:hover {
4 | background-image: url("/plugins/file?name=dynamic-tracking&f=ico.png");
5 | }
6 |
7 | .menu .menu_plugin_dynamic-tracking {
8 | background-image: url("/plugins/file?name=dynamic-tracking&f=ico.png");
9 | }
10 |
11 | /* menu end */
--------------------------------------------------------------------------------
/plugins/dynamic-tracking/toolkit/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/dynamic-tracking/toolkit/readme.md
--------------------------------------------------------------------------------
/plugins/dynamic-tracking/versions/centos.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | serverPath=$(dirname "$rootPath")
9 |
10 | SYS_ARCH=`arch`
--------------------------------------------------------------------------------
/plugins/dynamic-tracking/versions/ubuntu.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | serverPath=$(dirname "$rootPath")
9 |
10 | SYS_ARCH=`arch`
11 |
12 | # export GOPROXY=https://goproxy.io
13 | # export GO111MODULE=on
14 |
15 |
16 | apt -y install build-essential git make libelf-dev strace tar bpfcc-tools libbpf-dev
17 |
18 | # clang -v
19 | apt -y install clang llvm
20 |
21 | apt -y install golang
22 |
--------------------------------------------------------------------------------
/plugins/dztasks/README.md:
--------------------------------------------------------------------------------
1 | # dztasks
2 | 任务调度
3 |
4 |
5 | ### 安装
6 | ```
7 | rm -rf /www/server/mdserver-web/plugins/dztasks && cd /www/server/mdserver-web/plugins && rm -rf dztasks && git clone https://github.com/mw-plugin/dztasks && cd dztasks && rm -rf .git && cd /www/server/mdserver-web/plugins/dztasks && bash install.sh install 1.1
8 | ```
9 |
--------------------------------------------------------------------------------
/plugins/dztasks/config/dztasks.conf:
--------------------------------------------------------------------------------
1 | app_name = dztasks
2 | run_mode = prod
3 |
4 | [web]
5 | http_port = 11011
6 |
7 | [session]
8 | provider = file
9 |
10 | [admin]
11 | user = {$ADMIN_NAME}
12 | pass = {$ADMIN_PASS}
13 |
14 | [plugins]
15 | path = {$SERVER_APP}/plugins
16 |
17 | [security]
18 | install_lock = true
19 | secret_key = VQOXEKGNIAIDXQI
20 |
--------------------------------------------------------------------------------
/plugins/dztasks/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/dztasks/ico.png
--------------------------------------------------------------------------------
/plugins/dztasks/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "任务调度管理",
4 | "name": "dztasks",
5 | "title": "dztasks",
6 | "shell": "install.sh",
7 | "versions":["1.1"],
8 | "tip": "soft",
9 | "checks": "server/dztasks",
10 | "path": "server/dztasks",
11 | "display": 1,
12 | "author": "dztasks",
13 | "date": "2024-10-06",
14 | "home": "",
15 | "type": 0,
16 | "pid": "5"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/dztasks/init.d/dztasks.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=dztasks server
3 | After=network.service
4 | After=syslog.target
5 |
6 | [Service]
7 | User=root
8 | Group=root
9 | Type=simple
10 | WorkingDirectory={$SERVER_PATH}/dztasks
11 | ExecStart={$SERVER_PATH}/dztasks/dztasks web
12 | ExecReload=/bin/kill -USR2 $MAINPID
13 | PermissionsStartOnly=true
14 | LimitNOFILE=5000
15 | Restart=on-failure
16 | RestartSec=10
17 | RestartPreventExitStatus=1
18 | PrivateTmp=false
19 |
20 | [Install]
21 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/fail2ban/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/fail2ban/ico.png
--------------------------------------------------------------------------------
/plugins/fail2ban/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 9,
3 | "ps": "防止恶意IP地址暴力破解服务、站点,禁止导致多个身份验证错误的主机",
4 | "name": "fail2ban",
5 | "title": "fail2ban",
6 | "shell": "install.sh",
7 | "versions":["1.1.0"],
8 | "updates":["1.1.0"],
9 | "tip": "soft",
10 | "checks": "server/fail2ban",
11 | "path": "server/fail2ban",
12 | "display": 1,
13 | "author": "fail2ban",
14 | "date": "2024-07-28",
15 | "home": "https://www.fail2ban.org",
16 | "type": 0,
17 | "pid": "4"
18 | }
19 |
--------------------------------------------------------------------------------
/plugins/fail2ban/tpl/jail.d/default.conf:
--------------------------------------------------------------------------------
1 | [DEFAULT]
2 | backend = systemd
--------------------------------------------------------------------------------
/plugins/fail2ban/tpl/jail.d/sshd.conf:
--------------------------------------------------------------------------------
1 | #sshd-START
2 | [sshd]
3 | enabled = true
4 | filter = sshd
5 | port = 2022,no
6 | maxretry = 5
7 | findtime = 300
8 | bantime = 86400
9 | action = %(action_mwl)s
10 | logpath = /var/log/auth.log
11 | #sshd-END
--------------------------------------------------------------------------------
/plugins/gdrive/credentials.json:
--------------------------------------------------------------------------------
1 | {
2 | "web": {
3 | "client_id": "226011946234-d3e1vashgag64utjedu1ljt9u39ncrpq.apps.googleusercontent.com",
4 | "project_id": "light-willow-341609",
5 | "auth_uri": "https://accounts.google.com/o/oauth2/auth",
6 | "token_uri": "https://oauth2.googleapis.com/token",
7 | "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
8 | "client_secret": "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",
9 | "redirect_uris": [
10 | "https://drive.aapanel.com"
11 | ]
12 | }
13 | }
--------------------------------------------------------------------------------
/plugins/gdrive/credentials_bak.json:
--------------------------------------------------------------------------------
1 | {
2 | "web": {
3 | "client_id": "540181629246-1horo9i4htamdbhiqar9rcbq33bqe2ob.apps.googleusercontent.com",
4 | "project_id": "plated-inn-369901",
5 | "auth_uri": "https://accounts.google.com/o/oauth2/auth",
6 | "token_uri": "https://oauth2.googleapis.com/token",
7 | "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
8 | "client_secret": "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",
9 | "redirect_uris": ["https://drive.aapanel.com"]
10 | }
11 | }
--------------------------------------------------------------------------------
/plugins/gdrive/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/gdrive/ico.png
--------------------------------------------------------------------------------
/plugins/gdrive/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "hook":["backup"],
3 | "sort":3,
4 | "title":"谷歌云网盘",
5 | "tip":"lib",
6 | "name":"gdrive",
7 | "type":"扩展",
8 | "ps":"备份你的数据到谷歌云网盘",
9 | "versions":"2.0",
10 | "shell":"install.sh",
11 | "checks": "server/gdrive",
12 | "path":"server/gdrive",
13 | "author":"google",
14 | "home":"https://drive.google.com/",
15 | "api_doc":"https://developers.google.com/drive/api/guides/about-sdk?hl=zh_CN",
16 | "api_doc2":"https://developers.google.cn/drive/api/reference/rest/v3/comments/list?hl=zh-cn",
17 | "date":"2022-06-26",
18 | "pid":"5"
19 | }
--------------------------------------------------------------------------------
/plugins/gitea/hook/post-receive.tpl:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | sh -x {$PATH}/commit 2>{$PATH}/sh.log
--------------------------------------------------------------------------------
/plugins/gitea/hook/self_hook.tpl:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | H_DIR={$HOOK_DIR}
4 | HL_DIR={$HOOK_LOGS_DIR}
5 |
6 |
7 | SH_LIST=`cd ${H_DIR} && ls | grep ".sh$"`
8 |
9 | for sh_f in $SH_LIST; do
10 | ABS_FILE=${H_DIR}/${sh_f}
11 | ABS_LOGS=${HL_DIR}/${sh_f}.log
12 | echo "sh ${ABS_FILE} 2>${ABS_LOGS}"
13 | sh -x ${ABS_FILE} 2>${ABS_LOGS}
14 | done
--------------------------------------------------------------------------------
/plugins/gitea/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/gitea/ico.png
--------------------------------------------------------------------------------
/plugins/gitea/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "ps": "Gitea是一个开源社区驱动的轻量级代码托管解决方案。",
3 | "name": "gitea",
4 | "title": "Gitea",
5 | "versions": ["1.17.2","1.18.5","1.22.1"],
6 | "tip": "soft",
7 | "install_pre_inspection":false,
8 | "uninstall_pre_inspection":true,
9 | "checks": "server/gitea",
10 | "path":"server/gitea",
11 | "author": "gitea",
12 | "date": "2022-10-03",
13 | "home": "https://dl.gitea.io/",
14 | "type": "Git服务器",
15 | "shell": "install.sh",
16 | "pid": "3",
17 | "sort": 7
18 | }
--------------------------------------------------------------------------------
/plugins/gitea/init.d/gitea.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Gitea (Git with a cup of tea)
3 | After=syslog.target
4 | After=network.target
5 |
6 | [Service]
7 | RestartSec=2s
8 | Type=simple
9 | User=www
10 | Group=www
11 | WorkingDirectory={$SERVER_PATH}/gitea
12 | ExecStart={$SERVER_PATH}/gitea/gitea web
13 | Restart=always
14 | Environment=USER=www HOME=/home/www GITEA_WORK_DIR={$SERVER_PATH}/gitea
15 | RemainAfterExit=yes
16 | #AmbientCapabilities=CAP_NET_BIND_SERVICE
17 | #CapabilityBoundingSet=CAP_NET_BIND_SERVICE
18 |
19 | [Install]
20 | WantedBy=multi-user.target
21 |
--------------------------------------------------------------------------------
/plugins/gogs/hook/post-receive.tpl:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | sh -x {$PATH}/commit 2>{$PATH}/sh.log
--------------------------------------------------------------------------------
/plugins/gogs/hook/self_hook.tpl:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | H_DIR={$HOOK_DIR}
4 | HL_DIR={$HOOK_LOGS_DIR}
5 |
6 |
7 | SH_LIST=`cd ${H_DIR} && ls | grep ".sh$"`
8 |
9 | for sh_f in $SH_LIST; do
10 | ABS_FILE=${H_DIR}/${sh_f}
11 | ABS_LOGS=${HL_DIR}/${sh_f}.log
12 | echo "sh ${ABS_FILE} 2>${ABS_LOGS}"
13 | sh -x ${ABS_FILE} 2>${ABS_LOGS}
14 | done
--------------------------------------------------------------------------------
/plugins/gogs/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/gogs/ico.png
--------------------------------------------------------------------------------
/plugins/gogs/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "ps": "Gogs是一款极易搭建的自助Git服务",
3 | "name": "gogs",
4 | "title": "Gogs",
5 | "versions": ["0.11.86","0.12.9","0.13.0"],
6 | "tip": "soft",
7 | "checks": "server/gogs",
8 | "path":"server/gogs",
9 | "author": "midoks",
10 | "date": "2018-04-01",
11 | "home": "https://gogs.io",
12 | "type": "Git服务器",
13 | "shell": "install.sh",
14 | "pid": "3",
15 | "sort": 7
16 | }
--------------------------------------------------------------------------------
/plugins/gogs/init.d/gogs.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Gogs
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/gogs/init.d/gogs start
8 | ExecStop={$SERVER_PATH}/gogs/init.d/gogs stop
9 | RemainAfterExit=yes
10 |
11 | [Install]
12 | WantedBy=multi-user.target
13 |
--------------------------------------------------------------------------------
/plugins/gorse/README.md:
--------------------------------------------------------------------------------
1 | # gorse
2 | 推荐系统
3 |
4 |
5 | # 脚本安装
6 | cd /www/server/mdserver-web/plugins && rm -rf gorse && git clone https://github.com/mw-plugin/gorse && cd gorse && rm -rf .git && cd /www/server/mdserver-web/plugins/gorse && bash install.sh install 0.4.15
--------------------------------------------------------------------------------
/plugins/gorse/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/gorse/ico.png
--------------------------------------------------------------------------------
/plugins/gorse/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "一款高效简单的推荐系统【单机】",
4 | "name": "gorse",
5 | "title": "Gorse",
6 | "shell": "install.sh",
7 | "versions":["0.4.15"],
8 | "tip": "soft",
9 | "install_pre_inspection":true,
10 | "checks": "server/gorse",
11 | "path": "server/gorse",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2024-06-12",
15 | "home": "https://gorse.io/zh/docs/master/deploy/binary.html",
16 | "type": 0,
17 | "pid": "5"
18 | }
19 |
--------------------------------------------------------------------------------
/plugins/gorse/init.d/gorse.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Gorse, an open source recommender system service written in Go.
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | Restart=always
8 | ExecStart={$SERVER_PATH}/gorse/bin/gorse-in-one -c {$SERVER_PATH}/gorse/gorse.toml \
9 | --log-path {$SERVER_PATH}/gorse/gorse.log \
10 | --cache-path {$SERVER_PATH}/gorse/data/cache.data
11 |
12 | [Install]
13 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/haproxy/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/haproxy/ico.png
--------------------------------------------------------------------------------
/plugins/haproxy/index.html:
--------------------------------------------------------------------------------
1 |
14 |
--------------------------------------------------------------------------------
/plugins/haproxy/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "可靠、高性能的TCP/HTTP负载平衡器",
4 | "name": "haproxy",
5 | "title": "haproxy",
6 | "shell": "install.sh",
7 | "versions":["2.6"],
8 | "updates":["2.6"],
9 | "tip": "soft",
10 | "checks": "server/haproxy",
11 | "path": "server/haproxy",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2022-08-26",
15 | "home": "https://www.haproxy.org/",
16 | "doc1": "https://www.haproxy.org/",
17 | "type": 0,
18 | "pid": "4"
19 | }
--------------------------------------------------------------------------------
/plugins/haproxy/init.d/haproxy.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=he Reliable, High Performance TCP/HTTP Load Balancer
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStartPre={$SERVER_PATH}/haproxy/sbin/haproxy -c -f {$SERVER_PATH}/haproxy/haproxy.conf
8 | ExecStart={$SERVER_PATH}/haproxy/sbin/haproxy -D -f {$SERVER_PATH}/haproxy/haproxy.conf
9 | ExecReload={$SERVER_PATH}/haproxy/sbin/haproxy -f {$SERVER_PATH}/haproxy/haproxy.conf -c -q
10 | Restart=on-failure
11 |
12 | [Install]
13 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/imail/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/imail/ico.png
--------------------------------------------------------------------------------
/plugins/imail/index.html:
--------------------------------------------------------------------------------
1 |
14 |
15 |
--------------------------------------------------------------------------------
/plugins/imail/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "[DEV]简单邮件服务",
4 | "name": "imail",
5 | "title": "邮件服务",
6 | "shell": "install.sh",
7 | "versions":["0.0.19"],
8 | "updates":["0.0.19"],
9 | "tip": "soft",
10 | "checks": "server/imail",
11 | "path": "server/imail",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2022-09-26",
15 | "home": "https://github.com/midoks/mdserver-web",
16 | "type": 0,
17 | "pid": "5"
18 | }
--------------------------------------------------------------------------------
/plugins/imail/init.d/imail.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Imail Simple Mail Server
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/imail/init.d/imail start
8 | ExecStop={$SERVER_PATH}/imail/init.d/imail stop
9 | RemainAfterExit=yes
10 |
11 | [Install]
12 | WantedBy=multi-user.target
13 |
--------------------------------------------------------------------------------
/plugins/imail/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | serverPath=$(dirname "$rootPath")
9 |
10 | action=$1
11 | type=$2
12 |
13 | if [ "${2}" == "" ];then
14 | echo '缺少安装脚本...'
15 | exit 0
16 | fi
17 |
18 | if [ ! -d $curPath/versions/$2 ];then
19 | echo '缺少安装脚本2...'
20 | exit 0
21 | fi
22 |
23 | sh -x $curPath/versions/$2/install.sh $1
24 |
--------------------------------------------------------------------------------
/plugins/keepalived/config/keepalived.conf:
--------------------------------------------------------------------------------
1 | ! Configuration File for keepalived
2 |
3 | global_defs {
4 | router_id MYSQL_MHA
5 | }
6 |
7 | vrrp_script chk_mysql_port {
8 | script "{$SERVER_PATH}/keepalived/scripts/chk.sh mysql"
9 | interval 2
10 | weight –5
11 | fall 2
12 | rise 1
13 | }
14 |
15 | vrrp_instance VI_MYSQL {
16 | state MASTER
17 | interface {$ETH_XX}
18 | virtual_router_id 51
19 | priority 100
20 | advert_int 1
21 | authentication {
22 | auth_type PASS
23 | auth_pass 1111
24 | }
25 | virtual_ipaddress {
26 | 192.168.10.10
27 | }
28 |
29 | track_script {
30 | chk_mysql_port
31 | }
32 | }
--------------------------------------------------------------------------------
/plugins/keepalived/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/keepalived/ico.png
--------------------------------------------------------------------------------
/plugins/keepalived/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "[内网]优秀的高可用软件",
4 | "name": "keepalived",
5 | "title": "keepalived",
6 | "shell": "install.sh",
7 | "versions":["2.2.8"],
8 | "tip": "soft",
9 | "checks": "server/keepalived",
10 | "path": "server/keepalived",
11 | "display": 1,
12 | "author": "keepalived",
13 | "date": "2023-10-22",
14 | "home": "https://keepalived.org/download.html",
15 | "type": "soft",
16 | "pid": "4"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/keepalived/init.d/keepalived.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Redis In-Memory Data Store
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/keepalived/sbin/keepalived -D
8 | ExecReload=/bin/kill -USR1 $MAINPID
9 | Restart=on-failure
10 | StandardOutput={$SERVER_PATH}/keepalived/keepalived.log
11 |
12 | [Install]
13 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/keepalived/scripts/chk.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # 计划任务,恢复后,可自动拉起keepalived
4 | # bash {$SERVER_PATH}/keepalived/scripts/chk.sh mysql
5 |
6 | cd {$SERVER_PATH}/keepalived
7 |
8 | # check script bash
9 | curPath=`pwd`
10 | rootPath=$(dirname "$curPath")
11 |
12 | SOFT=$1
13 |
14 | if [ "$SOFT" == "mysql" ];then
15 | bash ${rootPath}/keepalived/scripts/chk_mysql.sh > ${rootPath}/keepalived/keepalived.log
16 | else
17 | echo "you should use [chk.sh mysql] exp ."
18 | fi
--------------------------------------------------------------------------------
/plugins/keepalived/tpl/keepalived.mysql.backup.conf:
--------------------------------------------------------------------------------
1 | ! Configuration File for keepalived
2 |
3 | global_defs {
4 | router_id MYSQL_MHA
5 | }
6 |
7 | vrrp_script chk_mysql_port {
8 | script "{$SERVER_PATH}/scripts/chk.sh mysql"
9 | interval 2
10 | weight –5
11 | fall 2
12 | rise 1
13 | }
14 |
15 | vrrp_instance VI_MYSQL {
16 | state 这里所有节点定义为BACKUP
17 | interface {$ETH_XX}
18 | virtual_router_id 51
19 | priority 100
20 | advert_int 1
21 | authentication {
22 | auth_type PASS
23 | auth_pass 1111
24 | }
25 | virtual_ipaddress {
26 | 192.168.10.10
27 | }
28 |
29 | track_script {
30 | chk_mysql_port
31 | }
32 | }
--------------------------------------------------------------------------------
/plugins/keepalived/tpl/keepalived.mysql.master.conf:
--------------------------------------------------------------------------------
1 | ! Configuration File for keepalived
2 |
3 | global_defs {
4 | router_id MYSQL_MHA
5 | }
6 |
7 | vrrp_script chk_mysql_port {
8 | script "{$SERVER_PATH}/scripts/chk.sh mysql"
9 | interval 2
10 | weight –5
11 | fall 2
12 | rise 1
13 | }
14 |
15 | vrrp_instance VI_MYSQL {
16 | state MASTER
17 | interface {$ETH_XX}
18 | virtual_router_id 51
19 | priority 101
20 | advert_int 1
21 | authentication {
22 | auth_type PASS
23 | auth_pass 1111
24 | }
25 | virtual_ipaddress {
26 | 192.168.10.10
27 | }
28 |
29 | track_script {
30 | chk_mysql_port
31 | }
32 | }
--------------------------------------------------------------------------------
/plugins/lam/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/lam/ico.png
--------------------------------------------------------------------------------
/plugins/lam/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "title":"LAM",
3 | "tip":"soft",
4 | "name":"lam",
5 | "type":"运行环境",
6 | "ps":"LDAP管理工具(LAM)",
7 | "versions":["9.0"],
8 | "shell":"install.sh",
9 | "checks":"server/lam",
10 | "path": "server/lam",
11 | "author":"gruberroland",
12 | "home":"https://github.com/LDAPAccountManager",
13 | "date":"2025-1-28",
14 | "pid": "2"
15 | }
--------------------------------------------------------------------------------
/plugins/ldap/config/ldap.conf:
--------------------------------------------------------------------------------
1 | #
2 | # LDAP Defaults
3 | #
4 |
5 | # See ldap.conf(5) for details
6 | # This file should be world readable but not world writable.
7 |
8 | BASE dc=mw,dc=com
9 | URI ldap://{$IP} ldap://{$IP}:666
10 |
11 | #SIZELIMIT 12
12 | #TIMELIMIT 15
13 | #DEREF never
14 |
15 | # TLS certificates (needed for GnuTLS)
16 | TLS_CACERT /etc/ssl/certs/ca-certificates.crt
17 |
18 |
--------------------------------------------------------------------------------
/plugins/ldap/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/ldap/ico.png
--------------------------------------------------------------------------------
/plugins/ldap/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":4,
3 | "ps": "LDAP轻量目录服务",
4 | "name": "ldap",
5 | "title": "LDAP",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "tip": "soft",
9 | "install_pre_inspection":true,
10 | "checks": "server/ldap",
11 | "path": "server/ldap",
12 | "display": 1,
13 | "author": "ladp",
14 | "date": "2025-01-28",
15 | "home": "",
16 | "type": 0,
17 | "pid": "4"
18 | }
19 |
--------------------------------------------------------------------------------
/plugins/lvs/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/lvs/ico.png
--------------------------------------------------------------------------------
/plugins/lvs/index.html:
--------------------------------------------------------------------------------
1 |
14 |
--------------------------------------------------------------------------------
/plugins/lvs/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "[内网]LVS超强负载均衡,通过ipvsadm管理[暂时不可用]",
4 | "name": "lvs",
5 | "title": "LVS",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "checks": "server/lvs",
11 | "path": "server/lvs",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2023-11-17",
15 | "home": "http://www.linuxvirtualserver.org/",
16 | "type": 0,
17 | "pid": "4"
18 | }
--------------------------------------------------------------------------------
/plugins/lvs/readme.md:
--------------------------------------------------------------------------------
1 | debian
2 |
3 | # 查看网卡
4 | ls /sys/class/net/
5 |
6 | ifconfig ens256 172.16.204.100 netmask 255.255.255.255 broadcast 192.168.212.100 up
7 |
8 | route add -host 172.16.204.100 dev ens256
9 |
10 |
11 | ipvsadm -A -t 172.16.204.100:80 -s rr
12 | ipvsadm -a -t 172.16.204.100:80 -r 172.16.204.129:80 -m
13 |
14 | # 清空LVS规则
15 |
16 | ipvsadm -C
17 |
18 | # 查看LVS
19 |
20 | ipvsadm -L -n
--------------------------------------------------------------------------------
/plugins/mariadb/conf/classic.cnf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mariadb/conf/classic.cnf
--------------------------------------------------------------------------------
/plugins/mariadb/conf/gtid.cnf:
--------------------------------------------------------------------------------
1 | [mysqld]
2 | # SHOW GLOBAL VARIABLES LIKE '%gtid%'
3 | gtid_mode=ON
4 | enforce_gtid_consistency=ON
--------------------------------------------------------------------------------
/plugins/mariadb/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mariadb/ico.png
--------------------------------------------------------------------------------
/plugins/mariadb/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":2,
3 | "hook":["database"],
4 | "title":"MariaDB",
5 | "tip":"soft",
6 | "name":"mariadb",
7 | "type":"运行环境",
8 | "ps":"一种关系数据库管理系统!",
9 | "uninstall_pre_inspection":true,
10 | "checks": "server/mariadb",
11 | "path": "server/mariadb",
12 | "versions":["10.6","10.7","10.8","10.9","10.11","11.0","11.1","11.2","11.3","11.4","11.5","11.6","11.7"],
13 | "shell":"install.sh",
14 | "checks":"server/mariadb",
15 | "path":"server/mariadb",
16 | "author":"mariadb",
17 | "home":"https://mariadb.org/",
18 | "date":"2022-07-12",
19 | "pid": "2"
20 | }
--------------------------------------------------------------------------------
/plugins/mariadb/init.d/mariadb.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=MariaDB Server: The open source relational database
3 | Documentation=https://mariadb.org/download/?t=mariadb
4 | After=network.service
5 | After=syslog.target
6 |
7 | [Service]
8 | User=mysql
9 | Group=mysql
10 | Type=simple
11 | ExecStart={$SERVER_PATH}/mariadb/bin/mysqld --defaults-file={$SERVER_PATH}/mariadb/etc/my.cnf
12 | ExecReload=/bin/kill -USR2 $MAINPID
13 | PermissionsStartOnly=true
14 | LimitNOFILE=5000
15 | Restart=on-failure
16 | RestartSec=10
17 | RestartPreventExitStatus=1
18 | PrivateTmp=false
19 |
20 |
21 | [Install]
22 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/memcached/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/memcached/ico.png
--------------------------------------------------------------------------------
/plugins/memcached/index.html:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/plugins/memcached/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 5,
3 | "ps": "是一个高性能的分布式内存对象缓存系统",
4 | "name": "memcached",
5 | "title": "Memcached",
6 | "shell": "install.sh",
7 | "versions":["1.6"],
8 | "updates":["1.6.38"],
9 | "tip": "soft",
10 | "checks": "server/memcached",
11 | "path":"server/memcached",
12 | "display": 1,
13 | "author": "memcached",
14 | "date": "2017-04-01",
15 | "home": "http://memcached.org/",
16 | "type": 0,
17 | "pid": "2"
18 | }
--------------------------------------------------------------------------------
/plugins/memcached/init.d/memcached.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Free & open source, high-performance, distributed memory object caching system.
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | EnvironmentFile=-{$SERVER_PATH}/memcached/memcached.env
8 | ExecStart={$SERVER_PATH}/memcached/bin/memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN $OPTIONS
9 | ExecReload=/bin/kill -USR2 $MAINPID
10 | Restart=on-failure
11 |
12 | [Install]
13 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/migration_api/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/migration_api/ico.png
--------------------------------------------------------------------------------
/plugins/migration_api/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "一键迁移,仅网站数据和MySQL数据(仅支持源码安装软件)[暂时不可用]",
4 | "name": "migration_api",
5 | "title": "一键迁移API",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "checks": "server/migration_api",
11 | "path":"server/migration_api",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2022-01-17",
15 | "home": "https://github.com/midoks/mdserver-web",
16 | "type": 0,
17 | "pid": "4"
18 | }
--------------------------------------------------------------------------------
/plugins/mongodb/config/mongodb.bak.conf:
--------------------------------------------------------------------------------
1 | directoryperdb = true
2 | dbpath = {$SERVER_PATH}/mongodb/data
3 | logpath = {$SERVER_PATH}/mongodb/logs/mongodb.log
4 | logappend = true
5 | bind_ip = 127.0.0.1
6 | port = 27017
7 | fork = true
8 | auth = false
9 | #smallfiles = true
10 |
11 | oplogSize=100
12 |
13 | # Master/slave replication is no longer supported
14 | #master = true
15 |
16 | #replSet = test
17 |
18 | pidfilepath = {$SERVER_PATH}/mongodb/mongodb.pid
19 |
--------------------------------------------------------------------------------
/plugins/mongodb/config/mongodb.conf:
--------------------------------------------------------------------------------
1 | net:
2 | bindIp: 127.0.0.1
3 | port: 27017
4 | processManagement:
5 | fork: true
6 | pidFilePath: {$SERVER_PATH}/mongodb/mongodb.pid
7 | security:
8 | authorization: disabled
9 | javascriptEnabled: false
10 | storage:
11 | dbPath: {$SERVER_PATH}/mongodb/data
12 | directoryPerDB: true
13 | systemLog:
14 | destination: file
15 | logAppend: true
16 | logRotate: reopen
17 | path: {$SERVER_PATH}/mongodb/logs/mongodb.log
18 | replication:
19 | oplogSizeMB: 2048
--------------------------------------------------------------------------------
/plugins/mongodb/config/mongodb.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE IF NOT EXISTS `config` (
2 | `id` INTEGER PRIMARY KEY AUTOINCREMENT,
3 | `mg_root` TEXT
4 | );
5 |
6 | INSERT INTO `config` (`id`, `mg_root`) VALUES (1, 'mg_root');
7 |
8 |
9 | CREATE TABLE IF NOT EXISTS `databases` (
10 | `id` INTEGER PRIMARY KEY AUTOINCREMENT,
11 | `name` TEXT,
12 | `username` TEXT,
13 | `password` TEXT,
14 | `accept` TEXT,
15 | `rw` TEXT DEFAULT 'rw',
16 | `ps` TEXT,
17 | `addtime` TEXT
18 | );
19 |
20 |
--------------------------------------------------------------------------------
/plugins/mongodb/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mongodb/ico.png
--------------------------------------------------------------------------------
/plugins/mongodb/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":3,
3 | "hook":["database"],
4 | "ps": "一个高性能的NOSQL数据库【社区版】",
5 | "name": "mongodb",
6 | "title": "MongoDB",
7 | "shell": "install.sh",
8 | "install_pre_inspection":true,
9 | "uninstall_pre_inspection":true,
10 | "versions":["4.4","5.0","6.0","7.0","8.0"],
11 | "tip": "soft",
12 | "checks": "server/mongodb",
13 | "path": "server/mongodb",
14 | "display": 1,
15 | "author": "mongodb",
16 | "date": "2021-11-23",
17 | "home": "https://www.mongodb.com/docs/v4.4/installation/",
18 | "type": 0,
19 | "pid": "2"
20 | }
--------------------------------------------------------------------------------
/plugins/mosquitto/config/mosquitto.conf:
--------------------------------------------------------------------------------
1 |
2 | allow_anonymous true
3 | listener 1883
--------------------------------------------------------------------------------
/plugins/mosquitto/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mosquitto/ico.png
--------------------------------------------------------------------------------
/plugins/mosquitto/index.html:
--------------------------------------------------------------------------------
1 |
14 |
--------------------------------------------------------------------------------
/plugins/mosquitto/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 4,
3 | "ps": "MQTT是一个消息队列遥测传输软件",
4 | "name": "mosquitto",
5 | "title": "mosquitto",
6 | "shell": "install.sh",
7 | "versions":["2.0.18"],
8 | "updates":["2.0.18"],
9 | "tip": "soft",
10 | "checks": "server/mosquitto",
11 | "path": "server/mosquitto",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2023-09-28",
15 | "home": "https://mosquitto.org",
16 | "type": "soft",
17 | "pid": "4"
18 | }
19 |
--------------------------------------------------------------------------------
/plugins/mosquitto/init.d/mosquitto.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Mosquitto MQTT Broker
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/mosquitto/sbin/mosquitto -c {$SERVER_PATH}/mosquitto/etc/mosquitto/mosquitto.conf
8 | ExecReload=/bin/kill -USR2 $MAINPID
9 | Restart=on-failure
10 |
11 | [Install]
12 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/msonedrive/credentials.json:
--------------------------------------------------------------------------------
1 | {
2 | "onedrive-international": {
3 | "client_id": "08125e6b-6502-4ac9-9548-ad682f00848d",
4 | "client_secret": "0WA8Q~sZkZFZKv50ryP4ux~.fpVtbHw7BuTZmbQB",
5 | "authority": "https://login.microsoftonline.com/common",
6 | "token_endpoint": "/oauth2/v2.0/token",
7 | "authorize_endpoint": "/oauth2/v2.0/authorize",
8 | "scopes": "offline_access Files.ReadWrite.All User.Read",
9 | "redirect_uri": "http://localhost",
10 | "api_uri": "https://graph.microsoft.com/v1.0"
11 | }
12 | }
--------------------------------------------------------------------------------
/plugins/msonedrive/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/msonedrive/ico.png
--------------------------------------------------------------------------------
/plugins/msonedrive/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":5,
3 | "hook":["backup"],
4 | "title": "OneDrive",
5 | "tip": "lib",
6 | "name": "msonedrive",
7 | "type": "sort",
8 | "ps": "微软家的云网盘服务",
9 | "versions": "1.0",
10 | "shell": "install.sh",
11 | "checks": "server/msonedrive",
12 | "author": "midoks",
13 | "date": "2023-8-18",
14 | "pid": "5"
15 | }
16 |
--------------------------------------------------------------------------------
/plugins/mtproxy/conf/mt.toml:
--------------------------------------------------------------------------------
1 | debug = false
2 |
3 | secret = "{$SECRET}"
4 | bind-to = "0.0.0.0:{$PORT}"
5 |
6 | concurrency = 256
7 | prefer-ip = "prefer-ipv4"
8 | domain-fronting-port = 443
9 | tolerate-time-skewness = "10s"
10 |
11 | [network]
12 | doh-ip = "9.9.9.9"
13 |
14 | [network.timeout]
15 | tcp = "5s"
16 | http = "10s"
17 | idle = "1m"
18 |
19 | [defense.anti-replay]
20 | enabled = true
21 | max-size = "1mib"
22 | error-rate = 0.001
23 |
24 |
--------------------------------------------------------------------------------
/plugins/mtproxy/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mtproxy/ico.png
--------------------------------------------------------------------------------
/plugins/mtproxy/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "你的纸飞机",
4 | "install_pre_inspection":true,
5 | "name": "mtproxy",
6 | "title": "mtproxy",
7 | "shell": "install.sh",
8 | "versions":["1.0"],
9 | "updates":["1.0"],
10 | "tip": "soft",
11 | "checks": "server/mtproxy",
12 | "path": "server/mtproxy",
13 | "display": 1,
14 | "author": "TelegramMessenger",
15 | "date": "2022-07-09",
16 | "home": "https://github.com/9seconds/mtg",
17 | "type": 0,
18 | "pid": "5"
19 | }
--------------------------------------------------------------------------------
/plugins/mtproxy/init.d/mtproxy.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=MTProxy
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | WorkingDirectory={$SERVER_PATH}/mtproxy
8 | ExecStart={$SERVER_PATH}/mtproxy/mtg/mtg run {$SERVER_PATH}/mtproxy/mt.toml
9 | RestartSec=3
10 | Restart=on-failure
11 | AmbientCapabilities=CAP_NET_BIND_SERVICE
12 |
13 | [Install]
14 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/mysql-community/conf/classic.cnf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mysql-community/conf/classic.cnf
--------------------------------------------------------------------------------
/plugins/mysql-community/conf/gtid.cnf:
--------------------------------------------------------------------------------
1 | [mysqld]
2 | # SHOW GLOBAL VARIABLES LIKE '%gtid%'
3 | gtid_mode=ON
4 | enforce_gtid_consistency=ON
--------------------------------------------------------------------------------
/plugins/mysql-community/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mysql-community/ico.png
--------------------------------------------------------------------------------
/plugins/mysql-community/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":1,
3 | "hook":["database"],
4 | "title":"MySQL[Tar]",
5 | "tip":"soft",
6 | "name":"mysql-community",
7 | "type":"运行环境",
8 | "ps":"一种关系数据库管理系统(极速安装)",
9 | "todo_versions":["5.7","8.0"],
10 | "versions":["5.7","8.0","8.2","8.3","8.4","9.0","9.1","9.2"],
11 | "shell":"install.sh",
12 | "install_pre_inspection":true,
13 | "uninstall_pre_inspection":true,
14 | "checks":"server/mysql-community",
15 | "path":"server/mysql-community",
16 | "author":"mysql",
17 | "home":"https://dev.mysql.com/downloads/mysql",
18 | "date":"2022-06-29",
19 | "pid": "6"
20 | }
--------------------------------------------------------------------------------
/plugins/mysql/conf/classic.cnf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mysql/conf/classic.cnf
--------------------------------------------------------------------------------
/plugins/mysql/conf/gtid.cnf:
--------------------------------------------------------------------------------
1 | [mysqld]
2 | # SHOW GLOBAL VARIABLES LIKE '%gtid%'
3 | gtid_mode=ON
4 | enforce_gtid_consistency=ON
5 | binlog_checksum=NONE
--------------------------------------------------------------------------------
/plugins/mysql/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/mysql/ico.png
--------------------------------------------------------------------------------
/plugins/mysql/init.d/mysql.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=MySQL Community Server
3 | Documentation=man:mysqld(8)
4 | Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
5 | After=network.service
6 | After=syslog.target
7 |
8 | [Service]
9 | User=mysql
10 | Group=mysql
11 | Type=simple
12 | ExecStart={$SERVER_PATH}/mysql/bin/mysqld --defaults-file={$SERVER_PATH}/mysql/etc/my.cnf
13 | ExecReload=/bin/kill -USR2 $MAINPID
14 | TimeoutSec=0
15 | PermissionsStartOnly=true
16 | LimitNOFILE=5000
17 | Restart=on-failure
18 | RestartSec=10
19 | RestartPreventExitStatus=1
20 | PrivateTmp=false
21 |
22 |
23 | [Install]
24 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/nezha/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/nezha/ico.png
--------------------------------------------------------------------------------
/plugins/nezha/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "哪吒监控面板/改造版",
4 | "name": "nezha",
5 | "title": "哪吒监控",
6 | "shell": "install.sh",
7 | "versions":["0.15.2"],
8 | "tip": "soft",
9 | "checks": "server/nezha",
10 | "path": "server/nezha",
11 | "display": 1,
12 | "author": "midoks",
13 | "date": "2023-06-26",
14 | "home": "https://github.com/midoks/nezha",
15 | "doc1": "https://nezha.wiki/",
16 | "type": 0,
17 | "pid": "5"
18 | }
--------------------------------------------------------------------------------
/plugins/op_load_balance/conf/load_balance.conf:
--------------------------------------------------------------------------------
1 | ## 指定共享内存
2 | lua_shared_dict healthcheck 10m;
--------------------------------------------------------------------------------
/plugins/op_load_balance/conf/upstream.tpl.conf:
--------------------------------------------------------------------------------
1 | upstream {$UPSTREAM_NAME}
2 | {
3 | {$NODE_ALGO}
4 | {$NODE_SERVER_LIST}
5 | }
--------------------------------------------------------------------------------
/plugins/op_load_balance/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/op_load_balance/ico.png
--------------------------------------------------------------------------------
/plugins/op_load_balance/index.html:
--------------------------------------------------------------------------------
1 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/plugins/op_load_balance/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":3,
3 | "title":"OP负载均衡",
4 | "tip":"soft",
5 | "name":"op_load_balance",
6 | "type":"其他插件",
7 | "install_pre_inspection":true,
8 | "ps":"基于OpenResty的负载均衡",
9 | "shell":"install.sh",
10 | "checks":"server/op_load_balance",
11 | "path":"server/op_load_balance",
12 | "author":"midoks",
13 | "home":"https://github.com/midoks",
14 | "date":"2023-02-02",
15 | "pid": "1",
16 | "versions": ["1.0"]
17 | }
--------------------------------------------------------------------------------
/plugins/op_load_balance/lua/health_check.lua.tpl:
--------------------------------------------------------------------------------
1 | local hc = require "resty.upstream.healthcheck"
2 | local ok, err = hc.spawn_checker {
3 | shm = "healthcheck",
4 | type = "http",
5 | upstream = "{$UPSTREAM_NAME}",
6 | http_req = "GET / HTTP/1.0\r\nHost: {$UPSTREAM_NAME}\r\n\r\n",
7 | interval = 2000,
8 | timeout = 6000,
9 | fall = 3,
10 | rise = 2,
11 | valid_statuses = {200, 302},
12 | concurrency = 20,
13 | }
14 |
15 | if not ok then
16 | ngx.log(ngx.ERR, "=======> load balance health checker error: ", err)
17 | return
18 | end
--------------------------------------------------------------------------------
/plugins/op_waf/conf/init.sql:
--------------------------------------------------------------------------------
1 | PRAGMA synchronous = 0;
2 | PRAGMA page_size = 4096;
3 | PRAGMA journal_mode = wal;
4 | PRAGMA journal_size_limit = 1073741824;
5 |
6 | CREATE TABLE IF NOT EXISTS `logs` (
7 | `time` INTEGER,
8 | `ip` TEXT,
9 | `domain` TEXT,
10 | `server_name` TEXT,
11 | `method` TEXT,
12 | `status_code` INTEGER,
13 | `user_agent` TEXT,
14 | `uri` TEXT,
15 | `rule_name` TEXT,
16 | `reason` TEXT
17 | );
18 |
--------------------------------------------------------------------------------
/plugins/op_waf/conf/luawaf.conf:
--------------------------------------------------------------------------------
1 | lua_shared_dict waf_limit 30m;
2 | lua_shared_dict waf_drop_ip 10m;
3 | lua_shared_dict waf_drop_sum 10m;
--------------------------------------------------------------------------------
/plugins/op_waf/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/op_waf/ico.png
--------------------------------------------------------------------------------
/plugins/op_waf/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "hook":[
3 | {
4 | "tag":"site_cb",
5 | "site_cb": {
6 | "title":"网站统计",
7 | "name":"op_waf",
8 | "add":{"func":"reload_hook"},
9 | "update":{"func":"reload_hook"},
10 | "delete":{"func":"reload_hook"}
11 | }
12 | }
13 | ],
14 | "sort":2,
15 | "title":"OP防火墙",
16 | "tip":"soft",
17 | "name":"op_waf",
18 | "type":"其他插件",
19 | "ps":"有效防止sql注入/xss/一句话木马等常见渗透攻击",
20 | "install_pre_inspection":true,
21 | "shell":"install.sh",
22 | "checks":"server/op_waf",
23 | "path":"server/op_waf",
24 | "author":"loveshell",
25 | "home":"https://github.com/loveshell/ngx_lua_waf",
26 | "date":"2019-04-21",
27 | "pid": "1",
28 | "versions": ["0.4.1"]
29 | }
--------------------------------------------------------------------------------
/plugins/op_waf/shell/cpu_usage.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | DST_DIR=/www/server/op_waf
4 | DIS_FILE=${DST_DIR}/cpu.info
5 |
6 | CPU_USAGE=`top -bn 1 | fgrep 'Cpu(s)' | awk '{print 100 -$8}' | awk -F . '{print $1}'`
7 | echo $CPU_USAGE
8 | echo $CPU_USAGE > $DIS_FILE
9 | echo "done success!"
--------------------------------------------------------------------------------
/plugins/op_waf/t/bench/simple.lua:
--------------------------------------------------------------------------------
1 | local function target()
2 | ngx.re.find("hello, world.", [[\w+\.]], "jo")
3 | end
4 | for i = 1, 100 do
5 | target()
6 | end
7 |
8 | collectgarbage()
9 |
10 | ngx.update_time()
11 | local begin = ngx.now()
12 | local N = 1e7
13 | for i = 1, N do
14 | target()
15 | end
16 | ngx.update_time()
17 |
18 | ngx.say("elapsed: ", (ngx.now() - begin) / N)
--------------------------------------------------------------------------------
/plugins/op_waf/t/ngx_demo.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | # cd /www/server/mdserver-web/plugins/op_waf/t && sh ngx_demo.sh
4 | # cd /www/wwwroot/dev156.cachecha.com && sh ngx_demo.sh
5 |
6 |
7 | # only openresty
8 | # pid=`ps -ef|grep openresty | grep -v grep | awk '{print $2}'`
9 | # perf record -F 99 -p $pid -g -- sleep 60
10 |
11 |
12 | #全部
13 | perf record -F 99 -g -a -- sleep 60
14 |
15 |
16 | perf script -i perf.data &> perf.unfold
17 | /opt/FlameGraph/stackcollapse-perf.pl perf.unfold &> perf.folded
18 | /opt/FlameGraph/flamegraph.pl perf.folded > perf.svg
--------------------------------------------------------------------------------
/plugins/op_waf/t/test.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | # apt -y install apache2-utils
6 | # yum -y install httpd-tools
7 |
8 | # ab -c 3000 -n 10000000 http://www.zzzvps.com/
9 | # /cc https://www.zzzvps.com/ 120
10 | # ab -c 10 -n 1000 http://t1.cn/wp-admin/index.php
11 | # ab -c 1000 -n 1000000 http://dev156.cachecha.com/
12 |
13 | curPath=`pwd`
14 | rootPath=$(dirname "$curPath")
15 | rootPath=$(dirname "$rootPath")
16 | rootPath=$(dirname "$rootPath")
17 |
18 | if [ -f ${rootPath}/bin/activate ];then
19 | source ${rootPath}/bin/activate
20 | fi
21 |
22 | python3 index.py
23 |
--------------------------------------------------------------------------------
/plugins/op_waf/waf/area_limit.json:
--------------------------------------------------------------------------------
1 | []
--------------------------------------------------------------------------------
/plugins/op_waf/waf/conf/readme.md:
--------------------------------------------------------------------------------
1 | 自动生成配置文件
--------------------------------------------------------------------------------
/plugins/op_waf/waf/domains.json:
--------------------------------------------------------------------------------
1 | []
--------------------------------------------------------------------------------
/plugins/op_waf/waf/lua/init_preload.lua:
--------------------------------------------------------------------------------
1 | local waf_root = "{$WAF_ROOT}"
2 | local waf_cpath = waf_root.."/waf/lua/?.lua;"..waf_root.."/waf/conf/?.lua;"..waf_root.."/waf/html/?.lua;"
3 | local waf_sopath = waf_root.."/waf/conf/?.so;"
4 |
5 | if not package.path:find(waf_cpath) then
6 | package.path = waf_cpath .. package.path
7 | end
8 |
9 | if not package.cpath:find(waf_sopath) then
10 | package.cpath = waf_sopath .. package.cpath
11 | end
--------------------------------------------------------------------------------
/plugins/op_waf/waf/rule/ip_black.json:
--------------------------------------------------------------------------------
1 | [[[94, 130, 9, 116], [94, 130, 9, 116]]]
--------------------------------------------------------------------------------
/plugins/op_waf/waf/rule/ip_white.json:
--------------------------------------------------------------------------------
1 | [[[127,0,0,1], [127, 0, 0, 255]]]
--------------------------------------------------------------------------------
/plugins/op_waf/waf/rule/ipv6_black.json:
--------------------------------------------------------------------------------
1 | []
--------------------------------------------------------------------------------
/plugins/op_waf/waf/rule/scan_black.json:
--------------------------------------------------------------------------------
1 | {"header": "(Acunetix-Aspect|Acunetix-Aspect-Password|Acunetix-Aspect-Queries|X-WIPP|X-RequestManager-Memo|X-Request-Memo|X-Scan-Memo)", "args": "(/acunetix-wvs-test-for-some-inexistent-file|netsparker|acunetix_wvs_security_test|AppScan|XSS@HERE)", "cookie": "(CustomCookie|acunetixCookie)"}
--------------------------------------------------------------------------------
/plugins/op_waf/waf/rule/url_white.json:
--------------------------------------------------------------------------------
1 | [[1,"^/(phpmyadmin)","MySQL[phpMyAdmin]", 0]]
--------------------------------------------------------------------------------
/plugins/op_waf/waf/site.json:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/plugins/op_waf/waf/total.json:
--------------------------------------------------------------------------------
1 | {"rules":{"path":0,"php_path":0,"upload_ext":0,"user_agent":0,"scan":0,"cookie":0,"post":0,"args":0,"url":0,"cc":0},"sites":{},"total":0}
--------------------------------------------------------------------------------
/plugins/openresty/conf/lua.conf:
--------------------------------------------------------------------------------
1 | lua_package_path "{$SERVER_PATH}/web_conf/nginx/lua/?.lua;{$SERVER_PATH}/openresty/lualib/?.lua;;";
2 | lua_package_cpath "{$SERVER_PATH}/web_conf/nginx/lua/?.so;{$SERVER_PATH}/openresty/lualib/?.so;;";
3 |
4 | lua_code_cache on;
5 |
6 | #init_by_lua_file
7 | init_by_lua_file {$SERVER_PATH}/web_conf/nginx/lua/empty.lua;
8 |
9 | #init_worker_by_lua
10 | init_worker_by_lua_file {$SERVER_PATH}/web_conf/nginx/lua/empty.lua;
11 |
12 | #access_by_lua_file
13 | access_by_lua_file {$SERVER_PATH}/web_conf/nginx/lua/empty.lua;
--------------------------------------------------------------------------------
/plugins/openresty/conf/vhost/0.nginx_status.conf:
--------------------------------------------------------------------------------
1 | server {
2 | listen 80;
3 | listen [::]:80;
4 | server_name 127.0.0.1;
5 | allow 127.0.0.1;
6 | location /nginx_status {
7 | stub_status on;
8 | access_log off;
9 | }
10 | }
--------------------------------------------------------------------------------
/plugins/openresty/conf/vhost/0.websocket.conf:
--------------------------------------------------------------------------------
1 | map $http_upgrade $connection_upgrade {
2 | default upgrade;
3 | '' close;
4 | }
5 |
--------------------------------------------------------------------------------
/plugins/openresty/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/openresty/ico.png
--------------------------------------------------------------------------------
/plugins/openresty/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 0,
3 | "title":"OpenResty",
4 | "tip":"soft",
5 | "name":"openresty",
6 | "type":"其他插件",
7 | "ps":"轻量级,占有内存少,并发能力强",
8 | "shell":"install.sh",
9 | "install_pre_inspection":true,
10 | "checks":"server/openresty",
11 | "path":"server/openresty",
12 | "author":"agentzh",
13 | "home":"http://openresty.org",
14 | "date":"2017-11-24",
15 | "pid": "1",
16 | "versions": ["1.17.8","1.19.3","1.21.4","1.25.3","1.27.1","rtmp"],
17 | "updates": ["1.17.8.2","1.19.3.1","1.21.4.2","1.25.3.2"]
18 | }
--------------------------------------------------------------------------------
/plugins/openresty/init.d/openresty.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=OpenResty is a dynamic web platform based on NGINX and LuaJIT.
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/openresty/bin/openresty -c {$SERVER_PATH}/openresty/nginx/conf/nginx.conf
8 | ExecStop={$SERVER_PATH}/openresty/bin/openresty -s stop
9 | ExecReload={$SERVER_PATH}/openresty/bin/openresty -s reload
10 | KillMode=process
11 | Restart=on-failure
12 |
13 | [Install]
14 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/pgadmin/conf/config_local.py:
--------------------------------------------------------------------------------
1 | LOG_FILE = '{$DATA_PATH}/pgadmin4/pgadmin4.log'
2 | SQLITE_PATH = '{$DATA_PATH}/pgadmin4/pgadmin4.db'
3 | SESSION_DB_PATH = '{$DATA_PATH}/pgadmin4/sessions'
4 | STORAGE_DIR = '{$DATA_PATH}/pgadmin4/storage'
5 | AZURE_CREDENTIAL_CACHE_DIR = '{$DATA_PATH}/pgadmin4/azurecredentialcache'
6 | SERVER_MODE = True
--------------------------------------------------------------------------------
/plugins/pgadmin/conf/pgadmin.conf:
--------------------------------------------------------------------------------
1 | server
2 | {
3 | listen 5051;
4 | server_name 127.0.0.1;
5 | index index.html index.htm index.php;
6 | root {$SERVER_PATH}/pgadmin;
7 |
8 | #error_page 404 /404.html;
9 |
10 | #AUTH_START
11 | auth_basic "Authorization";
12 | auth_basic_user_file {$SERVER_PATH}/pgadmin/pg.pass;
13 | #AUTH_END
14 |
15 | location / {
16 | proxy_pass http://unix:/tmp/pgadmin4.sock;
17 | }
18 |
19 | access_log {$SERVER_PATH}/pgadmin/access.log;
20 | error_log {$SERVER_PATH}/pgadmin/error.log;
21 | }
--------------------------------------------------------------------------------
/plugins/pgadmin/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/pgadmin/ico.png
--------------------------------------------------------------------------------
/plugins/pgadmin/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "title":"pgadmin",
3 | "tip":"soft",
4 | "name":"pgadmin",
5 | "type":"运行环境",
6 | "ps":"全能Postgres数据库Web管理工具",
7 | "versions":["4"],
8 | "shell":"install.sh",
9 | "checks":"server/pgadmin",
10 | "path": "server/pgadmin",
11 | "author":"pgadmin",
12 | "home":"https://www.pgadmin.org/download/pgadmin-4-python/",
13 | "date":"2024-10-1",
14 | "pid": "2"
15 | }
--------------------------------------------------------------------------------
/plugins/pgadmin/init.d/pgadmin.service.tpl:
--------------------------------------------------------------------------------
1 | # It's not recommended to modify this file in-place, because it
2 | # will be overwritten during upgrades. If you want to customize,
3 | # the best way is to use the "systemctl edit" command.
4 | # systemctl daemon-reload
5 |
6 | [Unit]
7 | Description=pgadmin service
8 | After=network.target
9 |
10 | [Service]
11 |
12 | ExecStart={$SERVER_PATH}/pgadmin/run/bin/gunicorn --bind unix:/tmp/pgadmin4.sock --workers=1 --threads=25 --chdir {$SERVER_PATH}/pgadmin/run/lib/{$PY_VER}/site-packages/pgadmin4 pgAdmin4:app
13 | ExecReload=/bin/kill -USR2 $MAINPID
14 | PrivateTmp=false
15 |
16 | [Install]
17 | WantedBy=multi-user.target
18 |
--------------------------------------------------------------------------------
/plugins/php-apt/conf/enable-php.conf:
--------------------------------------------------------------------------------
1 | set $PHP_ENV 1;
2 | location ~ [^/]\.php(/|$)
3 | {
4 | try_files $uri =404;
5 | fastcgi_pass unix:/run/php/php{$PHP_VERSION}-fpm.sock;
6 | fastcgi_index index.php;
7 | include fastcgi.conf;
8 | include {$SERVER_PATH}/web_conf/php/pathinfo.conf;
9 | }
--------------------------------------------------------------------------------
/plugins/php-apt/conf/pathinfo.conf:
--------------------------------------------------------------------------------
1 | set $real_script_name $fastcgi_script_name;
2 | if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
3 | set $real_script_name $1;
4 | set $path_info $2;
5 | }
6 | fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
7 | fastcgi_param SCRIPT_NAME $real_script_name;
8 | fastcgi_param PATH_INFO $path_info;
--------------------------------------------------------------------------------
/plugins/php-apt/conf/php-fpm.conf:
--------------------------------------------------------------------------------
1 | [global]
2 | pid = /run/php/php{$PHP_VERSION}-fpm.pid
3 | error_log = /var/log/php{$PHP_VERSION}-fpm.log
4 | include=/etc/php/{$PHP_VERSION}/fpm/pool.d/*.conf
5 | php_value[auto_prepend_file]={$SERVER_PATH}/php-apt/app_start.php
--------------------------------------------------------------------------------
/plugins/php-apt/conf/phpinfo.conf:
--------------------------------------------------------------------------------
1 | location /{$PHP_VERSION} {
2 | root {$ROOT_PATH}/phpinfo;
3 | include {$SERVER_PATH}/web_conf/php/conf/enable-php-apt{$PHP_VERSION}.conf;
4 | }
--------------------------------------------------------------------------------
/plugins/php-apt/conf/www.conf:
--------------------------------------------------------------------------------
1 | [www]
2 | user = {$PHP_USER}
3 | group = {$PHP_GROUP}
4 |
5 | listen = /run/php/php{$PHP_VERSION}-fpm.sock
6 | listen.owner = {$PHP_USER}
7 | listen.group = {$PHP_GROUP}
8 | listen.backlog = 4096
9 | pm = dynamic
10 | pm.max_children = 50
11 | pm.start_servers = 5
12 | pm.min_spare_servers = 5
13 | pm.max_spare_servers = 35
14 | pm.status_path = /phpfpm_status_apt{$PHP_VERSION}
15 | pm.max_requests = 1000
16 | request_terminate_timeout = 30
17 | request_slowlog_timeout = 10
18 | slowlog = /var/log/fpm-php{$PHP_VERSION}.www.slow.log
19 |
20 | ;php_admin_flag[log_errors] = on
21 | ;php_admin_value[error_log] = /var/log/fpm-php{$PHP_VERSION}.www.log
22 |
23 |
24 |
--------------------------------------------------------------------------------
/plugins/php-apt/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/php-apt/ico.png
--------------------------------------------------------------------------------
/plugins/php-apt/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "PHP是世界上最好的编程语言(极速安装)",
4 | "shell": "install.sh",
5 | "name": "php-apt",
6 | "title": "PHP[APT]",
7 | "coexist": true,
8 | "versions": ["56","70","71","72","73","74","80","81","82","83","84"],
9 | "install_pre_inspection":true,
10 | "tip": "soft",
11 | "checks": "server/php-apt/VERSION",
12 | "path": "server/php-apt/VERSION",
13 | "display": 1,
14 | "author": "Zend",
15 | "date": "2022-07-07",
16 | "home": "https://www.php.net",
17 | "type": "PHP语言解释器",
18 | "pid": "6"
19 | }
--------------------------------------------------------------------------------
/plugins/php-guard/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/php-guard/ico.png
--------------------------------------------------------------------------------
/plugins/php-guard/index.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/plugins/php-guard/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 5,
3 | "ps": "监控PHP-FPM运行状态,防止大批量出现502错误!",
4 | "shell": "install.sh",
5 | "name": "php-guard",
6 | "title": "PHP守护",
7 | "versions": "1.0",
8 | "updates": "1.0",
9 | "tip": "soft",
10 | "checks": "server/php-guard",
11 | "path": "server/php-guard",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2019-03-01",
15 | "home": "https://github.com/midoks",
16 | "type": "语言解释器",
17 | "pid": "1"
18 | }
--------------------------------------------------------------------------------
/plugins/php-yum/conf/enable-php.conf:
--------------------------------------------------------------------------------
1 | set $PHP_ENV 1;
2 | location ~ [^/]\.php(/|$)
3 | {
4 | try_files $uri =404;
5 | fastcgi_pass unix:/var/opt/remi/php{$PHP_VERSION}/run/php-fpm/www.sock;
6 | fastcgi_index index.php;
7 | include fastcgi.conf;
8 | include {$SERVER_PATH}/web_conf/php/pathinfo.conf;
9 | }
--------------------------------------------------------------------------------
/plugins/php-yum/conf/pathinfo.conf:
--------------------------------------------------------------------------------
1 | set $real_script_name $fastcgi_script_name;
2 | if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
3 | set $real_script_name $1;
4 | set $path_info $2;
5 | }
6 | fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
7 | fastcgi_param SCRIPT_NAME $real_script_name;
8 | fastcgi_param PATH_INFO $path_info;
--------------------------------------------------------------------------------
/plugins/php-yum/conf/php-fpm.conf:
--------------------------------------------------------------------------------
1 | [global]
2 | pid = /var/opt/remi/php{$PHP_VERSION}/run/php-fpm/php-fpm.pid
3 | include=/etc/opt/remi/php{$PHP_VERSION}/php-fpm.d/*.conf
4 | php_value[auto_prepend_file]={$SERVER_PATH}/php-yum/app_start.php
--------------------------------------------------------------------------------
/plugins/php-yum/conf/phpinfo.conf:
--------------------------------------------------------------------------------
1 | location /{$PHP_VERSION} {
2 | root {$ROOT_PATH}/phpinfo;
3 | include {$SERVER_PATH}/web_conf/php/conf/enable-php-yum{$PHP_VERSION}.conf;
4 | }
--------------------------------------------------------------------------------
/plugins/php-yum/conf/www.conf:
--------------------------------------------------------------------------------
1 | [www]
2 | user = {$PHP_USER}
3 | group = {$PHP_GROUP}
4 |
5 | listen = /var/opt/remi/php{$PHP_VERSION}/run/php-fpm/www.sock
6 | listen.owner = {$PHP_USER}
7 | listen.group = {$PHP_GROUP}
8 | listen.backlog = 4096
9 |
10 | pm = dynamic
11 | pm.max_children = 50
12 | pm.start_servers = 5
13 | pm.min_spare_servers = 5
14 | pm.max_spare_servers = 35
15 | pm.status_path = /phpfpm_status_yum{$PHP_VERSION}
16 | pm.max_requests = 1000
17 | request_terminate_timeout = 30
18 | request_slowlog_timeout = 10
19 | slowlog = /var/opt/remi/php{$PHP_VERSION}/log/php-fpm/www-slow.log
20 |
21 | php_admin_flag[log_errors] = on
22 | php_admin_value[error_log] = /var/opt/remi/php{$PHP_VERSION}/log/php-fpm/error.log
--------------------------------------------------------------------------------
/plugins/php-yum/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/php-yum/ico.png
--------------------------------------------------------------------------------
/plugins/php-yum/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "PHP是世界上最好的编程语言(极速安装)",
4 | "shell": "install.sh",
5 | "name": "php-yum",
6 | "title": "PHP[YUM]",
7 | "coexist": true,
8 | "versions": ["74","80","81","82","83","84"],
9 | "install_pre_inspection":true,
10 | "tip": "soft",
11 | "checks": "server/php-yum/VERSION",
12 | "path": "server/php-yum/VERSION",
13 | "display": 1,
14 | "author": "Zend",
15 | "date": "2022-07-07",
16 | "home": "https://www.php.net",
17 | "type": "PHP语言解释器",
18 | "pid": "6"
19 | }
--------------------------------------------------------------------------------
/plugins/php/conf/backup.conf:
--------------------------------------------------------------------------------
1 | [backup]
2 | user = {$PHP_USER}
3 | group = {$PHP_GROUP}
4 |
5 | listen = /tmp/php-cgi-{$PHP_VERSION}.backup.sock
6 | listen.owner = {$PHP_USER}
7 | listen.group = {$PHP_GROUP}
8 | listen.backlog = 4096
9 |
10 | pm = dynamic
11 | pm.max_children = 30
12 | pm.start_servers = 5
13 | pm.min_spare_servers = 5
14 | pm.max_spare_servers = 20
15 | pm.status_path = /phpfpm_status_{$PHP_VERSION}_backup
16 | pm.max_requests = 1000
17 | request_terminate_timeout = 30
18 | request_slowlog_timeout = 10
19 | slowlog = {$SERVER_PATH}/php/{$PHP_VERSION}/var/log/www-slow.log
--------------------------------------------------------------------------------
/plugins/php/conf/enable-php-upstream.conf:
--------------------------------------------------------------------------------
1 | upstream MW-UPSTREAM-PHP{$PHP_VERSION} {
2 | server unix:/tmp/php-cgi-{$PHP_VERSION}.sock;
3 | server unix:/tmp/php-cgi-{$PHP_VERSION}.backup.sock;
4 | }
--------------------------------------------------------------------------------
/plugins/php/conf/enable-php.bak.conf:
--------------------------------------------------------------------------------
1 | set $PHP_ENV 1;
2 | location ~ [^/]\.php(/|$)
3 | {
4 | try_files $uri =404;
5 | fastcgi_pass unix:/tmp/php-cgi-{$PHP_VERSION}.sock;
6 | fastcgi_index index.php;
7 | include fastcgi.conf;
8 | include {$SERVER_PATH}/web_conf/php/pathinfo.conf;
9 | }
--------------------------------------------------------------------------------
/plugins/php/conf/enable-php.conf:
--------------------------------------------------------------------------------
1 | set $PHP_ENV 1;
2 | location ~ [^/]\.php(/|$)
3 | {
4 | try_files $uri =404;
5 | #fastcgi_pass unix:/tmp/php-cgi-{$PHP_VERSION}.sock;
6 | fastcgi_pass MW-UPSTREAM-PHP{$PHP_VERSION};
7 | fastcgi_index index.php;
8 | include fastcgi.conf;
9 | include {$SERVER_PATH}/web_conf/php/pathinfo.conf;
10 | }
--------------------------------------------------------------------------------
/plugins/php/conf/pathinfo.conf:
--------------------------------------------------------------------------------
1 | set $real_script_name $fastcgi_script_name;
2 | if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
3 | set $real_script_name $1;
4 | set $path_info $2;
5 | }
6 | fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
7 | fastcgi_param SCRIPT_NAME $real_script_name;
8 | fastcgi_param PATH_INFO $path_info;
9 |
10 | #修复http3不传HOST问题
11 | fastcgi_param HTTP_HOST $host;
--------------------------------------------------------------------------------
/plugins/php/conf/php-fpm.conf:
--------------------------------------------------------------------------------
1 |
2 | [global]
3 | pid = run/php-fpm.pid
4 | error_log = log/php-fpm.log
5 | include={$SERVER_PATH}/php/{$PHP_VERSION}/etc/php-fpm.d/*.conf
6 | php_value[auto_prepend_file]={$SERVER_PATH}/php/app_start.php
--------------------------------------------------------------------------------
/plugins/php/conf/phpfpm_status.conf:
--------------------------------------------------------------------------------
1 | location /phpfpm_status_{$PHP_VERSION} {
2 | fastcgi_pass unix:/tmp/php-cgi-{$PHP_VERSION}.sock;
3 | include fastcgi_params;
4 | fastcgi_param SCRIPT_FILENAME \$fastcgi_script_name;
5 | }
--------------------------------------------------------------------------------
/plugins/php/conf/phpinfo.conf:
--------------------------------------------------------------------------------
1 | location /{$PHP_VERSION} {
2 | root {$ROOT_PATH}/phpinfo;
3 | include {$SERVER_PATH}/web_conf/php/conf/enable-php-{$PHP_VERSION}.conf;
4 | }
--------------------------------------------------------------------------------
/plugins/php/conf/www.conf:
--------------------------------------------------------------------------------
1 | [www]
2 | user = {$PHP_USER}
3 | group = {$PHP_GROUP}
4 |
5 | listen = /tmp/php-cgi-{$PHP_VERSION}.sock
6 | listen.owner = {$PHP_USER}
7 | listen.group = {$PHP_GROUP}
8 | listen.backlog = 4096
9 |
10 | pm = dynamic
11 | pm.max_children = 30
12 | pm.start_servers = 5
13 | pm.min_spare_servers = 5
14 | pm.max_spare_servers = 20
15 | pm.status_path = /phpfpm_status_{$PHP_VERSION}
16 | pm.max_requests = 1000
17 | request_terminate_timeout = 30
18 | request_slowlog_timeout = 10
19 | slowlog = {$SERVER_PATH}/php/{$PHP_VERSION}/var/log/www-slow.log
--------------------------------------------------------------------------------
/plugins/php/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/php/ico.png
--------------------------------------------------------------------------------
/plugins/php/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "PHP是世界上最好的编程语言",
4 | "shell": "install.sh",
5 | "name": "php",
6 | "title": "PHP",
7 | "coexist": true,
8 | "versions": ["53","54","55","56","70","71","72","73","74","80","81","82","83","84"],
9 | "updates": ["5.3.29","5.4.45","5.6.36","7.0.30","7.1.33","7.2.32","7.3.20","7.4.30","8.0.30","8.1.29","8.2.27","8.3.15","8.4.2"],
10 | "tip": "soft",
11 | "install_pre_inspection":true,
12 | "checks": "server/php/VERSION/bin/php",
13 | "path": "server/php/VERSION",
14 | "display": 1,
15 | "author": "Zend",
16 | "date": "2017-04-01",
17 | "home": "https://www.php.net",
18 | "type": "PHP语言解释器",
19 | "pid": "1"
20 | }
--------------------------------------------------------------------------------
/plugins/php/init.d/php.service.52.tpl:
--------------------------------------------------------------------------------
1 | # It's not recommended to modify this file in-place, because it
2 | # will be overwritten during upgrades. If you want to customize,
3 | # the best way is to use the "systemctl edit" command.
4 |
5 | [Unit]
6 | Description=The PHP {$VERSION} FastCGI Process Manager
7 | After=network.target
8 |
9 | [Service]
10 | Type=forking
11 | ExecStart={$SERVER_PATH}/php/init.d/php{$VERSION} start
12 | ExecStop={$SERVER_PATH}/php/init.d/php{$VERSION} stop
13 | PrivateTmp=false
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/plugins/php/init.d/php.service.tpl:
--------------------------------------------------------------------------------
1 | # It's not recommended to modify this file in-place, because it
2 | # will be overwritten during upgrades. If you want to customize,
3 | # the best way is to use the "systemctl edit" command.
4 | # systemctl daemon-reload
5 |
6 | [Unit]
7 | Description=The PHP {$VERSION} FastCGI Process Manager
8 | After=network.target
9 |
10 | [Service]
11 | Environment="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/www/server/lib/icu/lib"
12 | PIDFile={$SERVER_PATH}/php/{$VERSION}/var/run/php-fpm.pid
13 | ExecStart={$SERVER_PATH}/php/{$VERSION}/sbin/php-fpm --nodaemonize --fpm-config {$SERVER_PATH}/php/{$VERSION}/etc/php-fpm.conf
14 | ExecReload=/bin/kill -USR2 $MAINPID
15 | PrivateTmp=false
16 |
17 | [Install]
18 | WantedBy=multi-user.target
19 |
--------------------------------------------------------------------------------
/plugins/php/versions/common/lib.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/php/versions/common/lib.md
--------------------------------------------------------------------------------
/plugins/php/versions/lib.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
3 | export PATH=$PATH:/opt/homebrew/bin
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | rootPath=$(dirname "$rootPath")
9 | rootPath=$(dirname "$rootPath")
10 | serverPath=$(dirname "$rootPath")
11 |
12 | version=$1
13 | action=$2
14 |
15 | if [ -f /lib/systemd/system/php${version}.service ];then
16 | systemctl ${action} php${version}
17 | elif [ -f /usr/lib/systemd/system/php${version}.service ]; then
18 | systemctl ${action} php${version}
19 | else
20 | $serverPath/php/init.d/php${version} ${action}
21 | fi
--------------------------------------------------------------------------------
/plugins/phpldapadmin/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/phpldapadmin/ico.png
--------------------------------------------------------------------------------
/plugins/phpldapadmin/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "title":"phpLDAPadmin",
3 | "tip":"soft",
4 | "name":"phpldapadmin",
5 | "type":"运行环境",
6 | "ps":"LDAP管理工具",
7 | "versions":["1.2.6.7"],
8 | "shell":"install.sh",
9 | "checks":"server/phpldapadmin",
10 | "path": "server/phpldapadmin",
11 | "author":"leenooks",
12 | "home":"https://github.com/leenooks/phpLDAPadmin",
13 | "date":"2025-1-28",
14 | "pid": "2"
15 | }
--------------------------------------------------------------------------------
/plugins/phpmyadmin/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/phpmyadmin/ico.png
--------------------------------------------------------------------------------
/plugins/phpmyadmin/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "title":"phpMyAdmin",
3 | "tip":"soft",
4 | "name":"phpmyadmin",
5 | "type":"运行环境",
6 | "ps":"著名Web端MySQL管理工具",
7 | "to_ver":["4.8.4"],
8 | "install_pre_inspection":true,
9 | "versions":["4.4.15","4.9.11","5.2.1"],
10 | "updates":["4.4.15","4.9.11","5.2.1"],
11 | "shell":"install.sh",
12 | "checks":"server/phpmyadmin",
13 | "path": "server/phpmyadmin",
14 | "author":"phpMyAdmin",
15 | "home":"https://www.phpmyadmin.net/",
16 | "date":"2017-11-24",
17 | "pid": "2"
18 | }
--------------------------------------------------------------------------------
/plugins/postgresql/conf/pg_hba.conf:
--------------------------------------------------------------------------------
1 | # PostgreSQL Client Authentication Configuration File
2 |
3 | # TYPE DATABASE USER ADDRESS METHOD
4 | # "local" is for Unix domain socket connections only
5 | local all all trust
6 | host all all 0.0.0.0/0 md5
7 | host all all ::1/128 md5
8 | local replication all trust
9 | host replication all 0.0.0.0/0 md5
10 | host replication all ::1/128 md5
--------------------------------------------------------------------------------
/plugins/postgresql/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/postgresql/ico.png
--------------------------------------------------------------------------------
/plugins/postgresql/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "hook":["database"],
3 | "sort": 6,
4 | "title":"PostgreSQL",
5 | "tip":"soft",
6 | "name":"postgresql",
7 | "type":"运行环境",
8 | "ps":"功能强大的开源数据库",
9 | "coexist": false,
10 | "install_pre_inspection":true,
11 | "uninstall_pre_inspection":true,
12 | "versions":["14","15","16","17"],
13 | "shell":"install.sh",
14 | "checks":"server/postgresql",
15 | "path":"server/postgresql",
16 | "author":"postgresql",
17 | "home":"https://www.postgresql.org/",
18 | "date":"2022-08-07",
19 | "pid": "2"
20 | }
--------------------------------------------------------------------------------
/plugins/postgresql/init.d/postgresql.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=PostgreSQL: a powerful open source database
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | User=postgres
8 | Group=postgres
9 | WorkingDirectory={$APP_PATH}
10 | ExecStart={$APP_PATH}/bin/pg_ctl start -D {$APP_PATH}/data
11 | ExecReload={$APP_PATH}/bin/pg_ctl restart -D {$APP_PATH}/data
12 | ExecStop={$APP_PATH}/bin/pg_ctl stop -D {$APP_PATH}/data
13 | PrivateTmp=false
14 |
15 | [Install]
16 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/pureftp/conf/ftps.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE IF NOT EXISTS `ftps` (
2 | `id` INTEGER PRIMARY KEY AUTOINCREMENT,
3 | `pid` INTEGER,
4 | `name` TEXT,
5 | `password` TEXT,
6 | `path` TEXT,
7 | `status` TEXT,
8 | `ps` TEXT,
9 | `addtime` TEXT
10 | );
--------------------------------------------------------------------------------
/plugins/pureftp/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/pureftp/ico.png
--------------------------------------------------------------------------------
/plugins/pureftp/index.html:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/plugins/pureftp/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "title":"PureFtpd",
3 | "tip":"soft",
4 | "name":"pureftp",
5 | "ps":"一款免费FTP服务器软件",
6 | "versions": "1.0.49",
7 | "shell":"install.sh",
8 | "checks":"server/pureftp",
9 | "path":"server/pureftp",
10 | "author":"mdserver-web",
11 | "home":"https://github.com/midoks/mdserver-web",
12 | "date":"2018-11-30",
13 | "dev_update":"2022-6-18",
14 | "pid":"3"
15 | }
--------------------------------------------------------------------------------
/plugins/pureftp/init.d/pureftp.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Pure-FTPd is a fast, production-quality, standard-conformant FTP server
3 | After=network.target
4 |
5 |
6 |
7 | [Service]
8 | Type=forking
9 | ExecStart={$SERVER_PATH}/pureftp/sbin/pure-ftpd {$SERVER_PATH}/pureftp/etc/pure-ftpd.conf
10 | ExecStop=/bin/kill -HUP $MAINPID
11 | ExecReload=/bin/kill -USR2 $MAINPID
12 | Restart=on-failure
13 |
14 | [Install]
15 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/redis/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/redis/ico.png
--------------------------------------------------------------------------------
/plugins/redis/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":4,
3 | "ps": "一个高性能的KV数据库",
4 | "name": "redis",
5 | "title": "Redis",
6 | "shell": "install.sh",
7 | "versions":["4.0.14","5.0.14","6.0.20","6.2.16","7.0.15","7.2.8", "7.4.3", "8.0.1"],
8 | "tip": "soft",
9 | "checks": "server/redis",
10 | "path": "server/redis",
11 | "display": 1,
12 | "author": "redis",
13 | "date": "2017-04-01",
14 | "home": "https://redis.io",
15 | "type": 0,
16 | "pid": "2"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/redis/init.d/redis.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Redis In-Memory Data Store
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/redis/bin/redis-server {$SERVER_PATH}/redis/redis.conf
8 | ExecReload=/bin/kill -USR2 $MAINPID
9 | Restart=on-failure
10 |
11 | [Install]
12 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/rsyncd/conf/lsyncd.conf:
--------------------------------------------------------------------------------
1 | settings {
2 | logfile = "{$SERVER_PATH}/rsyncd/lsyncd.log",
3 | inotifyMode = "CloseWrite",
4 | maxProcesses = 8,
5 | statusFile = "{$SERVER_PATH}/rsyncd/lsyncd.status"
6 | }
--------------------------------------------------------------------------------
/plugins/rsyncd/conf/rsyncd.conf:
--------------------------------------------------------------------------------
1 | uid = www
2 | gid = www
3 | use chroot = no
4 | max connections = 100
5 | log file = /var/log/rsyncd.log
6 | pid file = /var/run/rsyncd.pid
7 | list = false
8 | hosts allow = *
--------------------------------------------------------------------------------
/plugins/rsyncd/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/rsyncd/ico.png
--------------------------------------------------------------------------------
/plugins/rsyncd/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":2,
3 | "title":"rsyncd",
4 | "tip":"soft",
5 | "name":"rsyncd",
6 | "type":"软件",
7 | "ps":"rsyncd同步助手",
8 | "versions":"2.0",
9 | "shell":"install.sh",
10 | "checks":"server/rsyncd",
11 | "path": "server/rsyncd",
12 | "author":"samba",
13 | "home":"https://rsync.samba.org/",
14 | "date":"2019-03-05",
15 | "pid":"4"
16 | }
--------------------------------------------------------------------------------
/plugins/rsyncd/init.d/lsyncd.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Lightweight inotify based sync daemon
3 | ConditionPathExists={$SERVER_PATH}/rsyncd/lsyncd.conf
4 |
5 | [Service]
6 | Type=simple
7 | ExecStart={$LSYNCD_BIN} -nodaemon {$SERVER_PATH}/rsyncd/lsyncd.conf
8 |
9 | [Install]
10 | WantedBy=multi-user.target
11 |
--------------------------------------------------------------------------------
/plugins/rsyncd/init.d/rsyncd.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=fast remote file copy program daemon
3 | ConditionPathExists={$SERVER_PATH}/rsyncd/rsyncd.conf
4 |
5 | [Service]
6 | ExecStart={$RSYNC_BIN} --config={$SERVER_PATH}/rsyncd/rsyncd.conf --daemon --no-detach
7 |
8 | [Install]
9 | WantedBy=multi-user.target
10 |
--------------------------------------------------------------------------------
/plugins/simpleping/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/simpleping/ico.png
--------------------------------------------------------------------------------
/plugins/simpleping/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 999,
3 | "ps": "简单Ping服务,检查连通性",
4 | "name": "simpleping",
5 | "title": "SimplePing",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "tip": "soft",
9 | "checks": "server/simpleping",
10 | "path": "server/simpleping",
11 | "display": 1,
12 | "author": "midoks",
13 | "date": "2024-07-10",
14 | "home": "https://github.com/midoks/simpleping",
15 | "type": 0,
16 | "pid": "5"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/simpleping/init.d/simpleping.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=SimplePing Server
3 | After=network.service
4 | After=syslog.target
5 |
6 | [Service]
7 | User=root
8 | Group=root
9 | Type=simple
10 | WorkingDirectory={$SERVER_PATH}/simpleping
11 | ExecStart={$SERVER_PATH}/simpleping/simpleping service
12 | ExecReload=/bin/kill -USR2 $MAINPID
13 | PermissionsStartOnly=true
14 | LimitNOFILE=5000
15 | Restart=on-failure
16 | RestartSec=10
17 | RestartPreventExitStatus=1
18 | PrivateTmp=false
19 |
20 | [Install]
21 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/sphinx/conf/sphinx.conf:
--------------------------------------------------------------------------------
1 | #
2 | # Minimal Sphinx configuration sample (clean, simple, functional)
3 | #
4 |
5 |
6 | searchd
7 | {
8 | listen = 9312
9 | listen = 9306:mysql41
10 | log = {$SERVER_APP}/index/searchd.log
11 | query_log = {$SERVER_APP}/index/query.log
12 | pid_file = {$SERVER_APP}/index/searchd.pid
13 | #workers = threads # for RT to work
14 | binlog_path = {$SERVER_APP}/index/binlog
15 | read_timeout = 5
16 | max_children = 0
17 | seamless_rotate = 1
18 | preopen_indexes = 1
19 | unlink_old = 1
20 | }
21 |
22 | index mydocs
23 | {
24 | type = rt
25 | path = {$SERVER_APP}/bin/doc
26 | rt_field = title
27 | rt_attr_json = j
28 | }
--------------------------------------------------------------------------------
/plugins/sphinx/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/sphinx/ico.png
--------------------------------------------------------------------------------
/plugins/sphinx/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "简单高效的全文搜索引擎",
4 | "name": "sphinx",
5 | "title": "sphinx",
6 | "shell": "install.sh",
7 | "versions":["3.1.1","3.2.1","3.3.1","3.4.1","3.5.1","3.6.1","3.7.1"],
8 | "tip": "soft",
9 | "install_pre_inspection":true,
10 | "checks": "server/sphinx",
11 | "path": "server/sphinx",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2017-04-01",
15 | "home": "http://sphinxsearch.com/",
16 | "doc1": "http://sphinxsearch.com/docs/sphinx3.html",
17 | "doc2": "http://sphinxsearch.com/docs/manual-2.3.2.html",
18 | "type": 0,
19 | "pid": "2"
20 | }
--------------------------------------------------------------------------------
/plugins/sphinx/init.d/sphinx.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Open Source Search Server
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/sphinx/bin/bin/searchd -c {$SERVER_PATH}/sphinx/sphinx.conf
8 | ExecReload=/bin/kill -USR2 $MAINPID
9 | Restart=on-failure
10 |
11 | [Install]
12 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/sphinx/tpl/none.conf:
--------------------------------------------------------------------------------
1 | #
2 | # Minimal Sphinx configuration sample (clean, simple, functional)
3 | #
4 |
5 |
6 | searchd
7 | {
8 | listen = 9312
9 | listen = 9306:mysql41
10 | log = {$SERVER_APP}/index/searchd.log
11 | query_log = {$SERVER_APP}/index/query.log
12 | pid_file = {$SERVER_APP}/index/searchd.pid
13 | #workers = threads # for RT to work
14 | binlog_path = {$SERVER_APP}/index/binlog
15 | read_timeout = 5
16 | max_children = 0
17 | seamless_rotate = 1
18 | preopen_indexes = 1
19 | unlink_old = 1
20 | }
21 |
22 | index mydocs
23 | {
24 | type = rt
25 | path = {$SERVER_APP}/bin/doc
26 | rt_field = title
27 | rt_attr_json = j
28 | }
--------------------------------------------------------------------------------
/plugins/supervisor/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/supervisor/ico.png
--------------------------------------------------------------------------------
/plugins/supervisor/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 1,
3 | "ps": "一个Python开发的通用的进程管理程序",
4 | "name": "supervisor",
5 | "title": "supervisor",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "checks": "server/supervisor",
11 | "path": "server/supervisor",
12 | "display": 1,
13 | "author": "python",
14 | "date": "2022-06-15",
15 | "home": "https://pypi.org/project/supervisor/",
16 | "type": 0,
17 | "pid": "4"
18 | }
--------------------------------------------------------------------------------
/plugins/supervisor/init.d/supervisor.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=supervisor server daemon
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SUP_BIN} -c {$SERVER_PATH}/supervisor/supervisor.conf
8 | ExecStop=kill -s TERM $MAINPID
9 | ExecReload=kill -s HUP $MAINPID
10 | KillMode=process
11 | Restart=on-failure
12 |
13 | [Install]
14 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/swap/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/swap/ico.png
--------------------------------------------------------------------------------
/plugins/swap/index.html:
--------------------------------------------------------------------------------
1 |
14 |
15 |
--------------------------------------------------------------------------------
/plugins/swap/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 6,
3 | "ps": "Linux虚拟内存",
4 | "name": "swap",
5 | "title": "swap",
6 | "shell": "install.sh",
7 | "versions":"1.1",
8 | "tip": "soft",
9 | "checks": "server/swap",
10 | "path": "server/swap",
11 | "display": 1,
12 | "author": "swap",
13 | "date": "2021-01-29",
14 | "home": "swap",
15 | "type": 0,
16 | "pid": "4"
17 | }
--------------------------------------------------------------------------------
/plugins/swap/init.d/swap.service.tpl:
--------------------------------------------------------------------------------
1 |
2 | [Unit]
3 | Description=Swap Process Manager
4 | After=network.target
5 |
6 | [Service]
7 | Type=forking
8 | ExecStart={$SERVER_PATH}/swap/init.d/swap start
9 | ExecStop={$SERVER_PATH}/swap/init.d/swap stop
10 | RemainAfterExit=yes
11 |
12 |
13 | [Install]
14 | WantedBy=multi-user.target
15 |
--------------------------------------------------------------------------------
/plugins/sys-opt/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/sys-opt/ico.png
--------------------------------------------------------------------------------
/plugins/sys-opt/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort":1,
3 | "title":"系统优化",
4 | "tip":"soft",
5 | "name":"sys-opt",
6 | "type":"扩展",
7 | "ps":"仅Linux系统优化",
8 | "versions":"1.0",
9 | "shell":"install.sh",
10 | "checks":"server/sys-opt",
11 | "path": "server/sys-opt",
12 | "author":"midoks",
13 | "home":"",
14 | "date":"2018-12-20",
15 | "pid":"5"
16 | }
--------------------------------------------------------------------------------
/plugins/sys-opt/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 |
6 | curPath=`pwd`
7 | rootPath=$(dirname "$curPath")
8 | rootPath=$(dirname "$rootPath")
9 | serverPath=$(dirname "$rootPath")
10 |
11 | Install_sysopt()
12 | {
13 | echo '正在安装脚本文件...'
14 | mkdir -p $serverPath/sys-opt
15 | echo '1.0' > $serverPath/sys-opt/version.pl
16 | echo '安装完成'
17 |
18 | }
19 |
20 | Uninstall_sysopt()
21 | {
22 | rm -rf $serverPath/sys-opt
23 | echo "卸载完成"
24 | }
25 |
26 | action=$1
27 | if [ "${1}" == 'install' ];then
28 | Install_sysopt
29 | else
30 | Uninstall_sysopt
31 | fi
32 |
--------------------------------------------------------------------------------
/plugins/sys-opt/js/sys-opt.js:
--------------------------------------------------------------------------------
1 |
2 |
3 | function pRead(){
4 | var readme = '';
5 | readme += '- 修改后,点击重启按钮
';
6 | readme += '
';
7 |
8 | $('.soft-man-con').html(readme);
9 | }
--------------------------------------------------------------------------------
/plugins/system_safe/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/system_safe/ico.png
--------------------------------------------------------------------------------
/plugins/system_safe/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 8,
3 | "ps": "提供灵活的系统加固功能,防止系统被植入木马,支持服务器日志审计功能",
4 | "name": "system_safe",
5 | "title": "系统加固",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "icon":"ico.png",
11 | "checks": "server/system_safe",
12 | "path": "server/system_safe",
13 | "display": 1,
14 | "author": "midoks",
15 | "date": "2022-01-12",
16 | "home": "",
17 | "type": 0,
18 | "pid": "4"
19 |
20 | }
--------------------------------------------------------------------------------
/plugins/system_safe/init.d/system_safe.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=system_safe server daemon
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/init.d/system_safe start
8 | ExecStop={$SERVER_PATH}/init.d/system_safe stop
9 | ExecReload={$SERVER_PATH}/init.d/system_safe reload
10 | ExecRestart={$SERVER_PATH}/init.d/system_safe restart
11 | KillMode=process
12 | Restart=on-failure
13 |
14 | [Install]
15 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/tamper_proof_py/conf/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "open": true,
3 | "excludePath": [ "cache", "threadcache", "log", "logs", "config", "runtime", "temp","tmp","caches","tmps"],
4 | "protectExt": [ "php", "html", "htm", "shtml", "tpl", "js", "css", "jsp", "do" ]
5 | }
--------------------------------------------------------------------------------
/plugins/tamper_proof_py/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/tamper_proof_py/ico.png
--------------------------------------------------------------------------------
/plugins/tamper_proof_py/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "网站防篡改程序PY",
3 | "tip": "lib",
4 | "name": "tamper_proof_py",
5 | "type": "soft",
6 | "ps": "事件型防篡改程序,可有效保护网站重要文件不被木马篡改[Python]",
7 | "versions": "1.0",
8 | "shell": "install.sh",
9 | "checks": "server/tamper_proof_py",
10 | "path": "server/tamper_proof_py",
11 | "author": "midoks",
12 | "home": "",
13 | "date":"2022-01-18",
14 | "pid":"4"
15 | }
--------------------------------------------------------------------------------
/plugins/tamper_proof_py/init.d/tamper_proof_py.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=tamper_proof_py server daemon
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/init.d/tamper_proof_py start
8 | ExecStop={$SERVER_PATH}/init.d/tamper_proof_py stop
9 | ExecReload={$SERVER_PATH}/init.d/tamper_proof_py reload
10 | KillMode=process
11 | Restart=on-failure
12 |
13 | [Install]
14 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/task_manager/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/task_manager/ico.png
--------------------------------------------------------------------------------
/plugins/task_manager/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 5,
3 | "ps": "轻松管理进程、流量监控、启动项、用户、服务、计划任务、会话",
4 | "name": "task_manager",
5 | "title": "任务管理器",
6 | "shell": "install.sh",
7 | "versions":"1.0",
8 | "tip": "soft",
9 | "checks": "server/task_manager",
10 | "path": "server/task_manager",
11 | "display": 1,
12 | "author": "task_manager",
13 | "date": "2024-06-01",
14 | "home": "task_manager",
15 | "type": 0,
16 | "pid": "4"
17 | }
--------------------------------------------------------------------------------
/plugins/tgbot/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/tgbot/ico.png
--------------------------------------------------------------------------------
/plugins/tgbot/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "简单Telegram机器人",
4 | "name": "tgbot",
5 | "title": "tgbot",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "tip": "soft",
9 | "checks": "server/tgbot",
10 | "path": "server/tgbot",
11 | "install_pre_inspection":true,
12 | "uninstall_pre_inspection":true,
13 | "display": 1,
14 | "author": "midoks",
15 | "date": "2023-03-06",
16 | "home": "https://core.telegram.org/bots/api",
17 | "depend_doc1":"https://github.com/eternnoir/pyTelegramBotAPI",
18 | "type": 0,
19 | "pid": "5"
20 | }
--------------------------------------------------------------------------------
/plugins/tgbot/init.d/tgbot.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Tgbot Service
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$APP_PATH}/init.d/tgbot start
8 | ExecStop={$APP_PATH}/init.d/tgbot stop
9 | ExecReload={$APP_PATH}/init.d/tgbot reload
10 | KillMode=process
11 | Restart=on-failure
12 |
13 | [Install]
14 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/tgbot/startup/extend/readme.md:
--------------------------------------------------------------------------------
1 | push_*.py 识别为推送插件
2 |
--------------------------------------------------------------------------------
/plugins/tgbot/static/image/ad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/tgbot/static/image/ad.png
--------------------------------------------------------------------------------
/plugins/tgclient/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/tgclient/ico.png
--------------------------------------------------------------------------------
/plugins/tgclient/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "简单Telegram客服端管理",
4 | "name": "tgclient",
5 | "title": "tgclient",
6 | "shell": "install.sh",
7 | "versions":["1.1"],
8 | "tip": "soft",
9 | "checks": "server/tgclient",
10 | "path": "server/tgclient",
11 | "install_pre_inspection":true,
12 | "uninstall_pre_inspection":true,
13 | "display": 1,
14 | "author": "midoks",
15 | "date": "2023-03-06",
16 | "home": "https://my.telegram.org/apps",
17 | "depend_doc1":"https://docs.telethon.dev/en/stable/basic/installation.html",
18 | "type": 0,
19 | "pid": "5"
20 | }
--------------------------------------------------------------------------------
/plugins/tgclient/init.d/tgclient.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Tgbot Service
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$APP_PATH}/init.d/tgclient start
8 | ExecStop={$APP_PATH}/init.d/tgclient stop
9 | ExecReload={$APP_PATH}/init.d/tgclient reload
10 | KillMode=process
11 | Restart=on-failure
12 |
13 | [Install]
14 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/tgclient/startup/extend/readme.md:
--------------------------------------------------------------------------------
1 | push_*.py 识别为推送插件
2 |
--------------------------------------------------------------------------------
/plugins/valkey/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/valkey/ico.png
--------------------------------------------------------------------------------
/plugins/valkey/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 8,
3 | "ps": "一个高性能键值数据存储系统",
4 | "name": "valkey",
5 | "title": "valkey",
6 | "shell": "install.sh",
7 | "versions":["8.0.1"],
8 | "tip": "soft",
9 | "checks": "server/valkey",
10 | "path": "server/valkey",
11 | "display": 1,
12 | "author": "valkey",
13 | "date": "2024-12-08",
14 | "home": "https://valkey.io/download/",
15 | "type": 0,
16 | "pid": "2"
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/valkey/init.d/valkey.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Redis In-Memory Data Store
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | ExecStart={$SERVER_PATH}/valkey/bin/valkey-server {$SERVER_PATH}/valkey/valkey.conf
8 | ExecReload=/bin/kill -USR2 $MAINPID
9 | Restart=on-failure
10 |
11 | [Install]
12 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/plugins/varnish/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/varnish/ico.png
--------------------------------------------------------------------------------
/plugins/varnish/index.html:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/plugins/varnish/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "一款高性能的开源HTTP加速器",
4 | "name": "varnish",
5 | "title": "varnish",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "checks": "server/varnish",
11 | "path": "server/varnish",
12 | "display": 1,
13 | "author": "midoks",
14 | "date": "2022-06-11",
15 | "home": "https://varnish-cache.org",
16 | "type": 0,
17 | "pid": "4"
18 | }
--------------------------------------------------------------------------------
/plugins/varnish/tpl/default.vcl:
--------------------------------------------------------------------------------
1 | # https://www.varnish-cache.org/docs/
2 | vcl 4.0;
3 |
4 | # Default backend definition. Set this to point to your content server.
5 | backend default {
6 | .host = "127.0.0.1";
7 | .port = "8080";
8 | }
9 |
10 | sub vcl_recv {
11 | }
12 |
13 | sub vcl_backend_response {
14 | }
15 |
16 | sub vcl_deliver {
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/varnish/tpl/default_note.vcl:
--------------------------------------------------------------------------------
1 | # https://www.varnish-cache.org/docs/
2 | vcl 4.0;
3 |
4 | # Default backend definition. Set this to point to your content server.
5 | backend default {
6 | .host = "127.0.0.1";
7 | .port = "8080";
8 | }
9 |
10 | sub vcl_recv {
11 | }
12 |
13 | sub vcl_backend_response {
14 | }
15 |
16 | sub vcl_deliver {
17 | }
18 |
--------------------------------------------------------------------------------
/plugins/webhook/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/webhook/ico.png
--------------------------------------------------------------------------------
/plugins/webhook/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 4,
3 | "ps": "WebHook,可设置回调脚本,通常用于第三方回调通知!",
4 | "name": "webhook",
5 | "title": "WebHook",
6 | "shell": "install.sh",
7 | "versions":["1.0"],
8 | "updates":["1.0"],
9 | "tip": "soft",
10 | "checks": "server/webhook",
11 | "path": "server/webhook",
12 | "display": 1,
13 | "author": "",
14 | "date": "2022-11-02",
15 | "home": "",
16 | "type": 0,
17 | "pid": "4"
18 | }
--------------------------------------------------------------------------------
/plugins/webhook/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | curPath=`pwd`
6 | rootPath=$(dirname "$curPath")
7 | rootPath=$(dirname "$rootPath")
8 | serverPath=$(dirname "$rootPath")
9 |
10 | VERSION=1.0
11 |
12 | Install_App()
13 | {
14 | echo '正在安装脚本文件...'
15 | mkdir -p $serverPath/webhook
16 | echo "${VERSION}" > $serverPath/webhook/version.pl
17 | echo '安装完成'
18 |
19 | which mw && mw restart
20 | }
21 |
22 | Uninstall_App()
23 | {
24 | rm -rf $serverPath/webhook
25 | echo "Uninstall_App"
26 | }
27 |
28 | action=$1
29 | if [ "${1}" == 'install' ];then
30 | Install_App
31 | else
32 | Uninstall_App
33 | fi
34 |
--------------------------------------------------------------------------------
/plugins/webssh/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/webssh/ico.png
--------------------------------------------------------------------------------
/plugins/webssh/img/ico-cmd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/webssh/img/ico-cmd.png
--------------------------------------------------------------------------------
/plugins/webssh/index.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plugins/webssh/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 |
6 | curPath=`pwd`
7 | rootPath=$(dirname "$curPath")
8 | rootPath=$(dirname "$rootPath")
9 | serverPath=$(dirname "$rootPath")
10 |
11 | VERSION=$2
12 |
13 | Install_webssh()
14 | {
15 | echo '正在安装脚本文件...'
16 | mkdir -p $serverPath/webssh
17 | echo "${VERSION}" > $serverPath/webssh/version.pl
18 | echo '安装完成'
19 |
20 | }
21 |
22 | Uninstall_webssh()
23 | {
24 | rm -rf $serverPath/webssh
25 | echo "卸载完成"
26 | }
27 |
28 | action=$1
29 | if [ "${1}" == 'install' ];then
30 | Install_webssh
31 | else
32 | Uninstall_webssh
33 | fi
34 |
--------------------------------------------------------------------------------
/plugins/webstats/conf/webstats.conf:
--------------------------------------------------------------------------------
1 | lua_shared_dict mw_total 100m;
2 | lua_need_request_body off;
3 | include {$SERVER_APP}/lua/webstats_log.lua;
--------------------------------------------------------------------------------
/plugins/webstats/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/webstats/ico.png
--------------------------------------------------------------------------------
/plugins/webstats/t/bench/bench.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 |
4 | curPath=`pwd`
5 | rootPath=$(dirname "$curPath")
6 | rootPath=$(dirname "$rootPath")
7 | rootPath=$(dirname "$rootPath")
8 | rootPath=$(dirname "$rootPath")
9 | rootPath=$(dirname "$rootPath")
10 |
11 | # echo $rootPath
12 |
13 | resty=$rootPath/openresty/bin/resty
14 |
15 | RUN_CMD=$resty
16 | if [ ! -f $resty ];then
17 | RUN_CMD=/www/server/openresty/bin/resty
18 | fi
19 |
20 |
21 | # test
22 | # $RUN_CMD simple.lua
23 |
24 | # $RUN_CMD test_today.lua
25 | # $RUN_CMD test_time.lua
26 |
27 | # $RUN_CMD test_ngx_find.lua
28 |
29 | $RUN_CMD test_match_spider.lua
--------------------------------------------------------------------------------
/plugins/webstats/t/bench/simple.lua:
--------------------------------------------------------------------------------
1 | local function target()
2 | ngx.re.find("hello, world.", [[\w+\.]], "jo")
3 | end
4 | for i = 1, 100 do
5 | target()
6 | end
7 |
8 | collectgarbage()
9 |
10 | ngx.update_time()
11 | local begin = ngx.now()
12 | local N = 1e7
13 | for i = 1, N do
14 | target()
15 | end
16 | ngx.update_time()
17 |
18 | ngx.say("elapsed: ", (ngx.now() - begin) / N)
--------------------------------------------------------------------------------
/plugins/webstats/t/bench/test_today.lua:
--------------------------------------------------------------------------------
1 |
2 | local function target()
3 | ngx.re.find("hello, world.", [[\w+\.]], "jo")
4 | end
5 | for i = 1, 100 do
6 | target()
7 | end
8 | -- 以上为预热操作
9 | collectgarbage()
10 |
11 |
12 | ngx.update_time()
13 | local begin = ngx.now()
14 | local N = 1e6
15 | for i = 1, N do
16 | os.date("%Y%m%d")
17 | -- ngx.say(t)
18 | end
19 | ngx.update_time()
20 |
21 | ngx.say("os.date elapsed: ", (ngx.now() - begin) / N)
22 |
23 |
24 | ngx.update_time()
25 | local begin = ngx.now()
26 | local N = 1e6
27 | for i = 1, N do
28 | ngx.re.gsub(ngx.today(),'-','')
29 | -- ngx.say(t)
30 | end
31 | ngx.update_time()
32 |
33 | ngx.say("ngx.today() elapsed: ", (ngx.now() - begin) / N)
34 |
--------------------------------------------------------------------------------
/plugins/webstats/t/test.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | python3 index.py
6 |
7 |
--------------------------------------------------------------------------------
/plugins/xhprof/conf/xhprof.conf:
--------------------------------------------------------------------------------
1 | server
2 | {
3 | listen 5858;
4 | server_name 127.0.0.1;
5 | index index.html index.htm index.php;
6 | root {$SERVER_PATH}/xhprof/xhprof_html;
7 |
8 | #error_page 404 /404.html;
9 | include {$SERVER_PATH}/web_conf/php/conf/enable-php-{$PHP_VER}.conf;
10 |
11 | location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
12 | {
13 | expires 30d;
14 | }
15 |
16 | location ~ .*\.(js|css)?$
17 | {
18 | expires 12h;
19 | }
20 |
21 | location ~ /\.
22 | {
23 | deny all;
24 | }
25 |
26 | access_log {$SERVER_PATH}/xhprof/access.log main;
27 | }
--------------------------------------------------------------------------------
/plugins/xhprof/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/xhprof/ico.png
--------------------------------------------------------------------------------
/plugins/xhprof/index.html:
--------------------------------------------------------------------------------
1 |
17 |
--------------------------------------------------------------------------------
/plugins/xhprof/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 4,
3 | "title":"xhprof",
4 | "tip":"soft",
5 | "name":"xhprof",
6 | "type":"运行环境",
7 | "ps":"PHP性能瓶颈查找工具",
8 | "to_ver":["1.0"],
9 | "versions":["1.0"],
10 | "updates":["1.0"],
11 | "install_pre_inspection":true,
12 | "shell":"install.sh",
13 | "checks":"server/xhprof",
14 | "path": "server/xhprof",
15 | "author":"midoks",
16 | "home":"http://pecl.php.net/package/xhprof",
17 | "date":"2020-07-12",
18 | "pid": "1"
19 | }
--------------------------------------------------------------------------------
/plugins/xhprof/lib/xhprof_html/jquery/indicator.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/xhprof/lib/xhprof_html/jquery/indicator.gif
--------------------------------------------------------------------------------
/plugins/xhprof/lib/xhprof_html/jquery/jquery.tooltip.css:
--------------------------------------------------------------------------------
1 | /*
2 | * jQuery Tooltip plugin 1.3
3 | *
4 | * http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/
5 | * http://docs.jquery.com/Plugins/Tooltip
6 | *
7 | * Copyright (c) 2006 - 2008 Jörn Zaefferer
8 | *
9 | * $Id$
10 | *
11 | * Dual licensed under the MIT and GPL licenses:
12 | * http://www.opensource.org/licenses/mit-license.php
13 | * http://www.gnu.org/licenses/gpl.html
14 | */
15 |
16 | #tooltip {
17 | position: absolute;
18 | z-index: 3000;
19 | border: 1px solid #111;
20 | background-color: lightyellow;
21 | padding: 5px;
22 | opacity: 0.9;
23 | }
24 | #tooltip h3, #tooltip div { margin: 0; }
25 |
--------------------------------------------------------------------------------
/plugins/xui/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/xui/ico.png
--------------------------------------------------------------------------------
/plugins/xui/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "支持多协议多用户的xray面板",
4 | "install_pre_inspection":true,
5 | "name": "xui",
6 | "title": "xui",
7 | "shell": "install.sh",
8 | "versions":["1.0"],
9 | "updates":["1.0"],
10 | "tip": "soft",
11 | "checks": "server/xui",
12 | "path": "server/xui",
13 | "display": 1,
14 | "author": "FranzKafkaYu",
15 | "date": "2024-12-03",
16 | "home": "https://github.com/FranzKafkaYu/x-ui",
17 | "type": 0,
18 | "pid": "5"
19 | }
--------------------------------------------------------------------------------
/plugins/zabbix/conf/zabbix_agentd.conf:
--------------------------------------------------------------------------------
1 | PidFile=/run/zabbix/zabbix_agentd.pid
2 | LogFile=/var/log/zabbix/zabbix_agentd.log
3 | LogFileSize=1
4 |
5 | ListenIP=0.0.0.0
6 | ListenPort=10050
7 | EnableRemoteCommands=1
8 | Timeout=3
9 |
10 | Server=127.0.0.1
11 | ServerActive=127.0.0.1
12 |
13 | Hostname=Zabbix server
14 | Include=/etc/zabbix/zabbix_agentd.d/*.conf
15 |
16 | # Include=/usr/local/etc/zabbix_agentd.userparams.conf
17 | # Include=/usr/local/etc/zabbix_agentd.conf.d/
18 | # Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf
19 |
--------------------------------------------------------------------------------
/plugins/zabbix/conf/zabbix_server.conf:
--------------------------------------------------------------------------------
1 | LogFile=/var/log/zabbix/zabbix_server.log
2 | LogFileSize=1
3 | PidFile=/run/zabbix/zabbix_server.pid
4 | SocketDir=/run/zabbix
5 | DBHost=127.0.0.1
6 | DBPort={$ZABBIX_DB_PORT}
7 | DBName=zabbix
8 | DBUser=zabbix
9 | DBPassword={$ZABBIX_DB_PASS}
10 | ListenPort=10051
11 | #EnableGlobalScripts=1
12 | SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
13 |
14 |
--------------------------------------------------------------------------------
/plugins/zabbix/conf/zabbix_server6.conf:
--------------------------------------------------------------------------------
1 | LogFile=/var/log/zabbixsrv/zabbix_server.log
2 | LogFileSize=1
3 | ListenPort=10051
4 | PidFile=/run/zabbixsrv/zabbix_server.pid
5 |
6 | DBHost=127.0.0.1
7 | DBPort={$ZABBIX_DB_PORT}
8 | DBName=zabbix
9 | DBUser=zabbix
10 | DBPassword={$ZABBIX_DB_PASS}
11 | AlertScriptsPath=/var/lib/zabbixsrv/alertscripts
12 | ExternalScripts=/var/lib/zabbixsrv/externalscripts
13 | TmpDir=/var/lib/zabbixsrv/tmp
14 |
--------------------------------------------------------------------------------
/plugins/zabbix/data/server6.0.sql.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/zabbix/data/server6.0.sql.gz
--------------------------------------------------------------------------------
/plugins/zabbix/data/server7.0.sql.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/zabbix/data/server7.0.sql.gz
--------------------------------------------------------------------------------
/plugins/zabbix/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/zabbix/ico.png
--------------------------------------------------------------------------------
/plugins/zabbix/ico.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/plugins/zabbix/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "Zabbix是一个成熟、易用的企业级开源监控解决方案,适用于百万级指标的网络监控和应用监控[开发中]",
4 | "name": "zabbix",
5 | "title": "Zabbix",
6 | "shell": "install.sh",
7 | "versions":["6.0","7.0"],
8 | "tip": "soft",
9 | "install_pre_inspection":true,
10 | "uninstall_pre_inspection":true,
11 | "checks": "server/zabbix",
12 | "path": "server/zabbix",
13 | "display": 1,
14 | "author": "midoks",
15 | "date": "2022-07-14",
16 | "home": "https://www.zabbix.com/",
17 | "type": 0,
18 | "pid": "5"
19 | }
20 |
--------------------------------------------------------------------------------
/plugins/zabbix_agent/conf/zabbix_agentd.conf:
--------------------------------------------------------------------------------
1 | PidFile=/run/zabbix/zabbix_agentd.pid
2 | LogFile=/var/log/zabbix/zabbix_agentd.log
3 | LogFileSize=1
4 |
5 | ListenIP=0.0.0.0
6 | ListenPort=10050
7 | #EnableRemoteCommands=1
8 | Timeout=3
9 |
10 | Server=127.0.0.1
11 | ServerActive=127.0.0.1
12 |
13 | Hostname=Zabbix server
14 | Include=/etc/zabbix/zabbix_agentd.d/*.conf
15 |
16 | # Include=/usr/local/etc/zabbix_agentd.userparams.conf
17 | # Include=/usr/local/etc/zabbix_agentd.conf.d/
18 | # Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf
19 |
--------------------------------------------------------------------------------
/plugins/zabbix_agent/ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/plugins/zabbix_agent/ico.png
--------------------------------------------------------------------------------
/plugins/zabbix_agent/info.json:
--------------------------------------------------------------------------------
1 | {
2 | "sort": 7,
3 | "ps": "Zabbix被控服务器[开发中]",
4 | "name": "zabbix_agent",
5 | "title": "Zabbix Agent",
6 | "shell": "install.sh",
7 | "versions":["7.0"],
8 | "tip": "soft",
9 | "install_pre_inspection":true,
10 | "uninstall_pre_inspection":true,
11 | "checks": "server/zabbix_agent",
12 | "path": "server/zabbix_agent",
13 | "display": 1,
14 | "author": "midoks",
15 | "date": "2022-07-14",
16 | "home": "https://www.zabbix.com",
17 | "type": 0,
18 | "pid": "5"
19 | }
20 |
--------------------------------------------------------------------------------
/scripts/init.d/mw-task.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=mw-task daemon
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | WorkingDirectory={$SERVER_PATH}
8 | EnvironmentFile={$SERVER_PATH}/scripts/init.d/service.sh
9 | ExecStart=python3 panel_task.py
10 | ExecStop=kill -HUP $MAINID
11 | ExecReload=kill -HUP $MAINID
12 | KillMode=process
13 | Restart=on-failure
14 |
15 | [Install]
16 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/scripts/init.d/mw.service.tpl:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=mw-panel daemon
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | WorkingDirectory={$SERVER_PATH}
8 | EnvironmentFile={$SERVER_PATH}/scripts/init.d/service.sh
9 | ExecStart=cd web && gunicorn -c setting.py app:app
10 | ExecStop=kill -HUP $MAINID
11 | ExecReload=kill -HUP $MAINID
12 | KillMode=process
13 | Restart=on-failure
14 |
15 | [Timer]
16 | # 每日凌晨点重启
17 | OnCalendar=*-*-* 03:30:00
18 | Unit=mw.service
19 |
20 | [Install]
21 | WantedBy=multi-user.target
--------------------------------------------------------------------------------
/scripts/init.d/service.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3 | export PATH
4 |
5 | cd /www/server/mdserver-web
6 | if [ -f bin/activate ];then
7 | source bin/activate
8 | fi
--------------------------------------------------------------------------------
/scripts/install/unknow.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
3 | export PATH
4 | LANG=en_US.UTF-8
5 |
6 | echo "unkown server!!!"
--------------------------------------------------------------------------------
/scripts/pick.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
3 |
4 | curPath=`pwd`
5 | rootPath=$(dirname "$curPath")
6 |
7 |
8 | #----------------------------- 代码打包 -------------------------#
9 |
10 | echo $rootPath
11 | cd $rootPath
12 | rm -rf ./*.pyc
13 | rm -rf ./*/*.pyc
14 |
15 | startTime=`date +%s`
16 |
17 | zip -r -q -o mdserver-web.zip ./ -x@$curPath/pick_filter.txt
18 |
19 |
20 |
21 | mv mdserver-web.zip $rootPath/scripts
22 |
23 | endTime=`date +%s`
24 | ((outTime=($endTime-$startTime)))
25 | echo -e "Time consumed:\033[32m $outTime \033[0mSec!"
--------------------------------------------------------------------------------
/scripts/plugin_compress.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | ###
4 | ### 插件压缩
5 | ###
6 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
7 | export PATH
8 | LANG=en_US.UTF-8
9 | is64bit=`getconf LONG_BIT`
10 | curPath=`pwd`
11 | rootPath=$(dirname "$curPath")
12 |
13 | startTime=`date +%s`
14 | PLUGIN_NAME='abkill'
15 |
16 | #echo $rootPath/plugins/$PLUGIN_NAME
17 | mkdir -p $rootPath/scripts/tmp
18 | cd $rootPath/plugins/$PLUGIN_NAME && zip $rootPath/scripts/tmp/${PLUGIN_NAME}_${startTime}.zip -r ./* > /tmp/t.log + 2>&1
19 |
20 | endTime=`date +%s`
21 | ((outTime=($endTime-$startTime)))
22 | echo -e "Time consumed:\033[32m $outTime \033[0msecs.!"
--------------------------------------------------------------------------------
/scripts/tools/trace/trace.sh:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/scripts/tools/trace/trace.sh
--------------------------------------------------------------------------------
/scripts/update/macos.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
3 | export PATH
4 | LANG=en_US.UTF-8
5 |
6 | echo 'The development environment only needs to be downloaded again!'
7 | exit 0
--------------------------------------------------------------------------------
/scripts/update/unknow.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/opt/homebrew/bin
3 | export PATH
4 | LANG=en_US.UTF-8
5 |
6 | echo "update unkown server!!!"
--------------------------------------------------------------------------------
/ssl/README.md:
--------------------------------------------------------------------------------
1 | # 数据目录
--------------------------------------------------------------------------------
/web/admin/dashboard/__init__.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 |
12 | from .dashboard import *
13 | from .login import *
14 |
--------------------------------------------------------------------------------
/web/admin/files/__init__.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 | from .files import *
12 | from .recycle import *
13 |
--------------------------------------------------------------------------------
/web/admin/setup/init_db_system.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 | from utils.system import monitor
12 |
13 |
14 | def init_db_system():
15 | monitor.instance().initDBFile()
16 | return True
--------------------------------------------------------------------------------
/web/admin/setup/user.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 | from flask import request
12 |
13 |
14 | import core.mw as mw
15 | import thisdb
16 |
17 | # 初始化用户信息
18 | def init_admin_user():
19 | thisdb.initAdminUser()
20 | return True
21 |
22 |
--------------------------------------------------------------------------------
/web/admin/system/__init__.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 | from .system import *
12 | from .upgrade import *
13 |
14 |
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/EmpireCMS.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | rewrite ^([^\.]*)/listinfo-(.+?)-(.+?)\.html$ $1/e/action/ListInfo/index.php?classid=$2&page=$3 last;
3 | rewrite ^([^\.]*)/showinfo-(.+?)-(.+?)-(.+?)\.html$ $1/e/action/ShowInfo.php?classid=$2&id=$3&page=$4 last;
4 | rewrite ^([^\.]*)/infotype-(.+?)-(.+?)\.html$ $1/e/action/InfoType/index.php?ttid=$2&page=$3 last;
5 | rewrite ^([^\.]*)/tags-(.+?)-(.+?)\.html$ $1/e/tags/index.php?tagname=$2&page=$3 last;
6 | rewrite ^([^\.]*)/comment-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)-(.+?)\.html$ $1/e/pl/index\.php\?doaction=$2&classid=$3&id=$4&page=$5&myorder=$6&tempid=$7 last;
7 | if (!-e $request_filename) {
8 | return 404;
9 | }
10 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/drupal.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | if (!-e $request_filename) {
3 | rewrite ^/(.*)$ /index.php?q=$1 last;
4 | }
5 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/emlog.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | index index.php index.html;
3 | if (!-e $request_filename)
4 | {
5 | rewrite ^/(.*)$ /index.php last;
6 | }
7 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/fastdfs.conf:
--------------------------------------------------------------------------------
1 | location ~/group([0-9])/M00 {
2 | # Need to cooperate with it
3 | # https://github.com/mw-plugin/fastdfs
4 | ngx_fastdfs_module;
5 | }
6 |
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/gunicorn.conf:
--------------------------------------------------------------------------------
1 |
2 | add_header Access-Control-Allow-Origin *;
3 | add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
4 |
5 | location / {
6 | proxy_pass http://127.0.0.1:8000; # 这里是指向 gunicorn host 的服务地址
7 | proxy_set_header Host $host;
8 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
9 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/header_cors.conf:
--------------------------------------------------------------------------------
1 |
2 | add_header 'Access-Control-Allow-Methods' 'GET,OPTIONS,POST' always;
3 | add_header 'Access-Control-Allow-Credentials' 'true' always;
4 | add_header 'Access-Control-Allow-Origin' $http_origin always;
5 | add_header 'Access-Control-Allow-Headers' 'Authorization, Content-Type, X-Requested-With, Cache-Control' always;
6 |
7 |
8 |
9 | #add_header Access-Control-Allow-Origin *;
10 | #add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
11 |
12 |
13 | #add_header Access-Control-Allow-Origin *;
14 | #add_header Access-Control-Allow-Methods *;
15 | #add_header Access-Control-Allow-Header *;
16 |
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/laravel5.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | try_files $uri $uri/ /index.php$is_args$query_string;
3 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/mvc.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | if (!-e $request_filename) {
3 | rewrite ^(.*)$ /index.php/$1 last;
4 | break;
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/nezha.conf:
--------------------------------------------------------------------------------
1 | #PROXY-START/
2 | # root /www/server/nezha/dashboard/resource;
3 | location / {
4 | proxy_pass http://127.0.0.1:9527;
5 | proxy_set_header Host $http_host;
6 | proxy_set_header Upgrade $http_upgrade;
7 | }
8 | location ~ ^/(ws|terminal/.+)$ {
9 | proxy_pass http://127.0.0.1:9527;
10 | proxy_http_version 1.1;
11 | proxy_set_header Upgrade $http_upgrade;
12 | proxy_set_header Connection "Upgrade";
13 | proxy_set_header Host $http_host;
14 | }
15 | #PROXY-END/
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/phpcms.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | ###以下为PHPCMS 伪静态化rewrite法则
3 | rewrite ^(.*)show-([0-9]+)-([0-9]+)\.html$ $1/show.php?itemid=$2&page=$3;
4 | rewrite ^(.*)list-([0-9]+)-([0-9]+)\.html$ $1/list.php?catid=$2&page=$3;
5 | rewrite ^(.*)show-([0-9]+)\.html$ $1/show.php?specialid=$2;
6 | ####以下为PHPWind 伪静态化rewrite法则
7 | rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
8 | rewrite ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2 last;
9 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/phpwind.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
3 | rewrite ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2 last;
4 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/proxy.conf:
--------------------------------------------------------------------------------
1 |
2 | location / {
3 | proxy_pass http://localhost:11334/;
4 | proxy_set_header Host $host;
5 | proxy_set_header X-Real-IP $remote_addr;
6 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
7 | }
8 |
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/proxydg.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | proxy_redirect off;
3 | proxy_pass http://127.0.0.1:12345;
4 | proxy_http_version 1.1;
5 | proxy_set_header Upgrade $http_upgrade;
6 | proxy_set_header Connection "upgrade";
7 | proxy_set_header Host $http_host;
8 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/seacms.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | rewrite ^/frim/index(.+?)\.html$ /list/index.php?$1 last;
3 | rewrite ^/movie/index(.+?)\.html$ /detail/index.php?$1 last;
4 | rewrite ^/play/([0-9]+)-([0-9]+)-([0-9]+)\.html$ /video/index.php?$1-$2-$3 last;
5 | rewrite ^/topic/index(.+?)\.html$ /topic/index.php?$1 last;
6 | rewrite ^/topiclist/index(.+?).html$ /topiclist/index.php?$1 last;
7 | rewrite ^/index\.html$ index.php permanent;
8 | rewrite ^/news\.html$ news/ permanent;
9 | rewrite ^/part/index(.+?)\.html$ /articlelist/index.php?$1 last;
10 | rewrite ^/article/index(.+?)\.html$ /article/index.php?$1 last;
11 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/shopex.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | if (!-e $request_filename) {
3 | rewrite ^/(.+\.(html|xml|json|htm|php|jsp|asp|shtml))$ /index.php?$1 last;
4 | }
5 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/thinkphp.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | if (!-e $request_filename){
3 | rewrite ^(.*)$ /index.php?s=$1 last; break;
4 | }
5 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/typecho.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | if (!-e $request_filename) {
3 | rewrite ^(.*)$ /index.php$1 last;
4 | }
5 | }
6 |
7 | # 不需要,可以删除
8 | location /typecho/ {
9 | if (!-e $request_filename) {
10 | rewrite ^(.*)$ /typecho/index.php$1 last;
11 | }
12 | }
13 |
14 |
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/v2ray.conf:
--------------------------------------------------------------------------------
1 | location /{
2 | if (!-e $request_filename) {
3 | rewrite ^(.*)$ /index.php/$1 last;
4 | break;
5 | }
6 | }
7 |
8 | location /ws {
9 | proxy_redirect off;
10 | proxy_pass http://127.0.0.1:34861;
11 | proxy_http_version 1.1;
12 | proxy_set_header Upgrade $http_upgrade;
13 | proxy_set_header Connection "upgrade";
14 | proxy_set_header Host $http_host;
15 | }
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/wordpress.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | index index.html index.php;
3 | if (-f $request_filename/index.html){
4 | rewrite (.*) $1/index.html break;
5 | }
6 | if (-f $request_filename/index.php){
7 | rewrite (.*) $1/index.php;
8 | }
9 | if (!-f $request_filename){
10 | rewrite (.*) /index.php;
11 | }
12 | }
13 |
14 | rewrite /wp-admin$ $scheme://$host$uri/ permanent;
--------------------------------------------------------------------------------
/web/misc/nginx/rewrite/zblog.conf:
--------------------------------------------------------------------------------
1 | location / {
2 | if (-f $request_filename/index.html){
3 | rewrite (.*) $1/index.html break;
4 | }
5 | if (-f $request_filename/index.php){
6 | rewrite (.*) $1/index.php;
7 | }
8 | if (!-f $request_filename){
9 | rewrite (.*) /index.php;
10 | }
11 | }
--------------------------------------------------------------------------------
/web/misc/nginx/tpl/nginx_panel.conf:
--------------------------------------------------------------------------------
1 | server
2 | {
3 | listen {$PORT};
4 | listen [::]:{$PORT};
5 |
6 | server_name {$SERVER_NAME};
7 | index index.php index.html index.htm default.php default.htm default.html;
8 |
9 | #SSL-START
10 | #error_page 404/404.html;
11 | #SSL-END
12 |
13 | #PROXY-START
14 | location ^~ / {
15 | proxy_pass http://0.0.0.0:{$PANAL_PORT}/;
16 | proxy_http_version 1.1;
17 | proxy_set_header Upgrade $http_upgrade;
18 | proxy_set_header Connection 'upgrade';
19 | }
20 | #PROXY-END
21 |
22 | error_log {$LOGPATH}/{$SERVER_NAME}.error.log;
23 | }
--------------------------------------------------------------------------------
/web/readme.md:
--------------------------------------------------------------------------------
1 |
2 | - 常用开发命令
3 |
4 | ```
5 | gunicorn -b :7201 -k geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w 1 app:app
6 | gunicorn -b :7201 -w 1 app:app
7 | gunicorn -c setting.py app:app
8 |
9 | ```
--------------------------------------------------------------------------------
/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/bootstrap-3.3.5/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/web/static/build/addons/attach/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "xterm.attach",
3 | "main": "attach.js",
4 | "private": true
5 | }
6 |
--------------------------------------------------------------------------------
/web/static/build/addons/fit/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "xterm.fit",
3 | "main": "fit.js",
4 | "private": true
5 | }
6 |
--------------------------------------------------------------------------------
/web/static/build/addons/fullscreen/fullscreen.css:
--------------------------------------------------------------------------------
1 | .xterm.fullscreen {
2 | position: fixed;
3 | top: 0;
4 | bottom: 0;
5 | left: 0;
6 | right: 0;
7 | width: auto;
8 | height: auto;
9 | z-index: 255;
10 | }
11 |
--------------------------------------------------------------------------------
/web/static/build/addons/fullscreen/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "xterm.fullscreen",
3 | "main": "fullscreen.js",
4 | "private": true
5 | }
6 |
--------------------------------------------------------------------------------
/web/static/build/addons/terminado/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "xterm.terminado",
3 | "main": "terminado.js",
4 | "private": true
5 | }
6 |
--------------------------------------------------------------------------------
/web/static/codemirror/addon/dialog/dialog.css:
--------------------------------------------------------------------------------
1 | .CodeMirror-dialog{position:absolute;left:0;right:0;background:inherit;z-index:15;padding:.4em .8em;overflow:hidden;color:inherit}.CodeMirror-dialog-top{border-bottom:1px solid #eee;top:0}.CodeMirror-dialog-bottom{border-top:1px solid #eee;bottom:0}.CodeMirror-dialog input{border:0;outline:0;background:transparent;width:20em;color:inherit;font-family:monospace}.CodeMirror-dialog button{font-size:70%}.Dialog-close{color:#111;float:right;font-family:Arial;font-size:16px;height:30px;line-height:30px;text-align:center;width:30px;cursor:pointer}
--------------------------------------------------------------------------------
/web/static/codemirror/addon/display/fullscreen.css:
--------------------------------------------------------------------------------
1 | .CodeMirror-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;height:auto;z-index:9}
--------------------------------------------------------------------------------
/web/static/codemirror/addon/edit/trailingspace.js:
--------------------------------------------------------------------------------
1 | (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineOption("showTrailingSpace",false,function(b,d,c){if(c==a.Init){c=false}if(c&&!d){b.removeOverlay("trailingspace")}else{if(!c&&d){b.addOverlay({token:function(g){for(var e=g.string.length,f=e;f&&/\s/.test(g.string.charAt(f-1));--f){}if(f>g.pos){g.pos=f;return null}g.pos=e;return"trailingspace"},name:"trailingspace"})}}})});
--------------------------------------------------------------------------------
/web/static/codemirror/addon/hint/show-hint.css:
--------------------------------------------------------------------------------
1 | .CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;-webkit-box-shadow:2px 3px 5px rgba(0,0,0,.2);-moz-box-shadow:2px 3px 5px rgba(0,0,0,.2);box-shadow:2px 3px 5px rgba(0,0,0,.2);border-radius:3px;border:1px solid silver;background:white;font-size:90%;font-family:monospace;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin:0;padding:0 4px;border-radius:2px;white-space:pre;color:black;cursor:pointer}li.CodeMirror-hint-active{background:#08f;color:white}
--------------------------------------------------------------------------------
/web/static/codemirror/addon/search/matchesonscrollbar.css:
--------------------------------------------------------------------------------
1 | .CodeMirror-search-match{background:gold;border-top:1px solid orange;border-bottom:1px solid orange;-moz-box-sizing:border-box;box-sizing:border-box;opacity:.5}
--------------------------------------------------------------------------------
/web/static/css/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/css/index.html
--------------------------------------------------------------------------------
/web/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/favicon.ico
--------------------------------------------------------------------------------
/web/static/fonts/2.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/fonts/2.ttf
--------------------------------------------------------------------------------
/web/static/images/ico-ts-cpu-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-cpu-active.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-cpu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-cpu.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-disk-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-disk-active.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-disk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-disk.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-mem-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-mem-active.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-mem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-mem.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-refresh.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-score.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-score.gif
--------------------------------------------------------------------------------
/web/static/images/ico-ts-score.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-score.jpg
--------------------------------------------------------------------------------
/web/static/images/ico-ts-score1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-score1.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-score2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-score2.png
--------------------------------------------------------------------------------
/web/static/images/ico-ts-score3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/ico-ts-score3.png
--------------------------------------------------------------------------------
/web/static/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/logo.png
--------------------------------------------------------------------------------
/web/static/images/move.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/move.png
--------------------------------------------------------------------------------
/web/static/images/right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/right.png
--------------------------------------------------------------------------------
/web/static/images/weixin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/images/weixin.png
--------------------------------------------------------------------------------
/web/static/img/Detailsbg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/Detailsbg.png
--------------------------------------------------------------------------------
/web/static/img/DrawRecordord.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/DrawRecordord.png
--------------------------------------------------------------------------------
/web/static/img/account.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/account.png
--------------------------------------------------------------------------------
/web/static/img/alipay_zz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/alipay_zz.png
--------------------------------------------------------------------------------
/web/static/img/ico-close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico-close.png
--------------------------------------------------------------------------------
/web/static/img/ico-computer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico-computer.png
--------------------------------------------------------------------------------
/web/static/img/ico-copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico-copy.png
--------------------------------------------------------------------------------
/web/static/img/ico-home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico-home.png
--------------------------------------------------------------------------------
/web/static/img/ico-success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico-success.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-access.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-access.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-apk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-apk.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-avi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-avi.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-bmp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-bmp.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-bt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-bt.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-c.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-c.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-cdr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-cdr.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-cpp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-cpp.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-cs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-cs.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-doc.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-docx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-docx.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-flv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-flv.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-gif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-gif.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-htm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-htm.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-html.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-java.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-java.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-jpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-jpeg.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-jpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-jpg.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-js.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-js.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-ltr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-ltr.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-mht.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-mht.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-mkv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-mkv.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-mov.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-mov.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-mp4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-mp4.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-mpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-mpeg.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-mpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-mpg.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-pdf.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-php.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-php.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-png.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-png.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-pptx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-pptx.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-psd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-psd.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-rm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-rm.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-rmvb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-rmvb.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-rocket.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-rocket.gif
--------------------------------------------------------------------------------
/web/static/img/ico/ico-swf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-swf.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-url.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-url.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-webm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-webm.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-webp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-webp.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-wma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-wma.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-wmv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-wmv.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-xls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-xls.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-xlsx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-xlsx.png
--------------------------------------------------------------------------------
/web/static/img/ico/ico-xml.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/ico-xml.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_control.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_control.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_control_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_control_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_control_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_control_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_data.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_data_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_data_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_data_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_data_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_day.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_day.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_day_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_day_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_day_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_day_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_exit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_exit.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_exit_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_exit_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_exit_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_exit_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_firewall.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_firewall.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_firewall_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_firewall_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_firewall_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_firewall_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_folder.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_folder_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_folder_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_folder_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_folder_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_ftp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_ftp.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_ftp_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_ftp_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_ftp_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_ftp_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_home.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_home_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_home_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_home_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_home_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_log.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_log_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_log_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_set.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_set.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_set_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_set_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_set_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_set_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_soft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_soft.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_soft_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_soft_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_soft_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_soft_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_web.png
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_web_active.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_web_active.gif
--------------------------------------------------------------------------------
/web/static/img/ico/menu_icon_web_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/menu_icon_web_active.png
--------------------------------------------------------------------------------
/web/static/img/ico/rocket_min.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico/rocket_min.png
--------------------------------------------------------------------------------
/web/static/img/ico_line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ico_line.png
--------------------------------------------------------------------------------
/web/static/img/icon-item.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/icon-item.png
--------------------------------------------------------------------------------
/web/static/img/icon3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/icon3.png
--------------------------------------------------------------------------------
/web/static/img/icon4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/icon4.png
--------------------------------------------------------------------------------
/web/static/img/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/index.html
--------------------------------------------------------------------------------
/web/static/img/ing.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ing.gif
--------------------------------------------------------------------------------
/web/static/img/ings.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ings.gif
--------------------------------------------------------------------------------
/web/static/img/label-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/label-icon.png
--------------------------------------------------------------------------------
/web/static/img/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/loading.gif
--------------------------------------------------------------------------------
/web/static/img/morebtn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/morebtn.png
--------------------------------------------------------------------------------
/web/static/img/ns-loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ns-loading.gif
--------------------------------------------------------------------------------
/web/static/img/ref-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ref-icon.png
--------------------------------------------------------------------------------
/web/static/img/return-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/return-icon.png
--------------------------------------------------------------------------------
/web/static/img/safety_ico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/safety_ico.png
--------------------------------------------------------------------------------
/web/static/img/ser-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/ser-icon.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-app.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-beta.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-beta.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-cmd-hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-cmd-hover.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-cmd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-cmd.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-deployment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-deployment.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-load_leveling.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-load_leveling.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-log.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-logs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-logs.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-mongodb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-mongodb.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-node.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-phpsafe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-phpsafe.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-pm2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-pm2.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-psync.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-psync.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-rsync.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-rsync.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-safelogin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-safelogin.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-score.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-score.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-task_manager.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-task_manager.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-test.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-test.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-tomcat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-tomcat.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-txcos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-txcos.png
--------------------------------------------------------------------------------
/web/static/img/soft_ico/ico-webhook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/soft_ico/ico-webhook.png
--------------------------------------------------------------------------------
/web/static/img/success-pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/success-pic.png
--------------------------------------------------------------------------------
/web/static/img/tip_suu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/tip_suu.png
--------------------------------------------------------------------------------
/web/static/img/weixin_zz.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/img/weixin_zz.jpg
--------------------------------------------------------------------------------
/web/static/language/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/language/index.html
--------------------------------------------------------------------------------
/web/static/language/list.json:
--------------------------------------------------------------------------------
1 | [
2 | {"name":"Simplified_Chinese","title":"简体中文"},
3 | {"name":"English","title":"English"}
4 | ]
--------------------------------------------------------------------------------
/web/static/language/zh-cn.js:
--------------------------------------------------------------------------------
1 | var BT_MSG = {
2 | "ERROR":"操作失败",
3 | "SUCCESS":"操作成功",
4 | "ADD_SUCCESS":"添加成功",
5 | "ADD_ERROR":"添加失败",
6 | "DEL_SUCCESS":"删除成功",
7 | "DEL_ERROR":"删除失败",
8 | "SET_SUCCESS":"设置成功",
9 | "SET_ERROR":"设置失败",
10 | "PATH_ERROR":"不能以系统关键目录作为站点目录",
11 | "SITE_ADD_SUCCESS":"成功创建站点!",
12 | "SITE_ADD_EXISTS":"您添加的站点已存在!",
13 | "SITE_ADD_PORT":"端口范围不合法",
14 | "SITE_DEL_SUCCESS":"站点删除成功!",
15 | "SITE_ADD_DOMAIN":"域名添加成功!",
16 | "SITE_ADD_EXISTS":"指定域名已绑定过!",
17 | "SITE_ADD_EXISTS":"指定域名已绑定过!",
18 | "SITE_ADD_BINDING":"域名和子目录名称不能为空!"
19 | }
--------------------------------------------------------------------------------
/web/static/laydate/theme/default/font/iconfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/laydate/theme/default/font/iconfont.eot
--------------------------------------------------------------------------------
/web/static/laydate/theme/default/font/iconfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/laydate/theme/default/font/iconfont.ttf
--------------------------------------------------------------------------------
/web/static/laydate/theme/default/font/iconfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/laydate/theme/default/font/iconfont.woff
--------------------------------------------------------------------------------
/web/static/layer/skin/default/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/close.png
--------------------------------------------------------------------------------
/web/static/layer/skin/default/close_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/close_hover.png
--------------------------------------------------------------------------------
/web/static/layer/skin/default/icon-ext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/icon-ext.png
--------------------------------------------------------------------------------
/web/static/layer/skin/default/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/icon.png
--------------------------------------------------------------------------------
/web/static/layer/skin/default/loading-0.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/loading-0.gif
--------------------------------------------------------------------------------
/web/static/layer/skin/default/loading-1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/loading-1.gif
--------------------------------------------------------------------------------
/web/static/layer/skin/default/loading-2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/layer/skin/default/loading-2.gif
--------------------------------------------------------------------------------
/web/static/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/logo.png
--------------------------------------------------------------------------------
/web/static/mdw.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midoks/mdserver-web/02eda25aafaadd1ca86a591a58f13c07c250965f/web/static/mdw.jpg
--------------------------------------------------------------------------------
/web/templates/default/close.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 抱歉,管理员已关闭面板
6 |
7 |
8 | 开启命令
9 | mw open
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/web/templates/default/path.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 安全入口校验失败
7 |
8 |
9 | 请使用正确的入口登录面板
10 | 错误原因:当前新安装的已经开启了安全入口登录,新装机器都会随机一个8位字符的安全入口名称,亦可以在面板设置处修改,如您没记录或不记得了,可以使用以下方式解决
11 | 解决方法:在SSH终端输入以下一种命令来解决
12 | 1.查看面板入口:mw default
13 | 2.关闭安全入口:mw close_admin_path
14 | 注意:【关闭安全入口】将使您的面板登录地址被直接暴露在互联网上,非常危险,请谨慎操作
15 |
16 |
--------------------------------------------------------------------------------
/web/templates/default/plugin_menu.html:
--------------------------------------------------------------------------------
1 | {% extends "layout.html" %}
2 | {% block content %}
3 | {{data['plugin_content']|safe }}
4 | {% endblock %}
--------------------------------------------------------------------------------
/web/templates/index.html:
--------------------------------------------------------------------------------
1 | index
--------------------------------------------------------------------------------
/web/utils/__init__.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 | import os
12 |
13 | IS_WIN = (os.name == 'nt')
14 |
15 |
16 |
--------------------------------------------------------------------------------
/web/utils/cert/cert.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 |
--------------------------------------------------------------------------------
/web/utils/system/__init__.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | # ---------------------------------------------------------------------------------
4 | # MW-Linux面板
5 | # ---------------------------------------------------------------------------------
6 | # copyright (c) 2018-∞(https://github.com/midoks/mdserver-web) All rights reserved.
7 | # ---------------------------------------------------------------------------------
8 | # Author: midoks
9 | # ---------------------------------------------------------------------------------
10 |
11 | from .main import *
12 | from .query import *
13 | from .stats import *
14 | from .monitor import monitor
15 |
16 | from .update import *
--------------------------------------------------------------------------------