better-staridc-MNBT
1<?php
2include("../MPHX/common.php");
3include("../MPHX/BL.php");
4include("../MPHX/SQ.php");
5$title = 'MN宝塔主机首页目录';
6mnbt_admin_require_login();
7
8function _sy_fmt_bytes($bytes, $precision = 2) {
9 $units = ['B', 'KB', 'MB', 'GB', 'TB'];
10 $bytes = max($bytes, 0);
11 $pow = floor(($bytes ? log($bytes) : 0) / log(1024));
12 $pow = min($pow, count($units) - 1);
13 $bytes /= (1 << (10 * $pow));
14 return round($bytes, $precision) . ' ' . $units[$pow];
15}
16
17$sy = [
18 'hosts' => (int)$DB->count_prepare("SELECT count(*) FROM MN_zj WHERE 1"),
19 'bt_panels' => (int)$DB->count_prepare("SELECT count(*) FROM MN_bt WHERE 1"),
20 'nodes' => (int)$DB->count_prepare("SELECT count(*) FROM MN_node WHERE 1"),
21 'orders' => (int)$DB->count_prepare("SELECT count(*) FROM MN_dd WHERE 1"),
22];
23
24$sy['os'] = php_uname('s') . ' ' . php_uname('r');
25$sy['hostname'] = php_uname('n');
26$sy['php_version'] = PHP_VERSION;
27$sy['php_sapi'] = PHP_SAPI;
28$sy['server_soft'] = $_SERVER['SERVER_SOFTWARE'] ?? 'N/A';
29$sy['server_ip'] = $_SERVER['SERVER_ADDR'] ?? ($_SERVER['LOCAL_ADDR'] ?? '127.0.0.1');
30$sy['server_port'] = $_SERVER['SERVER_PORT'] ?? '80';
31$sy['server_time'] = date('Y-m-d H:i:s');
32$sy['timezone'] = date_default_timezone_get();
33$sy['memory_limit'] = ini_get('memory_limit');
34$sy['max_exec_time'] = ini_get('max_execution_time');
35$sy['upload_max'] = ini_get('upload_max_filesize');
36$sy['post_max'] = ini_get('post_max_size');
37$sy['ext_count'] = count(get_loaded_extensions());
38$sy['disk_total'] = @disk_total_space(ROOT) ?: 0;
39$sy['disk_free'] = @disk_free_space(ROOT) ?: 0;
40$sy['disk_used'] = max(0, $sy['disk_total'] - $sy['disk_free']);
41$sy['disk_pct'] = $sy['disk_total'] ? round($sy['disk_used'] / $sy['disk_total'] * 100, 1) : 0;
42$sy['disk_ok'] = $sy['disk_total'] > 0;
43$sy['mem_current'] = memory_get_usage(true);
44$sy['mem_peak'] = memory_get_peak_usage(true);
45$sy['load_avg'] = function_exists('sys_getloadavg') ? @sys_getloadavg() : null;
46$row = $DB->get_row("SELECT VERSION() AS ver");
47$sy['db_version'] = isset($row['ver']) ? $row['ver'] : 'N/A';
48$sy['web_version'] = $WEBQB;
49$sy['sql_version'] = $SQLQB;
50
51mnbt_admin_render('sy', ['sy' => $sy]);