Manter um servidor sempre disponível é crucial para a operação de aplicações web. Neste post, vamos aprender como criar uma API simples em PHP que permite verificar se o seu servidor Apache está online ou offline.
Passo 1: Criar o Endpoint de Status
Primeiro, você precisa criar um arquivo PHP que atuará como um endpoint para verificar o status do servidor. Este arquivo retornará um JSON informando se o servidor está online.
Crie um arquivo chamado status.php
Salve o seguinte código em um diretório acessível pelo seu servidor Apache:
<?php
header('Content-Type: application/json');
echo json_encode(['status' => 'online']);
?>
Este código define o cabeçalho da resposta como JSON e retorna um objeto que indica que o servidor está online.
Passo 2: Fazer uma Requisição com CURL
Agora, vamos fazer uma requisição para este endpoint usando CURL. Isso pode ser feito em qualquer aplicação que suporte PHP. Veja como implementar isso:
$url = 'http://seu-servidor/status.php'; // Substitua pelo URL do seu servidor
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode == 200 && $response) {
$data = json_decode($response, true);
if (isset($data['status']) && $data['status'] == 'online') {
echo "Servidor está online.";
} else {
echo "Servidor está offline.";
}
} else {
echo "Servidor está offline ou inacessível.";
}
Explicação do Código
- URL: A variável
$url
deve ser substituída pelo endereço do seu endpointstatus.php
. - CURL: Usamos CURL para fazer uma requisição GET ao endpoint. Se a resposta for
200 OK
, verificamos o conteúdo JSON. - Verificação do Status: Se a resposta contiver
{"status": "online"}
, significa que o servidor está ativo. Caso contrário, consideramos que o servidor está offline ou inacessível.
Conclusão
Agora você tem uma API simples que pode ser usada para monitorar o status do seu servidor Apache. Essa abordagem pode ser útil em aplicações que precisam garantir a disponibilidade dos serviços.
Sinta-se à vontade para adaptar o código para suas necessidades e integrar em seu sistema de monitoramento.