mirror of
https://github.com/pi-hole/web.git
synced 2025-12-25 05:05:33 +00:00
I have a different service running on FTL default port and so FTL service was not properly started. I searched quite a long time to discover why the Dashboard never loaded and finally found the reason.
This patch counts empty lines and dies properly with a JSON error. This fixed my issue. Also I have pi-hole running with apache2 and so no /var/log/lighttpd/error.log exists. Fix: Try apache2 logging location and if not found then write log to a /tmp file. Signed-off-by: Philipp Kolmann <philipp@kolmann.at>
This commit is contained in:
@@ -26,7 +26,7 @@ function sendRequestFTL($requestin)
|
||||
global $socket;
|
||||
|
||||
$request = ">".$requestin;
|
||||
fwrite($socket, $request) or die("Could not send data to server\n");
|
||||
fwrite($socket, $request) or die('{"error":"Could not send data to server"}');
|
||||
}
|
||||
|
||||
function getResponseFTL()
|
||||
@@ -35,9 +35,16 @@ function getResponseFTL()
|
||||
|
||||
$response = [];
|
||||
|
||||
$errCount = 0;
|
||||
while(true)
|
||||
{
|
||||
$out = fgets($socket);
|
||||
file_put_contents('/tmp/pihole.txt', $out, FILE_APPEND);
|
||||
if ($out == "") $errCount++;
|
||||
if ($errCount > 100) {
|
||||
// Tried 100 times, but never got proper reply, fail to prevent busy loop
|
||||
die('{"error":"Tried 100 times to connect to FTL server, but never got proper reply. Please check Port and logs!"}');
|
||||
}
|
||||
if(strrpos($out,"---EOM---") !== false)
|
||||
break;
|
||||
|
||||
|
||||
@@ -10,6 +10,14 @@ require_once('func.php');
|
||||
$ERRORLOG = getenv('PHP_ERROR_LOG');
|
||||
if (empty($ERRORLOG)) {
|
||||
$ERRORLOG = '/var/log/lighttpd/error.log';
|
||||
|
||||
if (!file_exists($ERRORLOG) || !is_writable($ERRORLOG)) {
|
||||
$ERRORLOG = '/var/log/apache2/error.log';
|
||||
|
||||
if (!file_exists($ERRORLOG) || !is_writable($ERRORLOG)) {
|
||||
$ERRORLOG = '/tmp/pi-hole-error.log';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function pi_log($message) {
|
||||
|
||||
Reference in New Issue
Block a user