40024-vm/healthz.php
Flatlogic Bot 88752efa83 Hhh
2026-05-17 16:07:02 +00:00

46 lines
1.3 KiB
PHP

<?php
declare(strict_types=1);
header('Content-Type: application/json; charset=utf-8');
require_once __DIR__ . '/includes/site.php';
$status = site_installation_status();
if (empty($status['ready'])) {
http_response_code(503);
echo json_encode([
'status' => 'setup_required',
'php_version' => PHP_VERSION,
'time_utc' => gmdate('c'),
'db' => 'setup_required',
'source' => $status['source'] ?? 'missing',
'config_path' => db_manual_config_relative_path(),
'message' => $status['message'],
'details' => $status['details'],
], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
exit;
}
try {
init_blog_storage();
$count = post_count();
http_response_code(200);
echo json_encode([
'status' => 'ok',
'php_version' => PHP_VERSION,
'time_utc' => gmdate('c'),
'posts' => $count,
'db' => 'ok',
'source' => $status['source'] ?? 'unknown',
], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
} catch (Throwable $exception) {
http_response_code(503);
echo json_encode([
'status' => 'error',
'php_version' => PHP_VERSION,
'time_utc' => gmdate('c'),
'db' => 'error',
], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
}