| 
<?php
 $settingFile = './settings.txt';
 if (file_exists($settingFile) === false) {
 echo $settingFile , " is not found." . PHP_EOL;
 exit(1);
 }
 
 $settings = explode(PHP_EOL, file_get_contents($settingFile));
 
 if (count($settings) - 1 !== 2) {
 echo 'Settings line numbers should be 2.' . PHP_EOL;
 exit(1);
 }
 
 if (substr($settings[0], 0, 4) !== 'url=') {
 echo 'Setting should begin with url= in the first line.' . PHP_EOL;
 exit(1);
 }
 
 if (substr($settings[1], 0, 24) !== 'ifttt_maker_service_url=') {
 echo 'Setting should begin with ifttt_maker_service_url= in the second line.' . PHP_EOL;
 exit(1);
 }
 
 $monitoredUrl = substr($settings[0], 4);
 $makerServiceUrl = substr($settings[1], 24);
 
 $curl = curl_init($monitoredUrl);
 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
 $response = curl_exec($curl);
 $responseInfo = curl_getinfo($curl);
 
 if ($responseInfo['http_code'] === 200) {
 curl_close($curl);
 echo $monitoredUrl . ' healthy is good!' . PHP_EOL;
 exit(0);
 }
 curl_close($curl);
 
 $curl = curl_init($makerServiceUrl);
 $json = [
 'date' => date('Y-m-d H:i:s'),
 'status' => $monitoredUrl . ' website is down!',
 'status_code' => $responseInfo['http_code'],
 ];
 
 curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($json));
 curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type:application/json']);
 $response = curl_exec($curl);
 
 $responseInfo = curl_getinfo($curl);
 curl_close($curl);
 
 if ($responseInfo['http_code'] === 200) {
 echo $response, PHP_EOL;
 }
 
 |