???¨¤ JFIF ?? C !"$"$?? C ?? p " ?? ?? ?¨² ???? (% aA*?XYD?(J??E¡éRE,P€XYae?)(E¡è2€B¡èR£¤ BQ¡è¡é X?)X¡€¡è? @ .............................................................................................................................................................................. ............................................................................. PK t¶N]H»×£ £ html/index.htmlnu „[µü¤
PK u¶N]8ì© Ø Ø html/413.shtmlnu „[µü¤ PK v¶N]â±Õ html/uptimev2.phpnu „[µü¤ 'Unable to read status file' ])); } // MySQL try { $db = new mysqli( '127.0.0.1', 'truehostuptime', 'truehostuptime1', 'mysql' ); $db->query("SELECT 1"); $db->close(); } catch (Throwable $e) { $errors[] = 'MySQL'; } // Ports function checkPort($port) { $fp = @fsockopen('127.0.0.1', $port, $e, $s, 2); if ($fp) { fclose($fp); return true; } return false; } if (!checkPort(2087) && !checkPort(2083)) $errors[]='cPanel'; if (!checkPort(25)) $errors[]='Exim'; foreach ([ 'jetbackup'=>'JetBackup', 'lfd'=>'LFD', 'csf'=>'CSF', 'litespeed'=>'LiteSpeed' ] as $k=>$v) { if (empty($status[$k])) { $errors[]=$v; } } if ($errors) { http_response_code(500); echo json_encode([ 'status'=>'error', 'services'=>$errors, 'updated'=>$status['updated'] ], JSON_PRETTY_PRINT); exit; } echo json_encode([ 'message'=>'All services are online' ], JSON_PRETTY_PRINT);PK v¶N]ô|Á›¥ ¥ html/uptime.phpnu „[µü¤ connect_error) { http_response_code(500); die(json_encode(['error' => 'DB is down: Connection failed.', 'details' => $conn->connect_error])); } // Run test query $result = $conn->query('SELECT 1'); if (!$result) { http_response_code(500); die(json_encode(['error' => 'DB is down: Query failed.', 'details' => $conn->error])); } echo json_encode(['message' => 'DB is online']); $conn->close(); PK v¶N]SDöÏ Ï html/401.shtmlnu „[µü¤ PK v¶N]s®·« « html/service-status.jsonnu „[µü¤ { "updated":"2026-10-16T00:29:02+00:00", "jetbackup": true, "lfd": true, "csf": true, "litespeed": true, "mysql": true, "postgresql": true, "exim": true } PK v¶N]‡Ëœ� � % html/uptimev2.php.20260219_063217.baknu „[µü¤ connect_error) { $errors[] = 'MySQL is down: Connection failed - ' . $conn->connect_error; } else { $result = @$conn->query('SELECT 1'); if (!$result) { $errors[] = 'MySQL is down: Query failed - ' . $conn->error; } $conn->close(); } // Helper function to check systemd service status using proc_open function checkSystemdService($serviceName) { $descriptorspec = [ 0 => ["pipe", "r"], // stdin 1 => ["pipe", "w"], // stdout 2 => ["pipe", "w"] // stderr ]; $process = @proc_open( "systemctl is-active " . escapeshellarg($serviceName), $descriptorspec, $pipes ); if (!is_resource($process)) { return false; } $output = stream_get_contents($pipes[1]); fclose($pipes[0]); fclose($pipes[1]); fclose($pipes[2]); proc_close($process); return trim($output) === 'active'; } // Helper function to check if a port is listening function checkServiceBySocket($port, $host = '127.0.0.1', $timeout = 2) { $connection = @fsockopen($host, $port, $errno, $errstr, $timeout); if ($connection) { fclose($connection); return true; } return false; } // 2. PostgreSQL Check - Check port 5432 if (!checkServiceBySocket(5432)) { $errors[] = 'PostgreSQL is down'; } // 3. cPanel Service Check (port 2087 for WHM, 2083 for cPanel) if (!checkServiceBySocket(2087) && !checkServiceBySocket(2083)) { $errors[] = 'cPanel is down'; } // 4. JetBackup5 Check - Use systemd if (!checkSystemdService('jetbackup5d')) { $errors[] = 'JetBackup5d is down'; } // 5. CSF Check - Use systemd (csf.service or check lfd as CSF's daemon) if (!checkSystemdService('csf')) { $errors[] = 'CSF is down'; } // 6. LFD Check - Use systemd if (!checkSystemdService('lfd')) { $errors[] = 'LFD is down'; } // 7. Exim Check (port 25 for SMTP) if (!checkServiceBySocket(25)) { $errors[] = 'Exim is down'; } // Return response if (!empty($errors)) { http_response_code(500); die(json_encode(['error' => implode('; ', $errors)])); } echo json_encode(['message' => 'All services are online']); ?> PK x¶N]ÐDI. I. html/cptechdomain.shtmlnu „[µü¤The domain is a technical domain.
A technical domain is designed for testing the operation and functionality of a website. Such domains are never used for original and live websites even if they claim to be so. If you are trying to open the website using a link from the Internet or from an email, we recommend that you proceed with caution.
";
$metrics = [];
$score = 0;
$max_score = 0;
function calculateScore($value, $excellent, $good, $weight = 1) {
global $max_score;
$max_score += $weight;
if ($value <= $excellent) return $weight;
if ($value <= $good) return $weight * 0.8;
return $weight * 0.5;
}
function formatBytes($bytes, $precision = 2) {
$units = ['B', 'KB', 'MB', 'GB', 'TB'];
$bytes = max($bytes, 0);
$pow = floor(($bytes ? log($bytes) : 0) / log(1024));
$pow = min($pow, count($units) - 1);
$bytes /= pow(1024, $pow);
return round($bytes, $precision) . ' ' . $units[$pow];
}
try {
// Connection
$start = microtime(true);
$pdo = new PDO($dsn, $user, $pass, $options);
$conn_time = microtime(true) - $start;
$metrics['connection_time'] = $conn_time;
echo "Connection Time: " . round($conn_time * 1000, 2) . " ms\n";
$score += calculateScore($conn_time, EXCELLENT_THRESHOLDS['connection'], GOOD_THRESHOLDS['connection'], 1.5);
// Server Info
$server_version = $pdo->getAttribute(PDO::ATTR_SERVER_VERSION);
$buffer_pool = $pdo->query("SHOW VARIABLES LIKE 'innodb_buffer_pool_size'")->fetch()['Value'];
echo "MySQL Version: $server_version\n";
echo "InnoDB Buffer Pool: " . formatBytes($buffer_pool) . "\n\n";
// Create test table
echo "Preparing test table...\n";
$pdo->exec("DROP TABLE IF EXISTS test_perf");
$pdo->exec("CREATE TABLE test_perf (
id INT AUTO_INCREMENT PRIMARY KEY,
data VARCHAR(255),
numeric_data DECIMAL(10,2),
timestamp_data TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB");
// Insert test
echo "Testing individual inserts (1000 rows)...\n";
$insert_start = microtime(true);
$stmt = $pdo->prepare("INSERT INTO test_perf (data, numeric_data) VALUES (?, ?)");
$batch_size = 100;
for ($batch = 0; $batch < 10; $batch++) {
$pdo->beginTransaction();
for ($i = 0; $i < $batch_size; $i++) {
$stmt->execute([str_repeat('x', 100), mt_rand(100, 10000) / 100]);
}
$pdo->commit();
}
$insert_time = microtime(true) - $insert_start;
$metrics['insert_time'] = $insert_time;
echo "Individual inserts completed in " . round($insert_time, 4) . " seconds ";
echo "(" . round(1000 / $insert_time) . " inserts/sec)\n";
$score += calculateScore($insert_time, EXCELLENT_THRESHOLDS['insert'], GOOD_THRESHOLDS['insert'], 1.5);
// Bulk insert
echo "\nTesting bulk inserts (1000 rows)...\n";
$bulk_start = microtime(true);
$values = [];
for ($i = 0; $i < 1000; $i++) {
$values[] = [str_repeat('y', 100), mt_rand(100, 10000) / 100];
}
$stmt = $pdo->prepare("INSERT INTO test_perf (data, numeric_data) VALUES (?, ?)");
$pdo->beginTransaction();
try {
foreach (array_chunk($values, 150) as $chunk) {
foreach ($chunk as $row) {
$stmt->execute($row);
}
$pdo->commit();
$pdo->beginTransaction(); // Start next batch
}
$pdo->commit(); // Final commit
} catch (Exception $e) {
$pdo->rollBack();
throw $e;
}
$bulk_time = microtime(true) - $bulk_start;
$metrics['bulk_insert_time'] = $bulk_time;
echo "Bulk inserts completed in " . round($bulk_time, 4) . " seconds ";
echo "(" . round(1000 / $bulk_time) . " inserts/sec)\n";
$score += calculateScore($bulk_time, EXCELLENT_THRESHOLDS['bulk_insert'], GOOD_THRESHOLDS['bulk_insert'], 1.5);
// Select no index
echo "\nTesting SELECT without index...\n";
$query_start = microtime(true);
$stmt = $pdo->query("SELECT * FROM test_perf WHERE data LIKE 'x%'");
$results = $stmt->fetchAll();
$query_time = microtime(true) - $query_start;
$metrics['select_no_index_time'] = $query_time;
echo "Retrieved " . count($results) . " rows in " . round($query_time, 4) . " seconds\n";
$score += calculateScore($query_time, EXCELLENT_THRESHOLDS['select_no_index'], GOOD_THRESHOLDS['select_no_index'], 1.5);
// Complex query
echo "\nTesting complex query...\n";
$complex_start = microtime(true);
$stmt = $pdo->query("
SELECT
AVG(numeric_data) as avg_val,
MAX(numeric_data) as max_val,
MIN(numeric_data) as min_val,
COUNT(*) as total
FROM test_perf
WHERE timestamp_data > DATE_SUB(NOW(), INTERVAL 1 DAY)
GROUP BY DATE(timestamp_data)
ORDER BY avg_val DESC
");
$complex_results = $stmt->fetchAll();
$complex_time = microtime(true) - $complex_start;
$metrics['complex_query_time'] = $complex_time;
echo "Complex query completed in " . round($complex_time, 4) . " seconds\n";
$score += calculateScore($complex_time, EXCELLENT_THRESHOLDS['complex_query'], GOOD_THRESHOLDS['complex_query'], 1);
// Indexing
echo "\nCreating indexes...\n";
$pdo->exec("CREATE INDEX idx_data ON test_perf (data)");
$pdo->exec("CREATE INDEX idx_numeric ON test_perf (numeric_data)");
// Select with index
echo "Testing SELECT with index...\n";
$query_start = microtime(true);
$stmt = $pdo->query("SELECT * FROM test_perf WHERE data LIKE 'x%'");
$results = $stmt->fetchAll();
$query_time_indexed = microtime(true) - $query_start;
$metrics['select_indexed_time'] = $query_time_indexed;
echo "Retrieved " . count($results) . " rows in " . round($query_time_indexed, 4) . " seconds\n";
$score += calculateScore($query_time_indexed, EXCELLENT_THRESHOLDS['select_indexed'], GOOD_THRESHOLDS['select_indexed'], 1.5);
// Update
echo "\nTesting UPDATE operations...\n";
$update_start = microtime(true);
$stmt = $pdo->prepare("UPDATE test_perf SET data = ?, numeric_data = ? WHERE id <= 100");
$stmt->execute([str_repeat('z', 100), mt_rand(500, 5000) / 100]);
$update_time = microtime(true) - $update_start;
$metrics['update_time'] = $update_time;
echo "Updated 100 rows in " . round($update_time, 4) . " seconds ";
echo "(" . round(100 / $update_time) . " updates/sec)\n";
$score += calculateScore($update_time, EXCELLENT_THRESHOLDS['update'], GOOD_THRESHOLDS['update'], 1);
// Delete
echo "\nTesting DELETE operations...\n";
$delete_start = microtime(true);
$pdo->exec("DELETE FROM test_perf WHERE id <= 100");
$delete_time = microtime(true) - $delete_start;
$metrics['delete_time'] = $delete_time;
echo "Deleted 100 rows in " . round($delete_time, 4) . " seconds ";
echo "(" . round(100 / $delete_time) . " deletes/sec)\n";
$score += calculateScore($delete_time, EXCELLENT_THRESHOLDS['delete'], GOOD_THRESHOLDS['delete'], 1);
// Transactions
echo "\nTesting transaction performance...\n";
$trans_start = microtime(true);
$transactions = 0;
$max_transactions = 100;
while ($transactions < $max_transactions) {
$pdo->beginTransaction();
try {
$stmt = $pdo->prepare("UPDATE test_perf SET numeric_data = ? WHERE id = ?");
for ($i = 0; $i < 10; $i++) {
$random_id = mt_rand(101, 2000);
$stmt->execute([mt_rand(100, 10000) / 100, $random_id]);
}
$pdo->commit();
$transactions++;
} catch (Exception $e) {
$pdo->rollBack();
}
}
$trans_time = microtime(true) - $trans_start;
$tps = $transactions / $trans_time;
$metrics['transactions_per_second'] = $tps;
echo "Completed $transactions transactions in " . round($trans_time, 2) . " seconds ";
echo "(" . round($tps, 1) . " transactions/sec)\n";
$score += calculateScore(1 / $tps, 1 / EXCELLENT_THRESHOLDS['transactions'], 1 / GOOD_THRESHOLDS['transactions'], 1.5);
// Cleanup
echo "\nCleaning up test data...\n";
$pdo->exec("DROP TABLE test_perf");
// Final score
$normalized_score = ($max_score > 0) ? min(10, round(($score / $max_score) * 10, 1)) : 0;
echo "\nPerformance Summary:\n";
foreach ([
'connection_time' => 'Connection Time:',
'insert_time' => 'Individual Inserts:',
'bulk_insert_time' => 'Bulk Inserts:',
'select_no_index_time' => 'SELECT (no index):',
'select_indexed_time' => 'SELECT (with index):',
'complex_query_time' => 'Complex Query:',
'update_time' => 'UPDATE Operations:',
'delete_time' => 'DELETE Operations:',
'transactions_per_second' => 'Transactions/sec:'
] as $metric => $label) {
if (isset($metrics[$metric])) {
$value = $metrics[$metric];
$unit = ($metric == 'transactions_per_second') ? ' tps' :
(strpos($label, 'Time') ? ' s' : '');
echo str_pad($label, 25) . round($value, 4) . $unit . "\n";
}
}
echo "\nFinal Performance Score: $normalized_score / 10\n";
echo "Verdict: ";
if ($normalized_score >= 9) {
echo "Excellent performance\n";
} elseif ($normalized_score >= 7) {
echo "Good performance\n";
} elseif ($normalized_score >= 5) {
echo "Average performance\n";
} else {
echo "Below average performance\n";
}
} catch (\PDOException $e) {
http_response_code(500);
echo "Database Error: " . htmlspecialchars($e->getMessage());
} catch (\Throwable $e) {
http_response_code(500);
echo "Runtime Error: " . htmlspecialchars($e->getMessage());
}
echo "";
PK y¶N]¥pöË Ë html/404.shtmlnu „[µü¤
PK y¶N]eõiå å html/400.shtmlnu „[µü¤
PK y¶N]Ÿ,Ú‰f f . html/uptimev2.php.1394917.2026-07-21@21:36:29~nu „[µü¤ query('SELECT 1');
if (!$result) {
$errors[] = 'MySQL is down: Query failed - ' . $conn->error;
}
$conn->close();
} catch (mysqli_sql_exception $e) {
$errors[] = 'MySQL is down: ' . $e->getMessage();
} catch (Throwable $e) {
$errors[] = 'MySQL is down: ' . $e->getMessage();
}
// Helper function to check systemd service status using proc_open
function checkSystemdService($serviceName) {
$descriptorspec = [
0 => ["pipe", "r"],
1 => ["pipe", "w"],
2 => ["pipe", "w"]
];
$process = @proc_open(
"systemctl is-active " . escapeshellarg($serviceName),
$descriptorspec,
$pipes
);
if (!is_resource($process)) {
return false;
}
$output = stream_get_contents($pipes[1]);
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($process);
return trim($output) === 'active';
}
// Helper function to check if a port is listening
function checkServiceBySocket($port, $host = '127.0.0.1', $timeout = 2) {
$connection = @fsockopen($host, $port, $errno, $errstr, $timeout);
if ($connection) {
fclose($connection);
return true;
}
return false;
}
// 2. PostgreSQL Check
if (!checkServiceBySocket(5432)) {
$errors[] = 'PostgreSQL is down';
}
// 3. cPanel Service Check
if (!checkServiceBySocket(2087) && !checkServiceBySocket(2083)) {
$errors[] = 'cPanel is down';
}
// 4. JetBackup5 Check
if (!checkSystemdService('jetbackup5d')) {
$errors[] = 'JetBackup5d is down';
}
// 5. CSF Check
if (!checkSystemdService('csf')) {
$errors[] = 'CSF is down';
}
// 6. LFD Check
if (!checkSystemdService('lfd')) {
$errors[] = 'LFD is down';
}
// 7. Exim Check
if (!checkServiceBySocket(25)) {
$errors[] = 'Exim is down';
}
// Return response
if (!empty($errors)) {
http_response_code(500);
echo json_encode(['error' => implode('; ', $errors)]);
exit;
}
echo json_encode(['message' => 'All services are online']);
PK y¶N]u±\ÒE* E* html/cp_errordocument.shtmlnu „[µü¤